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