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