1 # $NetBSD: Makefile,v 1.3 2002/03/05 20:07:47 thorpej Exp $ 2 3 TOP= ${.CURDIR}/.. 4 5 .include <bsd.kernobj.mk> 6 .include <bsd.own.mk> 7 8 RAMDISKS= RAMDISK ramdisk 9 10 .for V F in ${RAMDISKS} 11 ${V}DIR!= cd ${TOP}/${F} && ${PRINTOBJDIR} 12 ${V}= ${${V}DIR}/${F}.fs 13 .endfor 14 15 # create netbsd.*.gz targets 16 # 17 # TARGETS is a list of: 18 # KERNEL_name fs-image "nocluster" disables clustering 19 # 20 TARGETS= RAMDISK ${RAMDISK} - 21 22 .for K R E in ${TARGETS} 23 _E:=${E} # work around obscure issue in make(1) 24 KERNELS+= netbsd.${K}.gz 25 KERNELSYMS+= netbsd.${K}.symbols 26 netbsd.${K}.gz: .NOTMAIN ${KERNOBJDIR}/${K}/netbsd ${R} 27 @echo "Populating ${K} with ${R}" 28 cp ${KERNOBJDIR}/${K}/netbsd netbsd.tmp 29 .if ${_E} == "nocluster" 30 gdb --write -batch -x ${.CURDIR}/nocluster.gdb netbsd.tmp </dev/null 31 .endif 32 ${MDSETIMAGE} -v netbsd.tmp ${R} 33 ${NM} netbsd.tmp > netbsd.${K}.symbols 34 ${STRIP} netbsd.tmp 35 gzip -9 netbsd.tmp 36 mv netbsd.tmp.gz ${.TARGET} 37 .endfor 38 39 # do the work 40 # 41 all: ${KERNELS} 42 43 release: 44 -mkdir -p ${RELEASEDIR}/binary/kernel 45 cp -p ${KERNELS} ${KERNELSYMS} ${RELEASEDIR}/binary/kernel 46 47 clean cleandir distclean: 48 rm -f *.core netbsd.tmp ${KERNELS} ${KERNELSYMS} 49 50 .include <bsd.obj.mk> 51 .include <bsd.prog.mk> 52