Makefile revision 1.12
11.12Stsutsui#	$NetBSD: Makefile,v 1.12 2000/06/09 15:03:34 tsutsui Exp $
21.1Sgwr
31.1SgwrTOP=		${.CURDIR}/..
41.1Sgwr
51.1Sgwr# This include just sets REV=XX
61.1Sgwr.include "${TOP}/Makefile.inc"
71.1Sgwr
81.1SgwrIMAGE=	ramdisk
91.1SgwrCBIN=	rd_bin
101.1Sgwr
111.1SgwrTREE=	${TOP}/common/${IMAGE}.tree
121.1Sgwr
131.1SgwrLISTS=	${TOP}/common/${CBIN}.list \
141.1Sgwr	${TOP}/common/${IMAGE}.list
151.1Sgwr
161.9SgwrKERNEL3  = ${KERNOBJDIR}/RAMDISK/netbsd
171.9SgwrKERNEL3X = ${KERNOBJDIR}/RAMDISK3X/netbsd
181.3Sgwr
191.9SgwrMOUNT_POINT?=	/mnt
201.12StsutsuiVND?=		vnd1
211.12StsutsuiVND_DEV?=	/dev/${VND}a
221.12StsutsuiVND_RDEV?=	/dev/r${VND}a
231.1Sgwr
241.12Stsutsui# These are all the parameters for the root fs:
251.3SgwrDISKTYPE=	rdroot
261.12StsutsuiSIZE=		400k
271.12Stsutsui# bigendian, minfree, opt, b/i , cpg
281.12StsutsuiNEWFSARGS= -B be -m 0 -o space -i 4096 -c 20
291.1Sgwr
301.11SgwrKERNELS= netbsd-RAMDISK netbsd-RAMDISK3X
311.12StsutsuiCLEANFILES= $(KERNELS) ${IMAGE}.fs netbsd-tmp
321.1Sgwr
331.11Sgwrall: $(KERNELS)
341.5Sgwr
351.12Stsutsuinetbsd-RAMDISK : ${IMAGE}.fs
361.5Sgwr	cp ${KERNEL3} netbsd-tmp
371.12Stsutsui	mdsetimage -v netbsd-tmp ${IMAGE}.fs
381.5Sgwr	-mv -f netbsd-tmp $@
391.5Sgwr
401.12Stsutsuinetbsd-RAMDISK3X : ${IMAGE}.fs
411.5Sgwr	cp ${KERNEL3X} netbsd-tmp
421.12Stsutsui	mdsetimage -v netbsd-tmp ${IMAGE}.fs
431.1Sgwr	-mv -f netbsd-tmp $@
441.1Sgwr
451.3Sgwr${IMAGE}.fs: ${TREE} ${LISTS} ${CBIN}
461.12Stsutsui	dd if=/dev/zero of=${IMAGE}.fs bs=${SIZE} count=1
471.12Stsutsui	vnconfig -t ${DISKTYPE} -v -c ${VND} ${IMAGE}.fs
481.12Stsutsui	disklabel -rw ${VND} ${DISKTYPE}
491.12Stsutsui	newfs ${NEWFSARGS} ${VND_RDEV}
501.12Stsutsui	mount ${VND_DEV} ${MOUNT_POINT}
511.3Sgwr	mtree -def ${TREE} -p ${MOUNT_POINT}/ -u
521.3Sgwr	TOPDIR=${TOP} CURDIR=${.CURDIR} \
531.3Sgwr	  OBJDIR=${.OBJDIR} TARGDIR=${MOUNT_POINT} \
541.3Sgwr	  sh ${TOP}/common/RunList.sh ${LISTS}
551.3Sgwr	sync
561.3Sgwr	@echo ""
571.3Sgwr	@df -i ${MOUNT_POINT}
581.3Sgwr	@echo ""
591.12Stsutsui	umount ${MOUNT_POINT}
601.12Stsutsui	vnconfig -u ${VND}
611.1Sgwr
621.2Sgwr# Do not delete this if I change my mind and kill make...
631.2Sgwr.PRECIOUS: ${IMAGE}.fs
641.2Sgwr
651.1Sgwr# Rules for making ${CBIN} ...
661.1Sgwr.include "${TOP}/common/Make.crunch"
671.1Sgwr
681.3Sgwr# This is listed in rd_bin.conf but is built here.
691.1Sgwr${CBIN} : libhack.o
701.1Sgwr
711.1Sgwr# Use stubs to eliminate some large stuff from libc
721.1SgwrHACKSRC=${TOP}/../utils/libhack
731.1Sgwr.include "${HACKSRC}/Makefile.inc"
741.1Sgwr
751.6Slukemclean cleandir distclean:
761.2Sgwr	-rm -f a.out core *.core *.o
771.2Sgwr	-rm -f ${CLEANFILES}
781.1Sgwr
791.1Sgwr# Standard rules needed by the above...
801.1Sgwr.include <bsd.obj.mk>
811.11Sgwr
821.11Sgwr.if !defined(RELEASEDIR)
831.11Sgwrrelease:
841.11Sgwr	@echo setenv RELEASEDIR before doing that!
851.11Sgwr	@false
861.11Sgwr.else	# RELEASEDIR
871.11Sgwrrelease: $(KERNELS)
881.11Sgwr.for x in ${KERNELS}
891.11Sgwr	gzip -c -9 < ${x} > \
901.11Sgwr	 ${RELEASEDIR}/binary/kernel/${x}.gz
911.11Sgwr.endfor # KERNELS
921.11Sgwr.endif	# RELEASEDIR
93