Makefile.mdset revision 1.3
11.3Slukem#	$NetBSD: Makefile.mdset,v 1.3 2002/04/12 05:50:19 lukem Exp $
21.1Slukem#
31.1Slukem# Makefile snippet to ${MDSETIMAGE} file system images into kernels
41.1Slukem#
51.1Slukem
61.1Slukem#
71.1Slukem# Required variables:
81.1Slukem#	_SRC_TOP_	Top level of src tree (set by <bsd.own.mk>)
91.1Slukem#	TARGETS		List of images to ${MDSETIMAGE} into kernels:
101.1Slukem#				KERNEL	IMAGE
111.1Slukem#
121.1Slukem# Optional variables:
131.2Slukem#	MDSETDIR		where to install kernels with "release" target
141.2Slukem#	netbsd.${KERNEL}.post	run after ${STRIP}; kernel is netbsd.tmp
151.3Slukem#
161.3Slukem# Variables modified by this:
171.3Slukem#	KERNELS		List of kernel .gz files to build
181.3Slukem#	KERNELSYMS	List of kernel .symbol files to build
191.1Slukem#
201.1Slukem
211.1Slukem.include <bsd.kernobj.mk>
221.1Slukem
231.1Slukem.for _KERNEL _IMAGE in ${TARGETS}			# {
241.1Slukem
251.1SlukemKERNELS+=	netbsd.${_KERNEL}.gz
261.1SlukemKERNELSYMS+=	netbsd.${_KERNEL}.symbols.gz
271.1Slukem
281.1Slukemnetbsd.${_KERNEL}.gz: .NOTMAIN ${KERNOBJDIR}/${_KERNEL}/netbsd ${_IMAGE}
291.1Slukem	@echo "Populating ${_KERNEL} with ${_IMAGE}"
301.1Slukem	rm -f netbsd.tmp netbsd.tmp.gz
311.1Slukem	cp ${KERNOBJDIR}/${_KERNEL}/netbsd netbsd.tmp
321.1Slukem	${MDSETIMAGE} -v netbsd.tmp ${_IMAGE}
331.1Slukem	${NM} netbsd.tmp | gzip -9 > netbsd.${_KERNEL}.symbols.gz
341.1Slukem	${STRIP} netbsd.tmp
351.2Slukem.if defined(netbsd.${_KERNEL}.post)
361.2Slukem	${netbsd.${_KERNEL}.post}
371.1Slukem.endif
381.1Slukem	gzip -9 netbsd.tmp
391.1Slukem	mv netbsd.tmp.gz ${.TARGET}
401.1Slukem
411.1Slukem.endfor							# }
421.1Slukem
431.1SlukemCLEANFILES+=	netbsd.tmp netbsd.tmp.gz ${KERNELS} ${KERNELSYMS}
441.1Slukem
451.1Slukemrealall: ${KERNELS}
461.1Slukem
471.1Slukem.if defined(MDSETDIR)
481.1Slukemrelease: check_RELEASEDIR .WAIT ${KERNELS}
491.1Slukem	-mkdir -p ${RELEASEDIR}/${MDSETDIR}
501.1Slukem	${RELINSTALL} ${KERNELS} ${KERNELSYMS} ${RELEASEDIR}/${MDSETDIR}
511.1Slukem.endif
52