1 1.11 martin # $NetBSD: Makefile.inc,v 1.11 2018/09/12 13:44:05 martin Exp $ 2 1.1 dholland # 3 1.1 dholland # Makefile for sysinst 4 1.1 dholland 5 1.2 dholland .if exists(${.CURDIR}/../../../Makefile.inc) 6 1.2 dholland .include "${.CURDIR}/../../../Makefile.inc" 7 1.2 dholland .endif 8 1.2 dholland 9 1.1 dholland PROG= sysinst 10 1.1 dholland NOMAN= # defined 11 1.1 dholland 12 1.1 dholland WARNS= 4 13 1.1 dholland 14 1.1 dholland SRCS+= menu_defs.c msg_defs.c main.c install.c upgrade.c \ 15 1.1 dholland txtwalk.c run.c factor.c net.c disks.c disks_lfs.c util.c geom.c \ 16 1.3 martin label.c target.c md.c sizemultname.c configmenu.c checkrc.c partman.c 17 1.1 dholland 18 1.1 dholland SRCS+= ${MD_OPTIONS:MAOUT2ELF:S/AOUT2ELF/aout2elf.c/} 19 1.1 dholland SRCS+= ${MENUS_MD:Mmenus.mbr:S/menus.mbr/mbr.c/} 20 1.1 dholland SRCS+= ${CPPFLAGS:M-DWSKBD:S/-DWSKBD/wskbd.c/} 21 1.1 dholland SRCS+= ${NODISKLABEL:D:Ubsddisklabel.c savenewlabel.c} 22 1.1 dholland 23 1.1 dholland DPSRCS+= defs.h 24 1.1 dholland 25 1.1 dholland SYSINSTLANG?= en 26 1.1 dholland LANGUAGES?= de en es fr pl 27 1.1 dholland 28 1.1 dholland MSG_MD?= msg.md.${SYSINSTLANG} 29 1.1 dholland MENUS_MD?= menus.md.${SYSINSTLANG} 30 1.1 dholland 31 1.1 dholland .include <bsd.own.mk> # for mk.conf 32 1.2 dholland #.include "${NETBSDSRCDIR}/distrib/common/Makefile.distrib" 33 1.2 dholland 34 1.2 dholland DISTRIBVER!= ${HOST_SH} ${NETBSDSRCDIR}/sys/conf/osrelease.sh 35 1.2 dholland DISTRIBVERDEP= ${NETBSDSRCDIR}/sys/sys/param.h \ 36 1.2 dholland ${NETBSDSRCDIR}/sys/conf/osrelease.sh 37 1.1 dholland 38 1.1 dholland _MKSHTARGET_CREATE?= ${_MKSHMSG_CREATE} ${.CURDIR:T}/${.TARGET} 39 1.1 dholland 40 1.1 dholland DPADD= ${LIBCURSES} ${LIBTERMLIB} ${LIBUTIL} 41 1.1 dholland LDADD= -lcurses -ltermlib -lutil 42 1.1 dholland 43 1.1 dholland UNIF_AWK= ${.CURDIR}/../../unif.awk 44 1.1 dholland MSG_XLAT_SH= ${.CURDIR}/../../msg_xlat.sh 45 1.1 dholland 46 1.10 martin 47 1.4 martin CATALOGDIR= /usr/share/sysinst/catalog 48 1.1 dholland CPPFLAGS+= -I. -I${.CURDIR}/../.. -I${.CURDIR} \ 49 1.1 dholland -DREL=\"${DISTRIBVER}\" -DMACH=\"${MACHINE}\" \ 50 1.3 martin -DMACH_${MACHINE} -DARCH_${MACHINE_ARCH} \ 51 1.8 martin ${NODISKLABEL:D-DNO_DISKLABEL} 52 1.8 martin 53 1.10 martin .if (defined(BUILDID)) 54 1.10 martin COPTS+= -DBUILDID=\"${BUILDID}\" 55 1.10 martin .endif 56 1.10 martin .if defined(NETBSD_OFFICIAL_RELEASE) && ${NETBSD_OFFICIAL_RELEASE} == "yes" 57 1.10 martin CPPFLAGS+= -DSYSINST_FTP_HOST=\"ftp.NetBSD.org\" -DNETBSD_OFFICIAL_RELEASE 58 1.10 martin CPPFLAGS+= -DSYSINST_HTTP_HOST=\"cdn.NetBSD.org\" -DNETBSD_OFFICIAL_RELEASE 59 1.10 martin .else 60 1.10 martin CPPFLAGS+= -DSYSINST_FTP_HOST=\"nyftp.NetBSD.org\" 61 1.10 martin CPPFLAGS+= -DSYSINST_HTTP_HOST=\"nycdn.NetBSD.org\" 62 1.10 martin .if (${DISTRIBVER:M*.99.*}) 63 1.10 martin CPPFLAGS+= -DREL_PATH=\"HEAD\" 64 1.11 martin CPPFLAGS+= -DPKG_SUBDIR="\"${DISTRIBVER:C/\.99\.[0-9]*[_A-Z]*$//}.0\"" 65 1.10 martin .elif (${DISTRIBVER:M*.[0-9].[0-9]*}) 66 1.10 martin CPPFLAGS+= -DREL_PATH=\"netbsd-${DISTRIBVER:C/\.[0-9][_A-Z]*$//:S/./-/}\" 67 1.11 martin CPPFLAGS+= -DPKG_SUBDIR="\"${DISTRIBVER:C/_.*$//}\"" 68 1.10 martin .elif (${DISTRIBVER:M*.[0-9]*}) 69 1.10 martin CPPFLAGS+= -DREL_PATH=\"netbsd-${DISTRIBVER:C/\.[0-9][_A-Z]*$//}\" 70 1.11 martin CPPFLAGS+= -DPKG_SUBDIR="\"${DISTRIBVER:C/_.*$//}\"" 71 1.10 martin .endif 72 1.10 martin .endif 73 1.10 martin 74 1.8 martin .if !defined(DEBUG) 75 1.8 martin CPPFLAGS+= -DCATALOG_DIR=\"${CATALOGDIR}\" 76 1.8 martin .endif 77 1.3 martin 78 1.3 martin .if (defined(DEBUG)) 79 1.6 martin .if ${ACTIVE_CC} == "gcc" 80 1.6 martin # make gcc run additional passes for better debug info (only needed 81 1.6 martin # when compiling with -O0) 82 1.6 martin O0TRACKING= -fvar-tracking-assignments -fvar-tracking 83 1.6 martin .endif 84 1.7 martin CPPFLAGS+=-DDEBUG 85 1.7 martin DBG +=-g -O0 ${O0TRACKING} 86 1.7 martin .endif 87 1.7 martin 88 1.7 martin .if empty(DBG:M-g) 89 1.7 martin COPTS += -Os 90 1.3 martin .endif 91 1.1 dholland 92 1.1 dholland .if (!defined(SMALLPROG) || defined(SMALLPROG_INET6)) && (${USE_INET6} != "no") 93 1.1 dholland CPPFLAGS+=-DINET6 94 1.1 dholland .endif 95 1.1 dholland 96 1.1 dholland .if defined(HAVE_GCC) || defined(HAVE_PCC) 97 1.1 dholland COPTS.label.c+= -Wno-pointer-sign 98 1.1 dholland .endif 99 1.1 dholland COPTS.main.c += -Wno-format-nonliteral 100 1.1 dholland COPTS.disks.c += -Wno-format-nonliteral 101 1.1 dholland COPTS.util.c += -Wno-format-nonliteral 102 1.1 dholland COPTS.label.c += -Wno-format-nonliteral 103 1.1 dholland COPTS.target.c += -Wno-format-nonliteral 104 1.1 dholland COPTS.mbr.c += -Wno-format-nonliteral 105 1.1 dholland COPTS.msg_defs.c += -Wno-format-nonliteral 106 1.1 dholland COPTS.bsddisklabel.c += -Wno-format-nonliteral 107 1.1 dholland COPTS.md.c += -Wno-format-nonliteral 108 1.9 christos COPTS.partman.c += -Wno-format-nonliteral -Wno-stack-protector 109 1.1 dholland 110 1.1 dholland # Host to ftp from. Default: 111 1.1 dholland # "ftp.NetBSD.org" 112 1.1 dholland # 113 1.1 dholland .if defined(SYSINST_FTP_HOST) 114 1.1 dholland CPPFLAGS+= -DSYSINST_FTP_HOST=\"${SYSINST_FTP_HOST}\" 115 1.1 dholland .endif 116 1.1 dholland 117 1.1 dholland # Top-level ftp directory. Default: 118 1.1 dholland # "pub/NetBSD/NetBSD-" + VER + "/" + MACH 119 1.1 dholland # 120 1.1 dholland .if defined(SYSINST_FTP_DIR) 121 1.1 dholland CPPFLAGS+= -DSYSINST_FTP_DIR=\"${SYSINST_FTP_DIR}\" 122 1.1 dholland .endif 123 1.1 dholland 124 1.1 dholland # Top-level CDROM directory. Default: 125 1.1 dholland # "/" + MACH 126 1.1 dholland # 127 1.1 dholland .if defined(SYSINST_CDROM_DIR) 128 1.1 dholland CPPFLAGS+= -DSYSINST_CDROM_DIR=\"${SYSINST_CDROM_DIR}\" 129 1.1 dholland .endif 130 1.1 dholland 131 1.1 dholland 132 1.1 dholland DPSRCS+= msg_defs.h menu_defs.h 133 1.1 dholland 134 1.1 dholland CLEANFILES= menu_defs.c menu_defs.h menus.def \ 135 1.1 dholland msg_defs.c msg_defs.h msg.def msgtouch \ 136 1.1 dholland sysinstmsgs.* 137 1.1 dholland 138 1.1 dholland .PATH: ${.CURDIR}/../.. 139 1.1 dholland 140 1.1 dholland menu_defs.h: menu_defs.c 141 1.1 dholland [ -f ${.TARGET} ] || { \ 142 1.1 dholland ${_MKSHTARGET_CREATE}; \ 143 1.1 dholland ${TOOL_MENUC} menus.def; \ 144 1.1 dholland } 145 1.1 dholland menu_defs.c: menus.def 146 1.1 dholland ${_MKTARGET_CREATE} 147 1.1 dholland [ ! -f menu_defs.h ] || mv -f menu_defs.h menu_defs.oh 148 1.1 dholland ${TOOL_MENUC} menus.def 149 1.1 dholland ! cmp -s menu_defs.oh menu_defs.h || mv -f menu_defs.oh menu_defs.h 150 1.1 dholland @rm -f menu_defs.oh 151 1.1 dholland 152 1.1 dholland msg_defs.h: msg_defs.c 153 1.1 dholland [ -f ${.TARGET} ] || { \ 154 1.1 dholland ${_MKSHTARGET_CREATE}; \ 155 1.1 dholland ${TOOL_MSGC} msg.def; \ 156 1.1 dholland } 157 1.1 dholland msg_defs.c: msg.def 158 1.1 dholland ${_MKTARGET_CREATE} 159 1.1 dholland [ ! -f msg_defs.h ] || mv -f msg_defs.h msg_defs.oh 160 1.1 dholland ${TOOL_MSGC} msg.def 161 1.1 dholland ! cmp -s msg_defs.oh msg_defs.h || mv -f msg_defs.oh msg_defs.h 162 1.1 dholland @rm -f msg_defs.oh 163 1.1 dholland 164 1.1 dholland # Needed to get proper dependency checks on osrelease 165 1.1 dholland msgtouch: ${DISTRIBVERDEP} 166 1.1 dholland touch ${.TARGET} 167 1.1 dholland 168 1.1 dholland msg.def: msg.mi.${SYSINSTLANG} ${MSG_MD} msgtouch 169 1.1 dholland ${_MKTARGET_CREATE} 170 1.1 dholland ${TOOL_SED} "s/@@VERSION@@/${DISTRIBVER}/" ${.ALLSRC} | \ 171 1.1 dholland ${TOOL_SED} "s/@@MACHINE@@/${MACHINE}/" | \ 172 1.1 dholland ${TOOL_AWK} -f ${UNIF_AWK} -v defines="${MD_OPTIONS}" > ${.TARGET} 173 1.1 dholland 174 1.1 dholland menus.def: menus.mi ${MENUS_MD} msgtouch 175 1.1 dholland ${_MKTARGET_CREATE} 176 1.1 dholland ${TOOL_SED} "s/@@VERSION@@/${DISTRIBVER}/" ${.ALLSRC} | \ 177 1.1 dholland ${TOOL_SED} "s/@@MACHINE@@/${MACHINE}/" | \ 178 1.1 dholland ${TOOL_AWK} -f ${UNIF_AWK} -v defines="${MD_OPTIONS}" > ${.TARGET} 179 1.1 dholland 180 1.1 dholland sysinstmsgs.fmtcnt: msg.mi.${SYSINSTLANG} ${MSG_MD} msgtouch msg_defs.h 181 1.1 dholland ${_MKTARGET_CREATE} 182 1.1 dholland ${TOOL_SED} "s/@@VERSION@@/${DISTRIBVER}/" \ 183 1.1 dholland ${.ALLSRC:M*.${SYSINSTLANG}} | \ 184 1.1 dholland ${TOOL_SED} "s/@@MACHINE@@/${MACHINE}/" | \ 185 1.1 dholland ${TOOL_AWK} -f ${UNIF_AWK} -v defines="${MD_OPTIONS}" | \ 186 1.1 dholland ${HOST_SH} ${MSG_XLAT_SH} -c > ${.TARGET} 187 1.1 dholland 188 1.1 dholland .for LANG in ${LANGUAGES:N${SYSINSTLANG}} 189 1.1 dholland sysinstmsgs.${LANG}: msg.mi.${LANG} ${MSG_MD:S/.${SYSINSTLANG}$/.${LANG}/} msgtouch msg_defs.h sysinstmsgs.fmtcnt 190 1.1 dholland ${_MKTARGET_CREATE} 191 1.1 dholland ${TOOL_SED} "s/@@VERSION@@/${DISTRIBVER}/" ${.ALLSRC:M*.${LANG}} | \ 192 1.1 dholland ${TOOL_SED} "s/@@MACHINE@@/${MACHINE}/" | \ 193 1.1 dholland ${TOOL_AWK} -f ${UNIF_AWK} -v defines="${MD_OPTIONS}" | \ 194 1.1 dholland ${HOST_SH} ${MSG_XLAT_SH} -f sysinstmsgs.fmtcnt > ${.TARGET} 195 1.1 dholland 196 1.1 dholland DPSRCS+= sysinstmsgs.${LANG} 197 1.5 martin # FILES+= sysinstmsgs.${LANG} 198 1.5 martin # FILESDIR_sysinstmsgs.${LANG}= ${CATALOGDIR} 199 1.1 dholland .endfor 200 1.1 dholland 201 1.1 dholland .include <bsd.prog.mk> 202