Makefile revision 1.33
11.33Sjmc#	$NetBSD: Makefile,v 1.33 2003/12/19 22:25:53 jmc 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.31Slukem		MKTEMP=${TOOL_MKTEMP:Q} PAX=${TOOL_PAX:Q} 
151.30Stron
161.33Sjmc.if !defined(MAKETARSETS)
171.33SjmcMAKETARSETS!=	${SETSENV} ${HOST_SH} -c '. sets.defaults; echo $${lists}'
181.33Sjmc.endif
191.33Sjmc
201.30Stronprint_have_gcc3:
211.30Stron	@echo ${HAVE_GCC3}
221.6Slukem
231.3Sthorpejprint_machine: .PHONY
241.3Sthorpej	@echo ${MACHINE}
251.3Sthorpej
261.3Sthorpejprint_machine_arch: .PHONY
271.3Sthorpej	@echo ${MACHINE_ARCH}
281.3Sthorpej
291.3Sthorpejprint_machine_cpu: .PHONY
301.3Sthorpej	@echo ${MACHINE_CPU}
311.3Sthorpej
321.3Sthorpejprint_object_fmt: .PHONY
331.3Sthorpej	@echo ${OBJECT_FMT}
341.3Sthorpej
351.17Slukemprint_toolchain_missing: .PHONY
361.17Slukem	@echo "${TOOLCHAIN_MISSING}"
371.29Smrg
381.29Smrgprint_use_tools_toolchain: .PHONY
391.29Smrg	@echo "${USE_TOOLS_TOOLCHAIN}"
401.5Stron
411.5Stronprint_x11_version: .PHONY
421.5Stron.if defined(USE_XF86_4) && (${USE_XF86_4} != no)
431.5Stron	@echo 4
441.5Stron.else
451.5Stron	@echo 3
461.5Stron.endif
471.3Sthorpej
481.3Sthorpej# This target has debugging value only, really.
491.7Slukemmakeflist: .PHONY check_DESTDIR
501.25Slukem	${SETSENV} ${HOST_SH} ${.CURDIR}/makeflist
511.3Sthorpej
521.1Sthorpej#
531.1Sthorpej# SET BUILDING TARGETS
541.1Sthorpej#
551.1Sthorpej
561.27Slukem.if ${MKUNPRIVED} == "no"
571.27SlukemMETALOG.unpriv=
581.27Slukem.else
591.27SlukemMETALOG.unpriv=	-M ${METALOG}
601.27Slukem.endif
611.27Slukem
621.1Sthorpej.PRECIOUS: checkflist
631.7Slukemcheckflist: check_DESTDIR
641.32Slukem	${SETSENV} ${HOST_SH} ${.CURDIR}/checkflist ${CHECKFLIST_FLAGS} \
651.32Slukem	    ${METALOG.unpriv}
661.4Smrg
671.7Slukem.PRECIOUS: checkflist-x11
681.7Slukemcheckflist-x11: check_DESTDIR
691.32Slukem	${SETSENV} ${HOST_SH} ${.CURDIR}/checkflist -x ${CHECKFLIST_FLAGS}
701.1Sthorpej
711.2Sthorpej.PRECIOUS: maketars
721.33Sjmcmaketars: check_DESTDIR check_RELEASEDIR .WAIT maketarsetup .WAIT ${MAKETARSETS:@.TARS.@${RELEASEDIR}/${MACHINE}/binary/sets/${.TARS.}.tgz@}
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.33Sjmc
811.33Sjmc.for tar in ${MAKETARSETS}
821.33Sjmc${RELEASEDIR}/${MACHINE}/binary/sets/${tar}.tgz:
831.25Slukem	${SETSENV} ${HOST_SH} ${.CURDIR}/maketars -d ${DESTDIR:S,^$,/,} \
841.27Slukem	    ${METALOG.unpriv} -N ${NETBSDSRCDIR}/etc \
851.33Sjmc	    -t ${RELEASEDIR}/${MACHINE}/binary/sets ${tar}
861.33Sjmc.endfor
871.1Sthorpej
881.25Slukem.PRECIOUS: makesrctars
891.25Slukemmakesrctars: check_RELEASEDIR
901.25Slukem	mkdir -p ${RELEASEDIR}/source/sets
911.25Slukem	${SETSENV} ${HOST_SH} ${.CURDIR}/makesrctars \
921.25Slukem	    ${NETBSDSRCDIR} ${RELEASEDIR}/source/sets
931.25Slukem
941.2Sthorpej.PRECIOUS: makesums
951.33Sjmcmakesums: check_RELEASEDIR .WAIT ${MAKETARSETS:@.TARS.@do-sum-${.TARS.}@}
961.33Sjmc	@true
971.33Sjmc
981.33Sjmc.for tar in ${MAKETARSETS}
991.33Sjmcdo-sum-${tar}: .PHONY ${RELEASEDIR}/${MACHINE}/binary/sets/${tar}.tgz
1001.33Sjmc	${SETSENV} ${MAKESUMS} -t ${RELEASEDIR}/${MACHINE}/binary/sets ${tar}.tgz
1011.33Sjmc.endfor
1021.18Slukem
1031.18Slukem.PRECIOUS: installsets
1041.18Slukeminstallsets: check_DESTDIR
1051.18Slukem.if !defined(INSTALLDIR)
1061.18Slukem	@echo "setenv INSTALLDIR before doing that!"
1071.18Slukem	@false
1081.18Slukem.endif
1091.25Slukem	${SETSENV} ${HOST_SH} ${.CURDIR}/maketars -d ${DESTDIR:S,^$,/,} \
1101.27Slukem	    ${METALOG.unpriv} -N ${NETBSDSRCDIR}/etc \
1111.20Slukem	    -i ${INSTALLDIR} ${INSTALLSETS}
1121.1Sthorpej
1131.1Sthorpej#
1141.1Sthorpej# MAIN ENTRY POINTS
1151.1Sthorpej#
1161.1Sthorpej
1171.14Ssommerfesets: maketars .WAIT makesums
1181.25Slukem	@true
1191.25Slukem
1201.25Slukemsourcesets: makesrctars
1211.1Sthorpej	@true
1221.8Slukem
1231.8Slukem.include <bsd.sys.mk>
124