1 # $NetBSD: Makefile,v 1.12.2.3 2000/07/23 16:30:27 he Exp $ 2 3 TOP= ${.CURDIR}/.. 4 5 # This include just sets REV=XX 6 .include "${TOP}/Makefile.inc" 7 8 IMAGE= miniroot 9 10 TREE= ${TOP}/common/${IMAGE}.tree 11 12 LISTS= ${TOP}/common/${IMAGE}.list \ 13 ${TOP}/common/mini_sbin.list \ 14 ${TOP}/common/mini_bin.list \ 15 ${TOP}/common/mini_usr.list 16 17 KERNEL3 = ${KERNOBJDIR}/INSTALL/netbsd 18 KERNEL3X = ${KERNOBJDIR}/INSTALL3X/netbsd 19 20 MOUNT_POINT?= /mnt 21 # DEV/RDEV file system device, CDEV/CRDEV vnconfig device 22 VND?= vnd0 23 VND_DEV= /dev/${VND}a 24 VND_RDEV= /dev/r${VND}a 25 VND_CDEV= /dev/${VND}c 26 VND_CRDEV= /dev/r${VND}c 27 28 CYLS= 20 29 SECS= 64 30 TRKS= 16 31 TOTALSECT != expr ${CYLS} '*' ${SECS} '*' ${TRKS} 32 DISKTYPE= miniroot 33 DISKTAB= ./${DISKTYPE}.disktab 34 GEOM= 512/${SECS}/${TRKS}/${CYLS} 35 INO_BYTES= 8192 36 37 CLEANFILES= ${IMAGE}.gz ${IMAGE} install.sub ${DISKTAB} 38 39 all: ${IMAGE}.gz 40 41 ${DISKTAB}: 42 echo "${DISKTYPE}:ty=simulated:se#512:nt#${TRKS}:ns#${SECS}:nc#${CYLS}:pa#${TOTALSECT}:oa#0:ba#4096:fa#512:ta=4.2BSD:pc#${TOTALSECT}:oc#0:" > $@ 43 44 ${IMAGE}.gz: ${TREE} ${LISTS} install.sub ${DISKTAB} 45 dd if=/dev/zero of=${IMAGE} bs=512 count=${TOTALSECT} 46 vnconfig -v -c ${VND_CDEV} ${IMAGE} ${GEOM} 47 disklabel -rw -f ${DISKTAB} ${VND_CDEV} ${DISKTYPE} 48 disklabel -W ${VND_CDEV} 49 # bigendian, old format, minfree, opt, b/i, cpg, device 50 newfs -B be -O -m 0 -o space -i ${INO_BYTES} -c ${CYLS} ${VND_RDEV} 51 mount ${VND_DEV} ${MOUNT_POINT} 52 mtree -def ${TREE} -p ${MOUNT_POINT}/ -u 53 cp ${KERNEL3} ${MOUNT_POINT}/netbsd.sun3 54 cp ${KERNEL3X} ${MOUNT_POINT}/netbsd.sun3x 55 TOPDIR=${TOP} CURDIR=${.CURDIR} \ 56 OBJDIR=${.OBJDIR} TARGDIR=${MOUNT_POINT} \ 57 sh ${TOP}/common/RunList.sh ${LISTS} 58 sync ; sleep 1 ; sync 59 cd ${MOUNT_POINT} ;\ 60 usr/mdec/installboot -v ufsboot usr/mdec/bootxx ${VND_CRDEV} 61 sync 62 @echo "" 63 @df -i ${MOUNT_POINT} 64 @echo "" 65 umount ${MOUNT_POINT} 66 vnconfig -u ${VND_CDEV} 67 gzip -9 < ${IMAGE} > $@ 68 69 # Do not delete this if I change my mind and kill make... 70 .PRECIOUS: ${IMAGE}.gz 71 72 install.sub : ${TOP}/../miniroot/install.sub 73 sed -e "/^VERSION=/s/=.*/=${REV}/" < $? > $@ 74 75 clean cleandir distclean: 76 -rm -f a.out core *.core *.o 77 -rm -f ${CLEANFILES} 78 79 # XXX -- allow 'make depend' to run without error 80 depend: 81 82 # Standard rules needed by the above... 83 .include <bsd.obj.mk> 84 85 .if !defined(RELEASEDIR) 86 release: 87 @echo setenv RELEASEDIR before doing that! 88 @false 89 .else # RELEASEDIR 90 release: ${IMAGE}.gz 91 -mkdir -p ${RELEASEDIR}/installation/miniroot 92 cp -p ${IMAGE}.gz \ 93 ${RELEASEDIR}/installation/miniroot/${IMAGE}.gz 94 .endif # RELEASEDIR 95