Makefile revision 1.9
11.9Stsutsui# $NetBSD: Makefile,v 1.9 2002/04/06 18:16:12 tsutsui Exp $ 21.1Sfredette 31.1SfredetteTOP= ${.CURDIR}/.. 41.1Sfredette 51.5Slukem# This include just sets DISTRIBREV=XX 61.1Sfredette.include "${TOP}/Makefile.inc" 71.3Sjmc.include <bsd.own.mk> 81.9Stsutsui 91.9StsutsuiDBG= -Os 101.1Sfredette 111.1SfredetteIMAGE= ramdisk 121.1SfredetteCBIN= rd_bin 131.1Sfredette 141.1SfredetteTREE= ${TOP}/common/${IMAGE}.tree 151.1Sfredette 161.1SfredetteLISTS= ${TOP}/common/${CBIN}.list \ 171.1Sfredette ${TOP}/common/${IMAGE}.list 181.1Sfredette 191.1SfredetteKERNEL = ${KERNOBJDIR}/RAMDISK/netbsd 201.1Sfredette 211.1SfredetteMOUNT_POINT?= /mnt 221.1SfredetteVND?= vnd1 231.1SfredetteVND_DEV?= /dev/${VND}a 241.1SfredetteVND_RDEV?= /dev/r${VND}a 251.1Sfredette 261.1Sfredette# These are all the parameters for the root fs: 271.1SfredetteDISKTYPE= rdroot 281.1SfredetteSIZE= 400k 291.1Sfredette# bigendian, minfree, opt, b/i , cpg 301.1SfredetteNEWFSARGS= -B be -m 0 -o space -i 4096 -c 20 311.4SfredetteMDSETIMAGE?= mdsetimage 321.4SfredetteMTREE?= mtree 331.1Sfredette 341.1SfredetteKERNELS= netbsd.RAMDISK 351.1SfredetteCLEANFILES= $(KERNELS) ${IMAGE}.fs netbsd-tmp 361.1Sfredette 371.1Sfredetteall: $(KERNELS) 381.1Sfredette 391.1Sfredettenetbsd.RAMDISK : ${IMAGE}.fs 401.1Sfredette cp ${KERNEL} netbsd-tmp 411.3Sjmc ${MDSETIMAGE} -v netbsd-tmp ${IMAGE}.fs 421.1Sfredette -mv -f netbsd-tmp $@ 431.1Sfredette 441.1Sfredette${IMAGE}.fs: ${TREE} ${LISTS} ${CBIN} 451.1Sfredette dd if=/dev/zero of=${IMAGE}.fs bs=${SIZE} count=1 461.4Sfredette vnconfig -f ${DESTDIR}/etc/disktab -t ${DISKTYPE} -v \ 471.4Sfredette -c ${VND} ${IMAGE}.fs 481.4Sfredette disklabel -rw -f ${DESTDIR}/etc/disktab ${VND} ${DISKTYPE} 491.1Sfredette newfs ${NEWFSARGS} ${VND_RDEV} 501.1Sfredette mount ${VND_DEV} ${MOUNT_POINT} 511.2Sjmc ${MTREE} -def ${TREE} -p ${MOUNT_POINT}/ -u 521.1Sfredette TOPDIR=${TOP} CURDIR=${.CURDIR} DESTDIR=${DESTDIR} \ 531.1Sfredette OBJDIR=${.OBJDIR} TARGDIR=${MOUNT_POINT} \ 541.1Sfredette sh ${TOP}/common/RunList.sh ${LISTS} 551.1Sfredette sync 561.1Sfredette @echo "" 571.1Sfredette @df -i ${MOUNT_POINT} 581.1Sfredette @echo "" 591.1Sfredette umount ${MOUNT_POINT} 601.4Sfredette dd if=${VND_DEV} of=${IMAGE}-tmp.fs bs=${SIZE} count=1 611.1Sfredette vnconfig -u ${VND} 621.4Sfredette mv ${IMAGE}-tmp.fs ${IMAGE}.fs 631.1Sfredette 641.1Sfredetteunconfig: 651.1Sfredette -umount -f ${MOUNT_POINT} 661.4Sfredette -vnconfig -u ${VND} 671.1Sfredette -/bin/rm -f ${IMAGE}.fs 681.1Sfredette 691.1Sfredette# Do not delete this if I change my mind and kill make... 701.1Sfredette.PRECIOUS: ${IMAGE}.fs 711.1Sfredette 721.1Sfredette# Rules for making ${CBIN} ... 731.1Sfredette.include "${TOP}/common/Make.crunch" 741.1Sfredette 751.1Sfredette 761.1Sfredette# Use stubs to eliminate some large stuff from libc 771.8SlukemHACKSRC= ${DISTRIBDIR}/utils/libhack 781.8SlukemHACKOBJS= gethost.o 791.8Slukem.include "${HACKSRC}/Makefile.inc" 801.8Slukem${CBIN}: libhack.o 811.4SfredetteCPPFLAGS+=-I${DESTDIR}/usr/include 821.1Sfredette 831.1Sfredetteclean cleandir distclean: 841.1Sfredette -rm -f a.out core *.core *.o *.cro *.c 851.1Sfredette -rm -f ${CLEANFILES} 861.1Sfredette 871.1Sfredette.if !defined(RELEASEDIR) 881.1Sfredetterelease: 891.1Sfredette @echo setenv RELEASEDIR before doing that! 901.1Sfredette @false 911.1Sfredette.else # RELEASEDIR 921.1Sfredetterelease: $(KERNELS) 931.1Sfredette.for x in ${KERNELS} 941.1Sfredette gzip -c -9 < ${x} > \ 951.1Sfredette ${RELEASEDIR}/binary/kernel/${x}.gz 961.1Sfredette.endfor # KERNELS 971.1Sfredette.endif # RELEASEDIR 981.1Sfredette 991.1Sfredette# Standard rules needed by the above... 1001.1Sfredette.include <bsd.obj.mk> 1011.4Sfredette.include <bsd.sys.mk> 1021.1Sfredette.include <bsd.subdir.mk> 103