1 1.44 pk # $NetBSD: Makefile,v 1.44 2002/01/15 17:41:41 pk Exp $ 2 1.1 pk 3 1.29 sjg .include "../../Makefile.inc" 4 1.10 thorpej .include <bsd.own.mk> 5 1.29 sjg .include <bsd.kernobj.mk> 6 1.10 thorpej 7 1.32 matt REV!=sh ${.CURDIR}/../../sys/conf/osrelease.sh -s 8 1.1 pk 9 1.1 pk CBIN= instbin 10 1.1 pk ARCHDIR= ${.CURDIR}/../${MACHINE}/miniroot 11 1.1 pk 12 1.3 pk .if exists(${ARCHDIR}/Makefile.inc) 13 1.3 pk .include "${ARCHDIR}/Makefile.inc" 14 1.3 pk .endif 15 1.3 pk 16 1.42 jmc VND?= vnd0 17 1.42 jmc VND_DEV= /dev/${VND}c 18 1.42 jmc VND_RDEV= /dev/r${VND}c 19 1.16 scottr VND_GEOM?= 20 1.24 pk IMAGE?= miniroot.fs 21 1.26 pk IMAGESIZE?= 14336 # 7MB in 512 byte blocks 22 1.4 leo NEWFSOPTS?= 23 1.34 leo MOUNT_POINT?= /mnt 24 1.15 is BOOTINSTALL?= true 25 1.19 jonathan PRELABEL?= true 26 1.1 pk 27 1.14 pk .ifdef DISKTYPE 28 1.14 pk DISKTYPEARG= -t ${DISKTYPE} 29 1.14 pk .endif 30 1.13 thorpej 31 1.4 leo LISTS= ${.CURDIR}/list ${ARCHDIR}/list 32 1.1 pk CRUNCHCONF= ${CBIN}.conf 33 1.38 enami MTREECONF= ${.CURDIR}/mtree.conf 34 1.23 pk ICMD= ${INSTALL} ${RENAME} ${PRESERVE} ${COPY} \ 35 1.23 pk -o root -g wheel -m ${NONBINMODE} 36 1.1 pk 37 1.36 garbled CRUNCHGEN?= crunchgen 38 1.39 jmc MTREE?= mtree 39 1.36 garbled 40 1.8 leo .ifndef DESTDIR 41 1.8 leo all: 42 1.22 abs @echo setenv DESTDIR before making a miniroot! 43 1.8 leo @false 44 1.8 leo .else 45 1.8 leo 46 1.1 pk all: ${CBIN} 47 1.4 leo dd if=/dev/zero of=${IMAGE} count=${IMAGESIZE} 48 1.42 jmc vnconfig ${DISKTYPEARG} -v -c ${VND} ${IMAGE} ${VND_GEOM} 49 1.19 jonathan ${PRELABEL} 50 1.15 is -newfs -m 0 -o space ${NEWFSOPTS} ${VND_RDEV} ${DISKTYPE} 51 1.15 is ${BOOTINSTALL} 52 1.20 is mount -o async ${VND_DEV} ${MOUNT_POINT} 53 1.39 jmc ${MTREE} -def ${MTREECONF} -p ${MOUNT_POINT}/ -u 54 1.6 leo REV=${REV} CURDIR=${.CURDIR} OBJDIR=${.OBJDIR} ARCHDIR=${ARCHDIR} \ 55 1.15 is TARGDIR=${MOUNT_POINT} VND_RDEV=${VND_RDEV} \ 56 1.29 sjg KERNOBJDIR=${KERNOBJDIR} \ 57 1.15 is sh ${.CURDIR}/runlist.sh ${LISTS} 58 1.1 pk @echo "" 59 1.1 pk @df -i ${MOUNT_POINT} 60 1.1 pk @echo "" 61 1.1 pk umount ${MOUNT_POINT} 62 1.43 shin vnconfig -u ${VND} 63 1.1 pk 64 1.1 pk unconfig: 65 1.1 pk -umount -f ${MOUNT_POINT} 66 1.41 tron -vnconfig -u ${VND_DEV} 67 1.1 pk -/bin/rm -f ${IMAGE} 68 1.1 pk 69 1.1 pk ${CBIN}.conf: ${LISTS} 70 1.1 pk awk -f ${.CURDIR}/makeconf.awk CBIN=${CBIN} ${LISTS} > ${CBIN}.conf 71 1.1 pk 72 1.44 pk ${CBIN}.mk: .EXEC 73 1.44 pk ${CBIN}.mk ${CBIN}.c: ${CRUNCHCONF} 74 1.37 jmc ${CRUNCHGEN} -f -D ${.CURDIR}/../.. -L ${DESTDIR}/usr/lib ${CRUNCHCONF} 75 1.1 pk 76 1.44 pk ${CBIN}: ${CBIN}.mk ${CBIN}.c 77 1.35 jhawk ${MAKE} -f ${CBIN}.mk all 78 1.1 pk 79 1.23 pk .ifndef RELEASEDIR 80 1.23 pk release: 81 1.23 pk @echo setenv RELEASEDIR first 82 1.23 pk @false 83 1.23 pk .else 84 1.28 pk release: ${IMAGE} 85 1.28 pk mkdir -p ${RELEASEDIR}/installation/miniroot 86 1.28 pk gzip -c -9 < ${.OBJDIR}/miniroot.fs \ 87 1.28 pk > ${RELEASEDIR}/installation/miniroot/miniroot.fs.gz 88 1.28 pk ${.CURDIR}/../sets/makesums \ 89 1.31 sjg -t ${RELEASEDIR}/installation/miniroot miniroot.fs.gz 90 1.29 sjg 91 1.23 pk .endif # RELEASEDIR check 92 1.23 pk .endif # DESTDIR check 93 1.23 pk 94 1.18 lukem clean cleandir distclean: 95 1.2 pk /bin/rm -f core ${IMAGE} ${CBIN} ${CBIN}.mk ${CBIN}.cache \ 96 1.21 veego ${CBIN}.conf *.o *.cro *.c 97 1.1 pk 98 1.1 pk .include <bsd.obj.mk> 99 1.1 pk .include <bsd.subdir.mk> 100