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