Home | History | Annotate | Line # | Download | only in ramdisk
Makefile revision 1.4
      1 #	$NetBSD: Makefile,v 1.4 2000/05/02 16:06:56 sjg Exp $
      2 
      3 TOP=		${.CURDIR}/..
      4 
      5 .include "${TOP}/Makefile.inc"
      6 IMAGE=		ramdisk.fs
      7 
      8 AUXTARGETS=	install.sh upgrade.sh start.sh
      9 AUXCLEAN=	${AUXTARGETS}
     10 
     11 CBIN=		ramdiskbin
     12 
     13 MOUNT_POINT?=	/mnt
     14 # DEV/RDEV file system device, CDEV/RDEV vnconfig device
     15 VND?=		vnd0
     16 VND_DEV=	/dev/${VND}c
     17 VND_RDEV=	/dev/r${VND}c
     18 VND_CDEV=	/dev/${VND}c
     19 VND_CRDEV=	/dev/r${VND}c
     20 IMAGE?=		xxx.fs
     21 MDEC=		${DESTDIR}/usr/mdec
     22 
     23 LISTS=		list
     24 CRUNCHCONF=	${CBIN}.conf
     25 MTREE=		mtree.conf
     26 
     27 DISKTYPE=	ramdisk
     28 DISKSIZE=	2112
     29 
     30 install.sh: install.tmpl
     31 	sed "s/@@VERSION@@/${VER}/" < ${.ALLSRC} > ${.TARGET}
     32 
     33 upgrade.sh: upgrade.tmpl
     34 	sed "s/@@VERSION@@/${VER}/" < ${.ALLSRC} > ${.TARGET}
     35 
     36 start.sh: start.tmpl
     37 	sed "s/@@VERSION@@/${VER}/" < ${.ALLSRC} > ${.TARGET}
     38 
     39 all: ${AUXTARGETS} ${CBIN} 
     40 	dd if=/dev/zero of=${IMAGE} count=${DISKSIZE}
     41 	vnconfig -t ${DISKTYPE} -v -c ${VND_CDEV} ${IMAGE}
     42 	disklabel -rw ${VND_CDEV} ${DISKTYPE}
     43 	newfs -m 0 -o space -c 2 ${VND_RDEV} ${DISKTYPE}
     44 	mount ${VND_DEV} ${MOUNT_POINT}
     45 	mtree -def ${.CURDIR}/${MTREE} -p ${MOUNT_POINT}/ -u
     46 	TOPDIR=${TOP} CURDIR=${.CURDIR} OBJDIR=${.OBJDIR} \
     47 	    KERNOBJDIR=${KERNOBJDIR} \
     48 	    TARGDIR=${MOUNT_POINT} sh ${TOP}/runlist.sh ${.CURDIR}/${LISTS}
     49 	@echo ""
     50 	@df -i ${MOUNT_POINT}
     51 	@echo ""
     52 	umount ${MOUNT_POINT}
     53 	vnconfig -u ${VND_CDEV}
     54 
     55 unconfig:
     56 	-umount -f ${MOUNT_POINT}
     57 	-vnconfig -u ${VND_DEV}
     58 	-/bin/rm -f ${IMAGE}
     59 
     60 ${CBIN}.mk ${CBIN}.cache ${CBIN}.c: ${CRUNCHCONF}
     61 	crunchgen -D ${TOP}/../.. -L ${DESTDIR}/usr/lib ${.ALLSRC}
     62 
     63 ${CBIN}: ${CBIN}.mk ${CBIN}.cache ${CBIN}.c
     64 	make -f ${CBIN}.mk all
     65 
     66 clean cleandir distclean:
     67 	/bin/rm -f ${AUXCLEAN} *.core ${IMAGE} ${CBIN} ${CBIN}.mk ${CBIN}.cache *.o *.cro *.c
     68 
     69 .include <bsd.obj.mk>
     70 .include <bsd.subdir.mk>
     71 
     72