1 # $NetBSD: Makefile,v 1.22 1999/07/18 07:22:36 abs Exp $ 2 3 .include <bsd.own.mk> 4 5 REV!=sh ${BSDSRCDIR}/sys/conf/osrelease.sh -s 6 7 CBIN= instbin 8 ARCHDIR= ${.CURDIR}/../${MACHINE}/miniroot 9 10 .if exists(${ARCHDIR}/Makefile.inc) 11 .include "${ARCHDIR}/Makefile.inc" 12 .endif 13 14 VND?= vnd0c 15 VND_DEV= /dev/${VND} 16 VND_RDEV= /dev/r${VND} 17 VND_GEOM?= 18 IMAGE?= miniroot-${REV}.fs 19 IMAGESIZE?= 12288 # 6MB in 512 byte blocks 20 NEWFSOPTS?= 21 MOUNT_POINT?= /mnt 22 BOOTINSTALL?= true 23 PRELABEL?= true 24 25 .ifdef DISKTYPE 26 DISKTYPEARG= -t ${DISKTYPE} 27 .endif 28 29 LISTS= ${.CURDIR}/list ${ARCHDIR}/list 30 CRUNCHCONF= ${CBIN}.conf 31 MTREE= ${.CURDIR}/mtree.conf 32 33 .ifndef DESTDIR 34 all: 35 @echo setenv DESTDIR before making a miniroot! 36 @false 37 .else 38 39 all: ${CBIN} 40 dd if=/dev/zero of=${IMAGE} count=${IMAGESIZE} 41 vnconfig ${DISKTYPEARG} -v -c ${VND_DEV} ${IMAGE} ${VND_GEOM} 42 ${PRELABEL} 43 -newfs -m 0 -o space ${NEWFSOPTS} ${VND_RDEV} ${DISKTYPE} 44 ${BOOTINSTALL} 45 mount -o async ${VND_DEV} ${MOUNT_POINT} 46 mtree -def ${MTREE} -p ${MOUNT_POINT}/ -u 47 REV=${REV} CURDIR=${.CURDIR} OBJDIR=${.OBJDIR} ARCHDIR=${ARCHDIR} \ 48 TARGDIR=${MOUNT_POINT} VND_RDEV=${VND_RDEV} \ 49 sh ${.CURDIR}/runlist.sh ${LISTS} 50 @echo "" 51 @df -i ${MOUNT_POINT} 52 @echo "" 53 umount ${MOUNT_POINT} 54 vnconfig -u ${VND_DEV} 55 56 unconfig: 57 -umount -f ${MOUNT_POINT} 58 -vnconfig -u ${VND_DEV} 59 -/bin/rm -f ${IMAGE} 60 61 ${CBIN}.conf: ${LISTS} 62 awk -f ${.CURDIR}/makeconf.awk CBIN=${CBIN} ${LISTS} > ${CBIN}.conf 63 64 ${CBIN}.mk ${CBIN}.cache ${CBIN}.c: ${CRUNCHCONF} 65 crunchgen -D ${.CURDIR}/../.. -L ${DESTDIR}/usr/lib ${CRUNCHCONF} 66 67 ${CBIN}: ${CBIN}.mk ${CBIN}.cache ${CBIN}.c 68 make -f ${CBIN}.mk all 69 70 clean cleandir distclean: 71 /bin/rm -f core ${IMAGE} ${CBIN} ${CBIN}.mk ${CBIN}.cache \ 72 ${CBIN}.conf *.o *.cro *.c 73 74 .endif # DESTDIR check 75 .include <bsd.obj.mk> 76 .include <bsd.subdir.mk> 77