Makefile revision 1.29
1# $NetBSD: Makefile,v 1.29 2002/05/02 18:02:59 lukem Exp $ 2 3.include <bsd.own.mk> 4.include "${NETBSDSRCDIR}/distrib/common/Makefile.distrib" 5 6TOP= ${.CURDIR}/.. 7 8.include "${TOP}/Makefile.inc" 9 10DBG= -Os 11 12IMAGE= ramdisk 13CBIN= rd_bin 14 15TREE= ${TOP}/common/${IMAGE}.tree 16 17LISTS= ${TOP}/common/${CBIN}.list \ 18 ${TOP}/common/${IMAGE}.list 19 20KERNEL3 = ${KERNOBJDIR}/RAMDISK/netbsd 21KERNEL3X = ${KERNOBJDIR}/RAMDISK3X/netbsd 22 23MOUNT_POINT?= /mnt 24VND?= vnd1 25VND_DEV?= /dev/${VND}a 26VND_RDEV?= /dev/r${VND}a 27 28# These are all the parameters for the root fs: 29DISKTYPE= rdroot 30SIZE= 400k 31# bigendian, minfree, opt, b/i , cpg 32NEWFSARGS= -B be -m 0 -o space -i 4096 -c 20 33MDSETIMAGE?= mdsetimage 34MTREE?= mtree 35 36KERNELS= netbsd.RAMDISK netbsd.RAMDISK3X 37CLEANFILES= $(KERNELS) ${IMAGE}.fs netbsd-tmp 38 39all: $(KERNELS) 40 41netbsd.RAMDISK : ${IMAGE}.fs 42 cp ${KERNEL3} netbsd-tmp 43 ${MDSETIMAGE} -v netbsd-tmp ${IMAGE}.fs 44 -mv -f netbsd-tmp $@ 45 46netbsd.RAMDISK3X : ${IMAGE}.fs 47 cp ${KERNEL3X} netbsd-tmp 48 ${MDSETIMAGE} -v netbsd-tmp ${IMAGE}.fs 49 -mv -f netbsd-tmp $@ 50 51${IMAGE}.fs: ${TREE} ${LISTS} ${CBIN} 52 dd if=/dev/zero of=${IMAGE}.fs bs=${SIZE} count=1 53 vnconfig -t ${DISKTYPE} -v -c ${VND} ${IMAGE}.fs 54 disklabel -rw ${VND} ${DISKTYPE} 55 newfs ${NEWFSARGS} ${VND_RDEV} 56 mount ${VND_DEV} ${MOUNT_POINT} 57 ${MTREE} -def ${TREE} -p ${MOUNT_POINT}/ -u 58 TOPDIR=${TOP} CURDIR=${.CURDIR} DESTDIR=${DESTDIR} \ 59 OBJDIR=${.OBJDIR} TARGDIR=${MOUNT_POINT} \ 60 sh ${TOP}/common/RunList.sh ${LISTS} 61 sync 62 @echo "" 63 @df -i ${MOUNT_POINT} 64 @echo "" 65 umount ${MOUNT_POINT} 66 vnconfig -u ${VND} 67 68unconfig: 69 -umount -f ${MOUNT_POINT} 70 -vnconfig -u ${VND} 71 -/bin/rm -f ${IMAGE}.fs 72 73# Do not delete this if I change my mind and kill make... 74.PRECIOUS: ${IMAGE}.fs 75 76# Rules for making ${CBIN} ... 77.include "${TOP}/common/Make.crunch" 78 79# Use stubs to eliminate some large stuff from libc 80HACKSRC= ${DISTRIBDIR}/utils/libhack 81.include "${HACKSRC}/Makefile.inc" 82${CBIN}: libhack.o 83 84release: check_RELEASEDIR .WAIT $(KERNELS) 85.for x in ${KERNELS} 86 gzip -c -9 < ${x} > \ 87 ${RELEASEDIR}/binary/kernel/${x}.gz 88.endfor # KERNELS 89 90.INTERRUPT: unconfig 91 92.include <bsd.prog.mk> 93