1# $OpenBSD: Makefile,v 1.26 2019/04/30 17:46:04 deraadt Exp $ 2 3FS= miniroot${OSrev}.fs 4FSSIZE= 5120 5FSDISKTYPE= miniroot2.5M 6MOUNT_POINT= /mnt 7MTREE= ${UTILS}/mtree.conf 8 9LISTS= ${.CURDIR}/list 10UTILS= ${.CURDIR}/../../miniroot 11 12MRDISKTYPE= rdroot2.5M 13MRMAKEFSARGS= -o disklabel=${MRDISKTYPE},minfree=0,density=4096 14 15# minfree, opt, b/i trks, sects, cpg 16NEWFSARGS= -m 0 -o space -i 4096 17 18all: ${FS} 19 20${FS}: bsd.rd 21 dd if=/dev/zero of=${FS} bs=512 count=${FSSIZE} 22 vnconfig -v -t ${FSDISKTYPE} ${FS} > vnd 23 fdisk -i -y `cat vnd` 24 fdisk -u -y -f ${DESTDIR}/usr/mdec/mbr `cat vnd` 25 disklabel -w `cat vnd` ${FSDISKTYPE} 26 newfs ${NEWFSARGS} /dev/r`cat vnd`a 27 mount /dev/`cat vnd`a ${MOUNT_POINT} 28 installboot -vr ${MOUNT_POINT} `cat vnd` \ 29 ${DESTDIR}/usr/mdec/xxboot ${DESTDIR}/usr/mdec/boot 30 gzip -c < ${.OBJDIR}/../ramdisk/bsd.rd > ${MOUNT_POINT}/bsd.rd 31 ln ${MOUNT_POINT}/bsd.rd ${MOUNT_POINT}/bsd 32 df -i ${MOUNT_POINT} 33 umount ${MOUNT_POINT} 34 vnconfig -u `cat vnd` 35 rm -f vnd 36 37bsd.rd: mr.fs bsd 38 cp bsd bsd.rd 39 rdsetroot bsd.rd mr.fs 40 41mr.fs: instbin 42 rm -rf $@.d 43 install -d -o root -g wheel $@.d 44 mtree -def ${MTREE} -p $@.d -u 45 CURDIR=${.CURDIR} OBJDIR=${.OBJDIR} OSrev=${OSrev} \ 46 TARGDIR=$@.d UTILS=${UTILS} RELEASEDIR=${RELEASEDIR} \ 47 sh ${UTILS}/runlist.sh ${LISTS} 48 rm $@.d/instbin 49 makefs ${MRMAKEFSARGS} $@ $@.d 50 51bsd: 52 cd ${.CURDIR}/../../../sys/arch/landisk/compile/RAMDISK && \ 53 su ${BUILDUSER} -c '${MAKE} config && ${MAKE} clean && exec ${MAKE}' 54 cp -p ${.CURDIR}/../../../sys/arch/landisk/compile/RAMDISK/obj/bsd bsd 55 56instbin.mk instbin.cache instbin.c: instbin.conf 57 crunchgen -E -D ${.CURDIR}/../../.. -L ${DESTDIR}/usr/lib \ 58 -c instbin.c -e instbin -m instbin.mk instbin.conf 59 60instbin: instbin.mk instbin.cache instbin.c 61 ${MAKE} -f instbin.mk SRCLIBDIR=${.CURDIR}/../../../lib all 62 63instbin.conf: ${LISTS} 64 awk -f ${UTILS}/makeconf.awk ${LISTS} > instbin.conf 65 66unconfig: 67 -umount -f ${MOUNT_POINT} 68 -[ -f vnd ] && vnconfig -u `cat vnd` && rm -f vnd 69 70.ifdef RELEASEDIR 71install: 72 cp bsd.rd ${RELEASEDIR}/bsd.rd 73 chmod a+r ${RELEASEDIR}/bsd.rd 74 cp ${FS} ${RELEASEDIR} 75.endif 76 77clean cleandir: 78 /bin/rm -f *.core mr.fs instbin instbin.mk instbin.cache \ 79 lib*.a lib*.olist instbin.map *.o *.lo *.c bsd bsd.rd 80 rm -f instbin.conf 81 rm -rf cd-dir mr.fs.d 82 83.include <bsd.obj.mk> 84