Home | History | Annotate | Line # | Download | only in ramdisk
Makefile revision 1.22
      1 #	$NetBSD: Makefile,v 1.22 2002/03/28 04:33:22 lukem Exp $
      2 
      3 TOP=		${.CURDIR}/..
      4 
      5 .include "${TOP}/Makefile.inc"
      6 IMAGE=		ramdisk.fs
      7 
      8 CBIN=		ramdiskbin
      9 
     10 MOUNT_POINT?=	/mnt
     11 VND?=		vnd0
     12 VND_DEV=	/dev/${VND}a
     13 VND_RDEV=	/dev/r${VND}a
     14 MDEC=		${DESTDIR}/usr/mdec
     15 
     16 LISTS=		list
     17 CRUNCHCONF=	${CBIN}.conf
     18 MTREECONF=	mtree.conf
     19 
     20 CRUNCHGEN?=	crunchgen
     21 MTREE?=		mtree
     22 
     23 DISKSIZE=	2048k
     24 DISKTYPE=	floppyinstfs
     25 DBG=		-Os -mmultiple
     26 
     27 all: ${CBIN} 
     28 	dd if=/dev/zero of=${IMAGE} bs=${DISKSIZE} count=1
     29 	vnconfig -t ${DISKTYPE} -v -c ${VND} ${IMAGE}
     30 	disklabel -f ${.CURDIR}/disktab -rw ${VND} ${DISKTYPE}
     31 	newfs -B be -m 0 -o space -i 6144 -c 128 ${VND_RDEV}
     32 	mount ${VND_DEV} ${MOUNT_POINT}
     33 	${MTREE} -def ${.CURDIR}/${MTREECONF} -p ${MOUNT_POINT}/ -u
     34 	TOPDIR=${TOP} CURDIR=${.CURDIR} OBJDIR=${.OBJDIR} \
     35 	    KERNOBJDIR=${KERNOBJDIR} \
     36 	    TARGDIR=${MOUNT_POINT} sh ${TOP}/runlist.sh ${.CURDIR}/${LISTS}
     37 	@echo ""
     38 	@df -i ${MOUNT_POINT}
     39 	@echo ""
     40 	umount ${MOUNT_POINT}
     41 	vnconfig -u ${VND}
     42 
     43 unconfig:
     44 	-umount -f ${MOUNT_POINT}
     45 	-vnconfig -u ${VND}
     46 	-rm -f ${IMAGE}
     47 
     48 ${CBIN}.mk ${CBIN}.cache ${CBIN}.c: ${CRUNCHCONF}
     49 	${CRUNCHGEN} -D ${TOP}/../../.. -L ${DESTDIR}/usr/lib ${.ALLSRC}
     50 
     51 ${CBIN}: ${CBIN}.mk ${CBIN}.cache ${CBIN}.c
     52 	${MAKE} -f ${CBIN}.mk DBG="${DBG}" all
     53 
     54 # Use stubs to eliminate some large stuff from libc
     55 HACKSRC=	${DISTRIBDIR}/utils/libhack
     56 .include	"${HACKSRC}/Makefile.inc"
     57 ${CBIN}:	libhack.o
     58 
     59 clean cleandir distclean:
     60 	if [ -f ${CBIN}.mk ]; then ${MAKE} -f ${CBIN}.mk clean; fi;
     61 	rm -f ${IMAGE} ${CBIN} ${CBIN}.mk ${CBIN}.cache
     62 	rm -f *.core *.o *.cro *.c
     63 
     64 .include <bsd.sys.mk>
     65 .include <bsd.obj.mk>
     66 .include <bsd.prog.mk>
     67