Makefile revision 1.44
11.44Sheas#	$NetBSD: Makefile,v 1.44 2004/03/06 16:12:06 heas Exp $
21.1Sthorpej
31.1Sthorpej# The `all' target must appear before bsd.own.mk is pulled in.
41.1Sthorpejall:
51.1Sthorpej	@echo "Please understand what you are doing, first."
61.1Sthorpej	@false
71.1Sthorpej
81.1Sthorpej.include <bsd.own.mk>
91.15Slukem.include "${NETBSDSRCDIR}/distrib/common/Makefile.distrib"
101.1Sthorpej
111.43SlukemSETSCMD=	cd ${.CURDIR} && \
121.43Slukem		DESTDIR=${DESTDIR:Q} \
131.6Slukem		MACHINE=${MACHINE:Q} MACHINE_ARCH=${MACHINE_ARCH:Q} \
141.26Slukem		CKSUM=${TOOL_CKSUM:Q} MAKE=${MAKE:Q} MTREE=${TOOL_MTREE:Q} \
151.43Slukem		MKTEMP=${TOOL_MKTEMP:Q} PAX=${TOOL_PAX:Q} HOST_SH=${HOST_SH:Q} \
161.43Slukem		${HOST_SH}
171.30Stron
181.40Slukem.if ${MKX11} != "no"
191.40SlukemMAKEFLIST_FLAGS=	-b
201.40Slukem.else
211.40SlukemMAKEFLIST_FLAGS=
221.40Slukem.endif
231.40Slukem
241.33Sjmc.if !defined(MAKETARSETS)
251.43SlukemMAKETARSETS!= ${SETSCMD} ./makeflist -l ${MAKEFLIST_FLAGS}
261.33Sjmc.endif
271.33Sjmc
281.41Slukemprint_have_gcc3: .PHONY
291.30Stron	@echo ${HAVE_GCC3}
301.6Slukem
311.3Sthorpejprint_machine: .PHONY
321.3Sthorpej	@echo ${MACHINE}
331.3Sthorpej
341.3Sthorpejprint_machine_arch: .PHONY
351.3Sthorpej	@echo ${MACHINE_ARCH}
361.3Sthorpej
371.3Sthorpejprint_machine_cpu: .PHONY
381.3Sthorpej	@echo ${MACHINE_CPU}
391.3Sthorpej
401.3Sthorpejprint_object_fmt: .PHONY
411.3Sthorpej	@echo ${OBJECT_FMT}
421.3Sthorpej
431.17Slukemprint_toolchain_missing: .PHONY
441.17Slukem	@echo "${TOOLCHAIN_MISSING}"
451.29Smrg
461.29Smrgprint_use_tools_toolchain: .PHONY
471.29Smrg	@echo "${USE_TOOLS_TOOLCHAIN}"
481.5Stron
491.5Stronprint_x11_version: .PHONY
501.40Slukem	${HOST_SH} -c '. ${.CURDIR}/sets.subr; echo $$x11_version'
511.3Sthorpej
521.3Sthorpej# This target has debugging value only, really.
531.44Sheasmakeflist: .PHONY .PRECIOUS check_DESTDIR
541.43Slukem	${SETSCMD} ./makeflist ${MAKEFLIST_FLAGS}
551.3Sthorpej
561.1Sthorpej#
571.1Sthorpej# SET BUILDING TARGETS
581.1Sthorpej#
591.1Sthorpej
601.43SlukemTARDIR=		${RELEASEDIR}/${MACHINE}/binary/sets
611.43SlukemSOURCETARDIR=	${RELEASEDIR}/source/sets
621.43Slukem
631.27Slukem.if ${MKUNPRIVED} == "no"
641.27SlukemMETALOG.unpriv=
651.27Slukem.else
661.27SlukemMETALOG.unpriv=	-M ${METALOG}
671.27Slukem.endif
681.27Slukem
691.43Slukem
701.41Slukemcheckflist: .PRECIOUS .PHONY check_DESTDIR
711.43Slukem	${SETSCMD} ./checkflist \
721.40Slukem	    ${MAKEFLIST_FLAGS} ${CHECKFLIST_FLAGS} ${METALOG.unpriv}
731.4Smrg
741.41Slukemcheckflist-x11: .PHONY check_DESTDIR
751.43Slukem	${SETSCMD} ./checkflist -x ${CHECKFLIST_FLAGS}
761.43Slukem
771.1Sthorpej
781.41Slukemmaketars: .PRECIOUS .PHONY check_DESTDIR check_RELEASEDIR .WAIT \
791.41Slukem		maketarsetup .WAIT ${MAKETARSETS:@.TARS.@do-${.TARS.}@}
801.33Sjmc	@true
811.33Sjmc
821.43Slukemmaketarsetup: .EXEC
831.23Sveego.if defined(DESTDIR) && ${DESTDIR} != ""
841.43Slukem	${_MKMSG} "execute  checkflist"
851.32Slukem	${MAKE} checkflist
861.16Slukem.endif
871.43Slukem	mkdir -p ${TARDIR}
881.35Sjmc	for i in BSDSUM CKSUM MD5 SYSVSUM; do \
891.43Slukem		rm -f ${TARDIR}/$$i ${TARDIR}/$$i.tmp; \
901.43Slukem	done
911.43Slukem
921.43Slukemmakesetfiles: .PHONY
931.43Slukem	${_MKMSG_CREATE} "set lists"
941.43Slukem	${SETSCMD} ./maketars -S -d ${DESTDIR:S,^$,/,} ${METALOG.unpriv} \
951.43Slukem	    -N ${NETBSDSRCDIR}/etc ${MAKEFLIST_FLAGS} -t ${TARDIR}
961.43Slukem
971.33Sjmc.for tar in ${MAKETARSETS}
981.39Sjmcdo-${tar}: .PHONY
991.43Slukem	${SETSCMD} ./maketars -d ${DESTDIR:S,^$,/,} ${METALOG.unpriv} \
1001.43Slukem	    -N ${NETBSDSRCDIR}/etc -t ${TARDIR} ${tar} \
1011.43Slukem	|| rm -f ${TARDIR}/${tar}.tgz
1021.33Sjmc.endfor
1031.1Sthorpej
1041.43Slukem
1051.41Slukemmakesrctars: .PRECIOUS .PHONY check_RELEASEDIR
1061.43Slukem	mkdir -p ${SOURCETARDIR}
1071.43Slukem	${SETSCMD} ./makesrctars ${NETBSDSRCDIR} ${SOURCETARDIR}
1081.43Slukem
1091.25Slukem
1101.41Slukemmakesums: .PRECIOUS .PHONY check_RELEASEDIR .WAIT \
1111.41Slukem		${MAKETARSETS:@.TARS.@do-sum-${.TARS.}@}
1121.35Sjmc	for i in BSDSUM CKSUM MD5 SYSVSUM; do \
1131.43Slukem		mv ${TARDIR}/$$i.tmp ${TARDIR}/$$i; \
1141.43Slukem	done
1151.33Sjmc
1161.33Sjmc.for tar in ${MAKETARSETS}
1171.39Sjmcdo-sum-${tar}: .PHONY do-${tar}
1181.43Slukem	${MAKESUMS} -t ${TARDIR} ${tar}.tgz
1191.35Sjmc	for i in BSDSUM CKSUM MD5 SYSVSUM; do \
1201.43Slukem		${TOOL_CAT} ${TARDIR}/$$i >> ${TARDIR}/$$i.tmp; \
1211.35Sjmc	done
1221.33Sjmc.endfor
1231.37Sjmc.ORDER: ${MAKETARSETS:@.TARS.@do-sum-${.TARS.}@}
1241.18Slukem
1251.43Slukem
1261.41Slukeminstallsets: .PHONY check_DESTDIR
1271.18Slukem.if !defined(INSTALLDIR)
1281.18Slukem	@echo "setenv INSTALLDIR before doing that!"
1291.18Slukem	@false
1301.18Slukem.endif
1311.43Slukem	${SETSCMD} ./maketars -d ${DESTDIR:S,^$,/,} \
1321.41Slukem	    ${METALOG.unpriv} -N ${NETBSDSRCDIR}/etc ${MAKEFLIST_FLAGS} \
1331.20Slukem	    -i ${INSTALLDIR} ${INSTALLSETS}
1341.1Sthorpej
1351.43Slukem
1361.1Sthorpej#
1371.1Sthorpej# MAIN ENTRY POINTS
1381.1Sthorpej#
1391.1Sthorpej
1401.41Slukemsets: .PHONY maketars .WAIT makesums
1411.25Slukem	@true
1421.25Slukem
1431.41Slukemsourcesets: .PHONY makesrctars
1441.1Sthorpej	@true
1451.8Slukem
1461.8Slukem.include <bsd.sys.mk>
147