1# $NetBSD: Makefile,v 1.43 2004/01/30 08:43:15 lukem Exp $ 2 3# The `all' target must appear before bsd.own.mk is pulled in. 4all: 5 @echo "Please understand what you are doing, first." 6 @false 7 8.include <bsd.own.mk> 9.include "${NETBSDSRCDIR}/distrib/common/Makefile.distrib" 10 11SETSCMD= cd ${.CURDIR} && \ 12 DESTDIR=${DESTDIR:Q} \ 13 MACHINE=${MACHINE:Q} MACHINE_ARCH=${MACHINE_ARCH:Q} \ 14 CKSUM=${TOOL_CKSUM:Q} MAKE=${MAKE:Q} MTREE=${TOOL_MTREE:Q} \ 15 MKTEMP=${TOOL_MKTEMP:Q} PAX=${TOOL_PAX:Q} HOST_SH=${HOST_SH:Q} \ 16 ${HOST_SH} 17 18.if ${MKX11} != "no" 19MAKEFLIST_FLAGS= -b 20.else 21MAKEFLIST_FLAGS= 22.endif 23 24.if !defined(MAKETARSETS) 25MAKETARSETS!= ${SETSCMD} ./makeflist -l ${MAKEFLIST_FLAGS} 26.endif 27 28print_have_gcc3: .PHONY 29 @echo ${HAVE_GCC3} 30 31print_machine: .PHONY 32 @echo ${MACHINE} 33 34print_machine_arch: .PHONY 35 @echo ${MACHINE_ARCH} 36 37print_machine_cpu: .PHONY 38 @echo ${MACHINE_CPU} 39 40print_object_fmt: .PHONY 41 @echo ${OBJECT_FMT} 42 43print_toolchain_missing: .PHONY 44 @echo "${TOOLCHAIN_MISSING}" 45 46print_use_tools_toolchain: .PHONY 47 @echo "${USE_TOOLS_TOOLCHAIN}" 48 49print_x11_version: .PHONY 50 ${HOST_SH} -c '. ${.CURDIR}/sets.subr; echo $$x11_version' 51 52# This target has debugging value only, really. 53makeflist: .PHONY check_DESTDIR 54 ${SETSCMD} ./makeflist ${MAKEFLIST_FLAGS} 55 56# 57# SET BUILDING TARGETS 58# 59 60TARDIR= ${RELEASEDIR}/${MACHINE}/binary/sets 61SOURCETARDIR= ${RELEASEDIR}/source/sets 62 63.if ${MKUNPRIVED} == "no" 64METALOG.unpriv= 65.else 66METALOG.unpriv= -M ${METALOG} 67.endif 68 69 70checkflist: .PRECIOUS .PHONY check_DESTDIR 71 ${SETSCMD} ./checkflist \ 72 ${MAKEFLIST_FLAGS} ${CHECKFLIST_FLAGS} ${METALOG.unpriv} 73 74checkflist-x11: .PHONY check_DESTDIR 75 ${SETSCMD} ./checkflist -x ${CHECKFLIST_FLAGS} 76 77 78maketars: .PRECIOUS .PHONY check_DESTDIR check_RELEASEDIR .WAIT \ 79 maketarsetup .WAIT ${MAKETARSETS:@.TARS.@do-${.TARS.}@} 80 @true 81 82maketarsetup: .EXEC 83.if defined(DESTDIR) && ${DESTDIR} != "" 84 ${_MKMSG} "execute checkflist" 85 ${MAKE} checkflist 86.endif 87 mkdir -p ${TARDIR} 88 for i in BSDSUM CKSUM MD5 SYSVSUM; do \ 89 rm -f ${TARDIR}/$$i ${TARDIR}/$$i.tmp; \ 90 done 91 92makesetfiles: .PHONY 93 ${_MKMSG_CREATE} "set lists" 94 ${SETSCMD} ./maketars -S -d ${DESTDIR:S,^$,/,} ${METALOG.unpriv} \ 95 -N ${NETBSDSRCDIR}/etc ${MAKEFLIST_FLAGS} -t ${TARDIR} 96 97.for tar in ${MAKETARSETS} 98do-${tar}: .PHONY 99 ${SETSCMD} ./maketars -d ${DESTDIR:S,^$,/,} ${METALOG.unpriv} \ 100 -N ${NETBSDSRCDIR}/etc -t ${TARDIR} ${tar} \ 101 || rm -f ${TARDIR}/${tar}.tgz 102.endfor 103 104 105makesrctars: .PRECIOUS .PHONY check_RELEASEDIR 106 mkdir -p ${SOURCETARDIR} 107 ${SETSCMD} ./makesrctars ${NETBSDSRCDIR} ${SOURCETARDIR} 108 109 110makesums: .PRECIOUS .PHONY check_RELEASEDIR .WAIT \ 111 ${MAKETARSETS:@.TARS.@do-sum-${.TARS.}@} 112 for i in BSDSUM CKSUM MD5 SYSVSUM; do \ 113 mv ${TARDIR}/$$i.tmp ${TARDIR}/$$i; \ 114 done 115 116.for tar in ${MAKETARSETS} 117do-sum-${tar}: .PHONY do-${tar} 118 ${MAKESUMS} -t ${TARDIR} ${tar}.tgz 119 for i in BSDSUM CKSUM MD5 SYSVSUM; do \ 120 ${TOOL_CAT} ${TARDIR}/$$i >> ${TARDIR}/$$i.tmp; \ 121 done 122.endfor 123.ORDER: ${MAKETARSETS:@.TARS.@do-sum-${.TARS.}@} 124 125 126installsets: .PHONY check_DESTDIR 127.if !defined(INSTALLDIR) 128 @echo "setenv INSTALLDIR before doing that!" 129 @false 130.endif 131 ${SETSCMD} ./maketars -d ${DESTDIR:S,^$,/,} \ 132 ${METALOG.unpriv} -N ${NETBSDSRCDIR}/etc ${MAKEFLIST_FLAGS} \ 133 -i ${INSTALLDIR} ${INSTALLSETS} 134 135 136# 137# MAIN ENTRY POINTS 138# 139 140sets: .PHONY maketars .WAIT makesums 141 @true 142 143sourcesets: .PHONY makesrctars 144 @true 145 146.include <bsd.sys.mk> 147