Makefile revision 1.48
11.2Skamil#	$NetBSD: Makefile,v 1.48 2005/10/07 20:00:54 jmc Exp $
21.1Skamil
31.2Skamil# The `all' target must appear before bsd.own.mk is pulled in.
41.1Skamilall:
51.1Skamil	@echo "Please understand what you are doing, first."
61.5Srillig	@false
71.1Skamil
81.1Skamil.include <bsd.own.mk>
91.5Srillig.include "${NETBSDSRCDIR}/distrib/common/Makefile.distrib"
101.1Skamil
111.1SkamilSETSCMD=	cd ${.CURDIR} && \
121.5Srillig		DESTDIR=${DESTDIR:Q} \
131.1Skamil		MACHINE=${MACHINE:Q} MACHINE_ARCH=${MACHINE_ARCH:Q} \
141.1Skamil		CKSUM=${TOOL_CKSUM:Q} MAKE=${MAKE:Q} MTREE=${TOOL_MTREE:Q} \
151.5Srillig		MKTEMP=${TOOL_MKTEMP:Q} PAX=${TOOL_PAX:Q} HOST_SH=${HOST_SH:Q} \
161.1Skamil		${HOST_SH}
171.1Skamil
181.5Srillig.if ${MKX11} != "no"
191.1SkamilMAKEFLIST_FLAGS=	-b
201.1SkamilMAKESRCTARS_FLAGS=	-x ${X11SRCDIR} -N ${NETBSDSRCDIR}/etc
211.1Skamil.else
221.1SkamilMAKEFLIST_FLAGS=
231.1SkamilMAKESRCTARS_FLAGS= 	-N ${NETBSDSRCDIR}/etc
241.1Skamil.endif
251.1Skamil
261.1Skamil.if !defined(MAKETARSETS)
271.1SkamilMAKETARSETS!= ${SETSCMD} ./makeflist -l ${MAKEFLIST_FLAGS}
281.1Skamil.endif
291.1Skamil
301.1Skamilprint_have_gcc3: .PHONY
311.1Skamil	@echo ${HAVE_GCC3}
321.1Skamil
331.1Skamilprint_machine: .PHONY
341.1Skamil	@echo ${MACHINE}
351.1Skamil
361.1Skamilprint_machine_arch: .PHONY
371.3Schristos	@echo ${MACHINE_ARCH}
381.1Skamil
391.3Schristosprint_machine_cpu: .PHONY
401.3Schristos	@echo ${MACHINE_CPU}
411.3Schristos
421.3Schristosprint_object_fmt: .PHONY
431.3Schristos	@echo ${OBJECT_FMT}
441.3Schristos
451.1Skamilprint_toolchain_missing: .PHONY
461.3Schristos	@echo "${TOOLCHAIN_MISSING}"
471.3Schristos
481.1Skamilprint_use_tools_toolchain: .PHONY
491.1Skamil	@echo "${USE_TOOLS_TOOLCHAIN}"
501.1Skamil
511.1Skamilprint_x11_version: .PHONY
521.1Skamil	${HOST_SH} -c '. ${.CURDIR}/sets.subr; echo $$x11_version'
531.1Skamil
541.3Schristos# This target has debugging value only, really.
551.1Skamilmakeflist: .PHONY .PRECIOUS check_DESTDIR
561.1Skamil	${SETSCMD} ./makeflist ${MAKEFLIST_FLAGS}
571.1Skamil
581.3Schristos#
591.1Skamil# SET BUILDING TARGETS
601.1Skamil#
611.1Skamil
621.1SkamilTARDIR=		${RELEASEDIR}/${RELEASEMACHINEDIR}/binary/sets
631.3SchristosSOURCETARDIR=	${RELEASEDIR}/source/sets
641.1Skamil
651.1Skamil.if ${MKUNPRIVED} == "no"
661.1SkamilMETALOG.unpriv=
671.1Skamil.else
681.1SkamilMETALOG.unpriv=	-M ${METALOG}
691.1Skamil.endif
701.1Skamil
711.1Skamil
721.1Skamilcheckflist: .PRECIOUS .PHONY check_DESTDIR
731.1Skamil	${SETSCMD} ./checkflist \
741.1Skamil	    ${MAKEFLIST_FLAGS} ${CHECKFLIST_FLAGS} ${METALOG.unpriv}
751.1Skamil
761.1Skamilcheckflist-x11: .PHONY check_DESTDIR
771.1Skamil	${SETSCMD} ./checkflist -x ${CHECKFLIST_FLAGS}
781.1Skamil
791.1Skamil
801.1Skamilmaketars: .PRECIOUS .PHONY check_DESTDIR check_RELEASEDIR .WAIT \
811.1Skamil		maketarsetup .WAIT ${MAKETARSETS:@.TARS.@do-${.TARS.}@}
821.1Skamil	@true
831.1Skamil
841.1Skamilmaketarsetup: .EXEC
851.1Skamil.if defined(DESTDIR) && ${DESTDIR} != ""
861.1Skamil	${_MKMSG} "execute  checkflist"
871.1Skamil	${MAKE} checkflist
881.1Skamil.endif
891.1Skamil	mkdir -p ${TARDIR}
901.1Skamil	for i in BSDSUM CKSUM MD5 SHA512 SYSVSUM; do \
911.1Skamil		rm -f ${TARDIR}/$$i ${TARDIR}/$$i.tmp; \
921.1Skamil	done
931.1Skamil
941.1Skamilmakesetfiles: .PHONY
951.1Skamil	${_MKMSG_CREATE} "set lists"
961.1Skamil	${SETSCMD} ./maketars -S -d ${DESTDIR:S,^$,/,} ${METALOG.unpriv} \
971.1Skamil	    -N ${NETBSDSRCDIR}/etc ${MAKEFLIST_FLAGS} -t ${TARDIR}
981.1Skamil
991.1Skamil.for tar in ${MAKETARSETS}
1001.1Skamildo-${tar}: .PHONY
1011.1Skamil	${SETSCMD} ./maketars -d ${DESTDIR:S,^$,/,} ${METALOG.unpriv} \
1021.1Skamil	    -N ${NETBSDSRCDIR}/etc -t ${TARDIR} ${tar} \
1031.3Schristos	|| rm -f ${TARDIR}/${tar}.tgz
1041.3Schristos.endfor
1051.1Skamil
1061.1Skamil
1071.1Skamilmakesrctars: .PRECIOUS .PHONY check_RELEASEDIR
1081.1Skamil	mkdir -p ${SOURCETARDIR}
1091.1Skamil	${SETSCMD} ./makesrctars ${MAKESRCTARS_FLAGS} \
1101.1Skamil	    ${NETBSDSRCDIR} ${SOURCETARDIR}
1111.3Schristos
1121.1Skamil
1131.1Skamilmakesums: .PRECIOUS .PHONY check_RELEASEDIR .WAIT \
1141.1Skamil		${MAKETARSETS:@.TARS.@do-sum-${.TARS.}@}
1151.1Skamil	for i in BSDSUM CKSUM MD5 SHA512 SYSVSUM; do \
1161.1Skamil		mv ${TARDIR}/$$i.tmp ${TARDIR}/$$i; \
1171.1Skamil	done
1181.1Skamil
1191.1Skamil.for tar in ${MAKETARSETS}
1201.1Skamildo-sum-${tar}: .PHONY do-${tar}
1211.1Skamil	${MAKESUMS} -t ${TARDIR} ${tar}.tgz
1221.1Skamil	for i in BSDSUM CKSUM MD5 SHA512 SYSVSUM; do \
1231.1Skamil		${TOOL_CAT} ${TARDIR}/$$i >> ${TARDIR}/$$i.tmp; \
1241.1Skamil	done
1251.1Skamil.endfor
1261.1Skamil.ORDER: ${MAKETARSETS:@.TARS.@do-sum-${.TARS.}@}
1271.1Skamil
1281.1Skamil
1291.1Skamilinstallsets: .PHONY check_DESTDIR
1301.1Skamil.if !defined(INSTALLDIR)
1311.1Skamil	@echo "setenv INSTALLDIR before doing that!"
1321.1Skamil	@false
1331.1Skamil.endif
1341.1Skamil	${SETSCMD} ./maketars -d ${DESTDIR:S,^$,/,} \
1351.1Skamil	    ${METALOG.unpriv} -N ${NETBSDSRCDIR}/etc ${MAKEFLIST_FLAGS} \
1361.1Skamil	    -i ${INSTALLDIR} ${INSTALLSETS}
1371.1Skamil
1381.1Skamil
1391.1Skamil#
1401.1Skamil# MAIN ENTRY POINTS
1411.1Skamil#
1421.1Skamil
1431.1Skamilsets: .PHONY maketars .WAIT makesums
1441.1Skamil	@true
1451.1Skamil
1461.1Skamilsourcesets: .PHONY makesrctars
1471.1Skamil	@true
1481.1Skamil
1491.1Skamil.include <bsd.sys.mk>
1501.1Skamil