diff options
Diffstat (limited to 'distrib/amd64/ramdiskA/Makefile')
-rw-r--r-- | distrib/amd64/ramdiskA/Makefile | 91 |
1 files changed, 84 insertions, 7 deletions
diff --git a/distrib/amd64/ramdiskA/Makefile b/distrib/amd64/ramdiskA/Makefile index a3fbf025342..490673d1ec7 100644 --- a/distrib/amd64/ramdiskA/Makefile +++ b/distrib/amd64/ramdiskA/Makefile @@ -1,10 +1,87 @@ -# $OpenBSD: Makefile,v 1.3 2016/10/19 16:49:58 deraadt Exp $ +# $OpenBSD: Makefile,v 1.4 2019/04/30 17:46:03 deraadt Exp $ -.PATH: ${.CURDIR}/../ramdiskA -BOOT=${DESTDIR}/usr/mdec/fdboot -RAMDISK=RAMDISK -NOBSDRD=1 +FS= floppy${OSrev}.fs +FSSIZE= 2880 +FSDISKTYPE= floppy3 +MOUNT_POINT= /mnt +MTREE= ${UTILS}/mtree.conf -.include "${.CURDIR}/Makefile.inc" +LISTS= ${.CURDIR}/../common/list ${.CURDIR}/list.local +UTILS= ${.CURDIR}/../../miniroot -LISTS+= ${.CURDIR}/list.local +EFIBOOT= ${DESTDIR}/usr/mdec/BOOTX64.EFI ${DESTDIR}/usr/mdec/BOOTIA32.EFI + +all: ${FS} + +${FS}: bsd.gz + dd if=/dev/zero of=${FS} bs=512 count=${FSSIZE} + vnconfig -v ${FS} > vnd + disklabel -w `cat vnd` ${FSDISKTYPE} + newfs -m 0 -o space -i 524288 -c ${FSSIZE} /dev/r`cat vnd`a + mount /dev/`cat vnd`a ${MOUNT_POINT} + cp ${DESTDIR}/usr/mdec/fdboot ${.OBJDIR}/boot + strip ${.OBJDIR}/boot + strip -R .comment -R .SUNW_ctf ${.OBJDIR}/boot + installboot -v -r ${MOUNT_POINT} `cat vnd` \ + ${DESTDIR}/usr/mdec/biosboot ${.OBJDIR}/boot + dd if=bsd.gz of=${MOUNT_POINT}/bsd bs=512 + df -i ${MOUNT_POINT} + umount ${MOUNT_POINT} + vnconfig -u `cat vnd` + rm -f vnd + +MRDISKTYPE= rdroot +MRMAKEFSARGS= -o disklabel=${MRDISKTYPE},minfree=0,density=4096 + +bsd.gz: bsd.rd + cp bsd.rd bsd.strip + strip bsd.strip + strip -R .comment -R .SUNW_ctf bsd.strip + gzip -c9n bsd.strip > bsd.gz + +bsd.rd: mr.fs bsd + cp bsd bsd.rd + rdsetroot bsd.rd mr.fs + +bsd: + cd ${.CURDIR}/../../../sys/arch/amd64/compile/RAMDISK && \ + su ${BUILDUSER} -c '${MAKE} config && ${MAKE} clean && exec ${MAKE}' + cp -p ${.CURDIR}/../../../sys/arch/amd64/compile/RAMDISK/obj/bsd bsd + +mr.fs: instbin + rm -rf $@.d + install -d -o root -g wheel $@.d + mtree -def ${MTREE} -p $@.d -u + CURDIR=${.CURDIR} OBJDIR=${.OBJDIR} OSrev=${OSrev} \ + TARGDIR=$@.d UTILS=${UTILS} RELEASEDIR=${RELEASEDIR} \ + sh ${UTILS}/runlist.sh ${LISTS} + rm $@.d/instbin + makefs ${MRMAKEFSARGS} $@ $@.d + +instbin.mk instbin.cache instbin.c: instbin.conf + crunchgen -E -D ${.CURDIR}/../../.. -L ${DESTDIR}/usr/lib \ + -c instbin.c -e instbin -m instbin.mk instbin.conf + +instbin: instbin.mk instbin.cache instbin.c + ${MAKE} -f instbin.mk SRCLIBDIR=${.CURDIR}/../../../lib all + strip -R .comment -R .SUNW_ctf instbin + +instbin.conf: ${LISTS} + awk -f ${UTILS}/makeconf.awk ${LISTS} > instbin.conf + +unconfig: + -umount -f ${MOUNT_POINT} + -[ -f vnd ] && vnconfig -u `cat vnd` && rm -f vnd + +.ifdef RELEASEDIR +install: + cp ${FS} ${RELEASEDIR}/${FS} +.endif # RELEASEDIR + +clean cleandir: + /bin/rm -f *.core mr.fs instbin instbin.mk instbin*.cache \ + *.o *.lo *.c bsd bsd.rd bsd.gz bsd.strip floppy*.fs \ + lib*.a lib*.olist instbin.map boot instbin.conf ${FS} + /bin/rm -rf mr.fs.d + +.include <bsd.obj.mk> |