1 1.20 sjg # $NetBSD: Makefile,v 1.20 2000/05/06 14:18:53 sjg Exp $ 2 1.1 mrg 3 1.1 mrg TOP= ${.CURDIR}/.. 4 1.8 mrg MINIROOT= ${.CURDIR}/../../miniroot 5 1.1 mrg 6 1.1 mrg .include "${TOP}/Makefile.inc" 7 1.16 cjs 8 1.16 cjs .include <bsd.own.mk> # So we use /etc/mk.conf. 9 1.18 sjg .include <bsd.kernobj.mk> 10 1.19 sjg 11 1.18 sjg KERN?= ${KERNOBJDIR}/INSTALL/netbsd 12 1.1 mrg 13 1.1 mrg MOUNT_POINT?= /mnt 14 1.1 mrg VND?= vnd0 15 1.1 mrg VND_DEV= /dev/${VND}a 16 1.1 mrg VND_RDEV= /dev/r${VND}a 17 1.1 mrg VND_CDEV= /dev/${VND}c 18 1.1 mrg VND_CRDEV= /dev/r${VND}c 19 1.1 mrg FD?= fd0 20 1.1 mrg FD_RDEV= /dev/r${FD}a 21 1.13 pk IMAGE?= boot.fs 22 1.1 mrg MDEC= ${DESTDIR}/usr/mdec 23 1.1 mrg 24 1.1 mrg LISTS= ${.CURDIR}/list 25 1.5 mrg RAMDISK!= cd ${TOP}/ramdisk/; \ 26 1.13 pk printf "xxx: .MAKE\n\t@echo \$${.OBJDIR}/ramdisk.fs\n" |\ 27 1.11 pk ${MAKE} -s -f- 28 1.1 mrg 29 1.20 sjg DISKTYPE= instfs 30 1.1 mrg 31 1.1 mrg # Some reasonable values for the -i parameter to newfs are: 32 1.1 mrg # 33 1.1 mrg # 6144 1147k, 189 inodes free 34 1.1 mrg # 16384 1159k, 93 inodes free 35 1.1 mrg # 204800 1167k, 29 inodes free 36 1.11 pk INO_BYTES= 204800 37 1.1 mrg 38 1.20 sjg BLOCKSIZE=512 39 1.20 sjg FSTSIZE=32 40 1.20 sjg FSSIZE!=BLOCKSIZE=${BLOCKSIZE} du -s ${RAMDISK} | awk '{ print $$1 }' 41 1.20 sjg FSSIZE!= expr ${FSTSIZE} \* \( \( ${FSSIZE} + ${FSTSIZE} - 1 \) / ${FSTSIZE} \) 42 1.20 sjg FSNC!=expr ${FSSIZE} / ${FSTSIZE} 43 1.1 mrg 44 1.20 sjg CLEANFILES+= netbsd.ram.gz netbsd.tmp disktab.tmp 45 1.20 sjg 46 1.20 sjg all: netbsd.ram.gz disktab.tmp 47 1.20 sjg dd if=/dev/zero of=${IMAGE} bs=${BLOCKSIZE} count=${FSSIZE} 48 1.1 mrg vnconfig -t ${DISKTYPE} -v -c ${VND_CDEV} ${IMAGE} 49 1.20 sjg disklabel -f disktab.tmp -rw ${VND_CDEV} ${DISKTYPE} 50 1.7 mrg disklabel -W ${VND_CDEV} 51 1.10 wrstuden newfs -B be -m 0 -o space -i ${INO_BYTES} -c 80 ${VND_RDEV} 52 1.1 mrg mount ${VND_DEV} ${MOUNT_POINT} 53 1.8 mrg TOPDIR=${TOP} CURDIR=${MINIROOT} OBJDIR=${.OBJDIR} \ 54 1.19 sjg KERNOBJDIR=${KERNOBJDIR} \ 55 1.8 mrg TARGDIR=${MOUNT_POINT} sh ${MINIROOT}/runlist.sh ${LISTS} 56 1.1 mrg @echo "" 57 1.1 mrg @df -i ${MOUNT_POINT} 58 1.1 mrg @echo "" 59 1.1 mrg @echo "installing new bootblocks" 60 1.1 mrg -rm -f ${MOUNT_POINT}/boot 61 1.19 sjg ${MDEC}/binstall -m ${MDEC} -v -b boot.700000 ffs ${MOUNT_POINT} 62 1.1 mrg umount ${MOUNT_POINT} 63 1.1 mrg vnconfig -u ${VND_CDEV} 64 1.1 mrg 65 1.1 mrg unconfig: 66 1.1 mrg -umount -f ${MOUNT_POINT} 67 1.1 mrg -vnconfig -u ${VND_DEV} 68 1.20 sjg 69 1.20 sjg disktab.tmp: netbsd.ram.gz 70 1.20 sjg @echo "instfs:ty=floppy:se#512:nt#2:rm#300:ns#16:nc#${FSNC}:pa#${FSSIZE}:oa#0:ba#4096:fa#512:ta=4.2BSD:pc#${FSSIZE}:oc#0:" > ${.TARGET} 71 1.17 mrg 72 1.17 mrg netbsd.ram: ${KERN} ${RAMDISK} 73 1.17 mrg cp ${KERN} netbsd.tmp 74 1.17 mrg mdsetimage -v netbsd.tmp ${RAMDISK} 75 1.17 mrg mv netbsd.tmp ${.TARGET} 76 1.1 mrg 77 1.1 mrg netbsd.ram.gz: ${KERN} ${RAMDISK} 78 1.1 mrg cp ${KERN} netbsd.tmp 79 1.1 mrg mdsetimage -v netbsd.tmp ${RAMDISK} 80 1.14 pk gzip -9 netbsd.tmp 81 1.1 mrg mv netbsd.tmp.gz ${.TARGET} 82 1.1 mrg 83 1.6 lukem clean cleandir distclean: 84 1.1 mrg /bin/rm -f *.core ${IMAGE} ${CLEANFILES} 85 1.5 mrg 86 1.5 mrg depend install: 87 1.1 mrg 88 1.1 mrg real-floppy: 89 1.1 mrg dd if=${IMAGE} of=${FD_RDEV} bs=32k 90 1.12 pk 91 1.12 pk .ifndef RELEASEDIR 92 1.12 pk release: 93 1.12 pk @echo setenv RELEASEDIR first 94 1.12 pk @false 95 1.12 pk .else 96 1.12 pk release: $(IMAGE) 97 1.13 pk gzip -c -9 < $(.OBJDIR)/boot.fs \ 98 1.13 pk > $(RELEASEDIR)/installation/bootfs/boot.fs.gz 99 1.12 pk .endif # RELEASEDIR check 100 1.1 mrg 101 1.1 mrg .include <bsd.obj.mk> 102