Makefile revision 1.41
11.41Slukem#	$NetBSD: Makefile,v 1.41 2004/01/29 08:34:21 lukem 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.6SlukemSETSENV=	DESTDIR=${DESTDIR:Q} \
121.6Slukem		MACHINE=${MACHINE:Q} MACHINE_ARCH=${MACHINE_ARCH:Q} \
131.26Slukem		CKSUM=${TOOL_CKSUM:Q} MAKE=${MAKE:Q} MTREE=${TOOL_MTREE:Q} \
141.38Slukem		MKTEMP=${TOOL_MKTEMP:Q} PAX=${TOOL_PAX:Q} HOST_SH=${HOST_SH:Q}
151.30Stron
161.40Slukem.if ${MKX11} != "no"
171.40SlukemMAKEFLIST_FLAGS=	-b
181.40Slukem.else
191.40SlukemMAKEFLIST_FLAGS=
201.40Slukem.endif
211.40Slukem
221.33Sjmc.if !defined(MAKETARSETS)
231.40SlukemMAKETARSETS!= ${SETSENV} ${HOST_SH} ${.CURDIR}/makeflist -l ${MAKEFLIST_FLAGS}
241.33Sjmc.endif
251.33Sjmc
261.41Slukemprint_have_gcc3: .PHONY
271.30Stron	@echo ${HAVE_GCC3}
281.6Slukem
291.3Sthorpejprint_machine: .PHONY
301.3Sthorpej	@echo ${MACHINE}
311.3Sthorpej
321.3Sthorpejprint_machine_arch: .PHONY
331.3Sthorpej	@echo ${MACHINE_ARCH}
341.3Sthorpej
351.3Sthorpejprint_machine_cpu: .PHONY
361.3Sthorpej	@echo ${MACHINE_CPU}
371.3Sthorpej
381.3Sthorpejprint_object_fmt: .PHONY
391.3Sthorpej	@echo ${OBJECT_FMT}
401.3Sthorpej
411.17Slukemprint_toolchain_missing: .PHONY
421.17Slukem	@echo "${TOOLCHAIN_MISSING}"
431.29Smrg
441.29Smrgprint_use_tools_toolchain: .PHONY
451.29Smrg	@echo "${USE_TOOLS_TOOLCHAIN}"
461.5Stron
471.5Stronprint_x11_version: .PHONY
481.40Slukem	${HOST_SH} -c '. ${.CURDIR}/sets.subr; echo $$x11_version'
491.3Sthorpej
501.3Sthorpej# This target has debugging value only, really.
511.7Slukemmakeflist: .PHONY check_DESTDIR
521.40Slukem	${SETSENV} ${HOST_SH} ${.CURDIR}/makeflist ${MAKEFLIST_FLAGS}
531.3Sthorpej
541.1Sthorpej#
551.1Sthorpej# SET BUILDING TARGETS
561.1Sthorpej#
571.1Sthorpej
581.27Slukem.if ${MKUNPRIVED} == "no"
591.27SlukemMETALOG.unpriv=
601.27Slukem.else
611.27SlukemMETALOG.unpriv=	-M ${METALOG}
621.27Slukem.endif
631.27Slukem
641.41Slukemcheckflist: .PRECIOUS .PHONY check_DESTDIR
651.40Slukem	${SETSENV} ${HOST_SH} ${.CURDIR}/checkflist \
661.40Slukem	    ${MAKEFLIST_FLAGS} ${CHECKFLIST_FLAGS} ${METALOG.unpriv}
671.4Smrg
681.41Slukemcheckflist-x11: .PHONY check_DESTDIR
691.32Slukem	${SETSENV} ${HOST_SH} ${.CURDIR}/checkflist -x ${CHECKFLIST_FLAGS}
701.1Sthorpej
711.41Slukemmaketars: .PRECIOUS .PHONY check_DESTDIR check_RELEASEDIR .WAIT \
721.41Slukem		maketarsetup .WAIT ${MAKETARSETS:@.TARS.@do-${.TARS.}@}
731.33Sjmc	@true
741.33Sjmc
751.33Sjmcmaketarsetup: .PHONY
761.23Sveego.if defined(DESTDIR) && ${DESTDIR} != ""
771.32Slukem	${MAKE} checkflist
781.16Slukem.endif
791.24Slukem	mkdir -p ${RELEASEDIR}/${MACHINE}/binary/sets
801.35Sjmc	for i in BSDSUM CKSUM MD5 SYSVSUM; do \
811.39Sjmc		rm -f ${RELEASEDIR}/${MACHINE}/binary/sets/$$i ${RELEASEDIR}/${MACHINE}/binary/sets/$$i.tmp; done
821.35Sjmc	
831.33Sjmc.for tar in ${MAKETARSETS}
841.39Sjmcdo-${tar}: .PHONY
851.25Slukem	${SETSENV} ${HOST_SH} ${.CURDIR}/maketars -d ${DESTDIR:S,^$,/,} \
861.27Slukem	    ${METALOG.unpriv} -N ${NETBSDSRCDIR}/etc \
871.33Sjmc	    -t ${RELEASEDIR}/${MACHINE}/binary/sets ${tar}
881.33Sjmc.endfor
891.1Sthorpej
901.41Slukemmakesrctars: .PRECIOUS .PHONY check_RELEASEDIR
911.25Slukem	mkdir -p ${RELEASEDIR}/source/sets
921.25Slukem	${SETSENV} ${HOST_SH} ${.CURDIR}/makesrctars \
931.25Slukem	    ${NETBSDSRCDIR} ${RELEASEDIR}/source/sets
941.25Slukem
951.41Slukemmakesums: .PRECIOUS .PHONY check_RELEASEDIR .WAIT \
961.41Slukem		${MAKETARSETS:@.TARS.@do-sum-${.TARS.}@}
971.35Sjmc	for i in BSDSUM CKSUM MD5 SYSVSUM; do \
981.35Sjmc		mv ${RELEASEDIR}/${MACHINE}/binary/sets/$$i.tmp \
991.35Sjmc			${RELEASEDIR}/${MACHINE}/binary/sets/$$i; done
1001.33Sjmc
1011.33Sjmc.for tar in ${MAKETARSETS}
1021.39Sjmcdo-sum-${tar}: .PHONY do-${tar}
1031.41Slukem	${SETSENV} ${MAKESUMS} \
1041.41Slukem	    -t ${RELEASEDIR}/${MACHINE}/binary/sets ${tar}.tgz
1051.35Sjmc	for i in BSDSUM CKSUM MD5 SYSVSUM; do \
1061.41Slukem		${TOOL_CAT} ${RELEASEDIR}/${MACHINE}/binary/sets/$$i \
1071.41Slukem		    >> ${RELEASEDIR}/${MACHINE}/binary/sets/$$i.tmp; \
1081.35Sjmc	done
1091.33Sjmc.endfor
1101.37Sjmc.ORDER: ${MAKETARSETS:@.TARS.@do-sum-${.TARS.}@}
1111.18Slukem
1121.41Slukeminstallsets: .PHONY check_DESTDIR
1131.18Slukem.if !defined(INSTALLDIR)
1141.18Slukem	@echo "setenv INSTALLDIR before doing that!"
1151.18Slukem	@false
1161.18Slukem.endif
1171.25Slukem	${SETSENV} ${HOST_SH} ${.CURDIR}/maketars -d ${DESTDIR:S,^$,/,} \
1181.41Slukem	    ${METALOG.unpriv} -N ${NETBSDSRCDIR}/etc ${MAKEFLIST_FLAGS} \
1191.20Slukem	    -i ${INSTALLDIR} ${INSTALLSETS}
1201.1Sthorpej
1211.1Sthorpej#
1221.1Sthorpej# MAIN ENTRY POINTS
1231.1Sthorpej#
1241.1Sthorpej
1251.41Slukemsets: .PHONY maketars .WAIT makesums
1261.25Slukem	@true
1271.25Slukem
1281.41Slukemsourcesets: .PHONY makesrctars
1291.1Sthorpej	@true
1301.8Slukem
1311.8Slukem.include <bsd.sys.mk>
132