Makefile revision 1.13
11.13Sjmc#	$NetBSD: Makefile,v 1.13 2001/10/21 23:23:21 jmc Exp $
21.1Sscw
31.1SscwTOP=		${.CURDIR}/..
41.1Sscw
51.1Sscw# This include just sets REV=XX
61.1Sscw.include "${TOP}/Makefile.inc"
71.1Sscw
81.1SscwIMAGE=		ramdisk-${REV}.fs
91.1SscwCBIN=		rd_bin
101.1Sscw
111.1SscwTREE=		mtree.conf
121.1SscwLISTS=		list
131.12SchsCRUNCHCONF=	${.CURDIR}/${CBIN}.conf
141.1Sscw
151.6SsjgKERNEL=		${KERNOBJDIR}/RAMDISK/netbsd
161.1Sscw
171.1SscwMOUNT_POINT?=   /mnt
181.1Sscw# DEV/RDEV file system device, CDEV/RDEV vnconfig device
191.1SscwVND?=           vnd0
201.1SscwVND_CDEV=       /dev/${VND}c
211.1SscwVND_CRDEV=      /dev/r${VND}c
221.1Sscw
231.8SgarbledCRUNCHGEN?=	crunchgen
241.13SjmcMDSETIMAGE?=	mdsetimage
251.11SjmcMTREE?=		mtree
261.8Sgarbled
271.1Sscw# These are all the parameters for the root fs: (384K)
281.1Sscw# NOTE: If you change NBLKS, you *must* also edit the
291.1Sscw#       rdroot entry in /etc/disktab
301.1SscwDISKTYPE=	rdroot
311.9SscwNBLKS=		1024
321.1Sscw
331.1SscwCLEANFILES=	netbsd-rd ${IMAGE}
341.1Sscw
351.1Sscwnetbsd-rd:	${IMAGE}
361.1Sscw	cp ${KERNEL} netbsd-tmp
371.13Sjmc	${MDSETIMAGE} netbsd-tmp ${IMAGE}
381.1Sscw	-mv -f netbsd-tmp $@
391.1Sscw
401.1Sscw${IMAGE}:	${TREE} ${LISTS} ${CBIN}
411.1Sscw	dd if=/dev/zero of=${IMAGE} count=${NBLKS}
421.1Sscw	vnconfig -t ${DISKTYPE} -v -c ${VND_CDEV} ${IMAGE}
431.4Swrstuden	newfs -B be -m 0 -o space -i 2048 ${VND_CRDEV} ${DISKTYPE}
441.1Sscw	mount ${VND_CDEV} ${MOUNT_POINT}
451.11Sjmc	${MTREE} -def ${.CURDIR}/${TREE} -p ${MOUNT_POINT}/ -u
461.1Sscw	TOPDIR=${TOP} CURDIR=${.CURDIR} OBJDIR=${.OBJDIR} \
471.6Ssjg	    KERNOBJDIR=${KERNOBJDIR} \
481.1Sscw	    TARGDIR=${MOUNT_POINT} sh ${.CURDIR}/runlist.sh ${.CURDIR}/${LISTS}
491.1Sscw	@echo ""
501.1Sscw	@df -i ${MOUNT_POINT}
511.1Sscw	@echo ""
521.1Sscw	umount ${MOUNT_POINT}
531.1Sscw	vnconfig -u ${VND_CDEV}
541.1Sscw
551.1Sscwunconfig:
561.1Sscw	-umount -f ${MOUNT_POINT}     
571.1Sscw	-vnconfig -u ${VND_CDEV}      
581.1Sscw	-/bin/rm -f ${IMAGE}
591.1Sscw
601.1Sscw# Do not delete this if I change my mind and kill make...
611.1Sscw.PRECIOUS: ${IMAGE}
621.1Sscw
631.1SscwCLEANFILES+= ${CBIN} ${CBIN}.c ${CBIN}.cache ${CBIN}.mk ${CBIN}.syms
641.5SveegoCLEANFILES+= *.cro *_stub.o *_stub.c
651.1Sscw
661.1Sscw${CBIN}.mk ${CBIN}.cache ${CBIN}.c: ${CRUNCHCONF}
671.8Sgarbled	${CRUNCHGEN} -D ${BSDSRCDIR} -L ${DESTDIR}/usr/lib ${CRUNCHCONF}
681.1Sscw
691.1Sscw${CBIN}: ${CBIN}.mk ${CBIN}.cache ${CBIN}.c
701.7Sjhawk	${MAKE} -f ${CBIN}.mk all
711.1Sscw
721.1Sscw# This is listed in rd_bin.conf but is built here.
731.1Sscw${CBIN} : libhack.o
741.1Sscw
751.1Sscw# Use stubs to eliminate some large stuff from libc
761.1SscwHACKSRC=${TOP}/../utils/libhack
771.1Sscw.include "${HACKSRC}/Makefile.inc"
781.9Sscw
791.9Sscwrelease:	netbsd-rd
801.10Sscw	-mkdir -p ${RELEASEDIR}/installation/tapeimage
811.9Sscw	gzip < netbsd-rd > ${RELEASEDIR}/installation/tapeimage/netbsd-rd.gz
821.1Sscw
831.3Slukemclean cleandir distclean:
841.1Sscw	-rm -f a.out core *.core *.o
851.1Sscw	-rm -f ${CLEANFILES}
861.1Sscw
871.1Sscw# Standard rules needed by the above...
881.6Ssjg.include <bsd.kernobj.mk>
891.1Sscw.include <bsd.obj.mk>
90