Home | History | Annotate | Line # | Download | only in sysinst
Makefile.inc revision 1.2
      1 #	$NetBSD: Makefile.inc,v 1.2 2014/07/26 19:32:22 dholland Exp $
      2 #
      3 # Makefile for sysinst
      4 
      5 .if exists(${.CURDIR}/../../../Makefile.inc)
      6 .include "${.CURDIR}/../../../Makefile.inc"
      7 .endif
      8 
      9 .if empty(DBG:M-g)
     10 COPTS += -Os
     11 .endif
     12 
     13 PROG=		sysinst
     14 NOMAN=		# defined
     15 
     16 WARNS=		4
     17 
     18 SRCS+=	menu_defs.c msg_defs.c main.c install.c upgrade.c \
     19 	txtwalk.c run.c factor.c net.c disks.c disks_lfs.c util.c geom.c \
     20 	label.c target.c md.c sizemultname.c configmenu.c checkrc.c
     21 
     22 SRCS+=	${MD_OPTIONS:MAOUT2ELF:S/AOUT2ELF/aout2elf.c/}
     23 SRCS+=	${MENUS_MD:Mmenus.mbr:S/menus.mbr/mbr.c/}
     24 SRCS+=	${CPPFLAGS:M-DWSKBD:S/-DWSKBD/wskbd.c/}
     25 SRCS+=	${NODISKLABEL:D:Ubsddisklabel.c savenewlabel.c}
     26 
     27 DPSRCS+= defs.h
     28 
     29 SYSINSTLANG?=	en
     30 LANGUAGES?=	de en es fr pl
     31 
     32 MSG_MD?=	msg.md.${SYSINSTLANG}
     33 MENUS_MD?=	menus.md.${SYSINSTLANG}
     34 
     35 .include <bsd.own.mk>		# for mk.conf
     36 #.include "${NETBSDSRCDIR}/distrib/common/Makefile.distrib"
     37 
     38 DISTRIBVER!=	${HOST_SH} ${NETBSDSRCDIR}/sys/conf/osrelease.sh
     39 DISTRIBVERDEP=	${NETBSDSRCDIR}/sys/sys/param.h \
     40 		${NETBSDSRCDIR}/sys/conf/osrelease.sh
     41 
     42 _MKSHTARGET_CREATE?=	${_MKSHMSG_CREATE} ${.CURDIR:T}/${.TARGET}
     43 
     44 DPADD=		${LIBCURSES} ${LIBTERMLIB} ${LIBUTIL}
     45 LDADD=		-lcurses -ltermlib -lutil
     46 
     47 UNIF_AWK=	${.CURDIR}/../../unif.awk
     48 MSG_XLAT_SH=	${.CURDIR}/../../msg_xlat.sh
     49 
     50 CPPFLAGS+=	-I. -I${.CURDIR}/../.. -I${.CURDIR} \
     51 		-DREL=\"${DISTRIBVER}\" -DMACH=\"${MACHINE}\" \
     52 		-DMACH_${MACHINE} -DARCH_${MACHINE_ARCH}
     53 
     54 .if (!defined(SMALLPROG) || defined(SMALLPROG_INET6)) && (${USE_INET6} != "no")
     55 CPPFLAGS+=-DINET6
     56 .endif
     57 
     58 .if defined(HAVE_GCC) || defined(HAVE_PCC)
     59 COPTS.label.c+=	-Wno-pointer-sign
     60 .endif
     61 COPTS.main.c += -Wno-format-nonliteral
     62 COPTS.disks.c += -Wno-format-nonliteral
     63 COPTS.util.c += -Wno-format-nonliteral
     64 COPTS.label.c += -Wno-format-nonliteral
     65 COPTS.target.c += -Wno-format-nonliteral
     66 COPTS.mbr.c += -Wno-format-nonliteral
     67 COPTS.msg_defs.c += -Wno-format-nonliteral
     68 COPTS.bsddisklabel.c += -Wno-format-nonliteral
     69 COPTS.md.c += -Wno-format-nonliteral
     70 
     71 # Host to ftp from.  Default:
     72 #	"ftp.NetBSD.org"
     73 #
     74 .if defined(SYSINST_FTP_HOST)
     75 CPPFLAGS+=	-DSYSINST_FTP_HOST=\"${SYSINST_FTP_HOST}\"
     76 .endif
     77 
     78 # Top-level ftp directory.  Default:
     79 #	"pub/NetBSD/NetBSD-" + VER + "/" + MACH
     80 #
     81 .if defined(SYSINST_FTP_DIR)
     82 CPPFLAGS+=	-DSYSINST_FTP_DIR=\"${SYSINST_FTP_DIR}\"
     83 .endif
     84 
     85 # Top-level CDROM directory.  Default:
     86 #	"/" + MACH
     87 #
     88 .if defined(SYSINST_CDROM_DIR)
     89 CPPFLAGS+=	-DSYSINST_CDROM_DIR=\"${SYSINST_CDROM_DIR}\"
     90 .endif
     91 
     92 
     93 DPSRCS+=	msg_defs.h menu_defs.h
     94 
     95 CLEANFILES=	menu_defs.c menu_defs.h menus.def \
     96 		msg_defs.c msg_defs.h msg.def msgtouch \
     97 		sysinstmsgs.*
     98 
     99 .PATH: ${.CURDIR}/../..
    100 
    101 menu_defs.h: menu_defs.c
    102 	[ -f ${.TARGET} ] || { \
    103 		${_MKSHTARGET_CREATE}; \
    104 		${TOOL_MENUC} menus.def; \
    105 	}
    106 menu_defs.c: menus.def
    107 	${_MKTARGET_CREATE}
    108 	[ ! -f menu_defs.h ] || mv -f menu_defs.h menu_defs.oh
    109 	${TOOL_MENUC} menus.def
    110 	! cmp -s menu_defs.oh menu_defs.h || mv -f menu_defs.oh menu_defs.h
    111 	@rm -f menu_defs.oh
    112 
    113 msg_defs.h: msg_defs.c
    114 	[ -f ${.TARGET} ] || { \
    115 		${_MKSHTARGET_CREATE}; \
    116 		${TOOL_MSGC} msg.def; \
    117 	}
    118 msg_defs.c: msg.def
    119 	${_MKTARGET_CREATE}
    120 	[ ! -f msg_defs.h ] || mv -f msg_defs.h msg_defs.oh
    121 	${TOOL_MSGC} msg.def
    122 	! cmp -s msg_defs.oh msg_defs.h || mv -f msg_defs.oh msg_defs.h
    123 	@rm -f msg_defs.oh
    124 
    125 # Needed to get proper dependency checks on osrelease
    126 msgtouch: ${DISTRIBVERDEP}
    127 	touch ${.TARGET}
    128 
    129 msg.def: msg.mi.${SYSINSTLANG} ${MSG_MD} msgtouch
    130 	${_MKTARGET_CREATE}
    131 	${TOOL_SED} "s/@@VERSION@@/${DISTRIBVER}/" ${.ALLSRC} | \
    132 	${TOOL_SED} "s/@@MACHINE@@/${MACHINE}/" | \
    133 	${TOOL_AWK} -f ${UNIF_AWK} -v defines="${MD_OPTIONS}" > ${.TARGET}
    134 
    135 menus.def: menus.mi ${MENUS_MD} msgtouch
    136 	${_MKTARGET_CREATE}
    137 	${TOOL_SED} "s/@@VERSION@@/${DISTRIBVER}/" ${.ALLSRC} | \
    138 	${TOOL_SED} "s/@@MACHINE@@/${MACHINE}/" | \
    139 	${TOOL_AWK} -f ${UNIF_AWK} -v defines="${MD_OPTIONS}" > ${.TARGET}
    140 
    141 sysinstmsgs.fmtcnt: msg.mi.${SYSINSTLANG} ${MSG_MD} msgtouch msg_defs.h
    142 	${_MKTARGET_CREATE}
    143 	${TOOL_SED} "s/@@VERSION@@/${DISTRIBVER}/" \
    144 		${.ALLSRC:M*.${SYSINSTLANG}} | \
    145 	${TOOL_SED} "s/@@MACHINE@@/${MACHINE}/" | \
    146 	${TOOL_AWK} -f ${UNIF_AWK} -v defines="${MD_OPTIONS}" | \
    147 	${HOST_SH} ${MSG_XLAT_SH} -c > ${.TARGET}
    148 
    149 .for LANG in ${LANGUAGES:N${SYSINSTLANG}}
    150 sysinstmsgs.${LANG}: msg.mi.${LANG} ${MSG_MD:S/.${SYSINSTLANG}$/.${LANG}/} msgtouch msg_defs.h sysinstmsgs.fmtcnt
    151 	${_MKTARGET_CREATE}
    152 	${TOOL_SED} "s/@@VERSION@@/${DISTRIBVER}/" ${.ALLSRC:M*.${LANG}} | \
    153 	${TOOL_SED} "s/@@MACHINE@@/${MACHINE}/" | \
    154 	${TOOL_AWK} -f ${UNIF_AWK} -v defines="${MD_OPTIONS}" | \
    155 	${HOST_SH} ${MSG_XLAT_SH} -f sysinstmsgs.fmtcnt > ${.TARGET}
    156 
    157 DPSRCS+=	sysinstmsgs.${LANG}
    158 .endfor
    159 
    160 .include <bsd.prog.mk>
    161