Makefile revision 1.34
1# $OpenBSD: Makefile,v 1.34 2017/08/16 14:41:21 deraadt Exp $ 2 3TOP= ${.CURDIR}/.. 4 5.include "${TOP}/Makefile.inc" 6BSD_RD= bsd.rd 7IMAGE= mr.fs 8CBIN?= instbin 9LISTS= ${.CURDIR}/list 10UTILS?= ${.CURDIR}/../../miniroot 11 12MOUNT_POINT= /mnt 13MTREE= ${UTILS}/mtree.conf 14 15FLOPPY= floppy${REV}.fs 16FLOPPYSIZE?= 2880 17FLOPPYTYPE?= floppy 18 19VND?= vnd0 20VND_DEV= /dev/${VND}a 21VND_RDEV= /dev/r${VND}a 22 23GZIPCMD?= gzip 24GZIPFLAGS?= -9nv 25GZIPEXT?= .gz 26 27PID!= echo $$$$ 28REALIMAGE!= echo /var/tmp/image.${PID} 29KERNEL?= RAMDISKU1 30 31DISKTYPE= rdroot 32MAKEFSARGS_RD= -o disklabel=${DISKTYPE},minfree=0,density=4096 33 34.ifndef DESTDIR 35all ${IMAGE}: 36 @echo setenv DESTDIR before making a ramdisk! 37 @false 38.else 39 40# mix config is not needed. 41all: ${FLOPPY} ${BSD_RD} 42 43bsd.gz: bsd.rd 44 ${GZIPCMD} ${GZIPFLAGS} < bsd.rd > bsd.gz 45 46${FLOPPY}: bsd.gz ${BOOT} /usr/ 47 dd if=/dev/zero of=${REALIMAGE} count=${FLOPPYSIZE} 48 vnconfig -v -c ${VND} ${REALIMAGE} 49 disklabel -w ${VND} ${FLOPPYTYPE} 50 newfs -m 0 -o space -i 524288 -c ${FLOPPYSIZE} ${VND_RDEV} 51 mount ${VND_DEV} ${MOUNT_POINT} 52 cp ${DESTDIR}/usr/mdec/ofwbootfd ${MOUNT_POINT}/ofwboot 53 cp bsd.gz ${MOUNT_POINT}/bsd 54 installboot -v ${VND} /usr/mdec/bootblk ${MOUNT_POINT}/ofwboot 55 @echo "" 56 @df -i ${MOUNT_POINT} 57 @echo "" 58 umount ${MOUNT_POINT} 59 vnconfig -u ${VND} 60 dd if=${REALIMAGE} of=${FLOPPY} count=${FLOPPYSIZE} 61 rm -f ${REALIMAGE} 62 63${BSD_RD}: ${CBIN} ${IMAGE} bsd elfrdsetroot 64 cp bsd ${BSD_RD} 65 ${.OBJDIR}/elfrdsetroot ${BSD_RD} < ${IMAGE} 66 strip -R .SUNW_ctf ${BSD_RD} 67 68${IMAGE}: ${CBIN} 69 rm -rf $@.d 70 install -d -o root -g wheel $@.d 71 mtree -def ${MTREE} -p $@.d -u 72 TOPDIR=${TOP} CURDIR=${.CURDIR} OBJDIR=${.OBJDIR} REV=${REV} \ 73 TARGDIR=$@.d UTILS=${UTILS} RELEASEDIR=${RELEASEDIR} \ 74 sh ${UTILS}/runlist.sh ${LISTS} 75 rm $@.d/${CBIN} 76 makefs ${MAKEFSARGS_RD} $@ $@.d 77 78.endif 79 80bsd: 81 cd ${TOP}/../../sys/arch/sparc64/compile/${KERNEL} && \ 82 su ${BUILDUSER} -c '${MAKE} config && ${MAKE} clean && env COPTS=-Oz ${MAKE}' 83 cp -p ${TOP}/../../sys/arch/sparc64/compile/${KERNEL}/obj/bsd bsd 84 85elfrdsetroot: ${TOP}/../common/elfrdsetroot.c 86 ${HOSTCC} ${HOSTCFLAGS} -o elfrdsetroot \ 87 ${TOP}/../common/elfrdsetroot.c ${TOP}/../common/elf32.c \ 88 ${TOP}/../common/elf64.c 89 90unconfig: 91 -umount -f ${MOUNT_POINT} 92 -vnconfig -u ${VND} 93 94${CBIN}.conf: ${LISTS} 95 awk -f ${UTILS}/makeconf.awk CBIN=${CBIN} ${LISTS} > ${CBIN}.conf 96 97${CBIN}.mk ${CBIN}.cache ${CBIN}.c: ${CBIN}.conf 98 crunchgen -E -D ${.CURDIR}/../../.. -L ${DESTDIR}/usr/lib ${.ALLSRC} 99 100${CBIN}: ${CBIN}.mk ${CBIN}.cache ${CBIN}.c 101 ${MAKE} -f ${CBIN}.mk SRCLIBDIR=${.CURDIR}/../../../lib all 102 103clean cleandir: 104 /bin/rm -f *.core ${IMAGE} ${CBIN} ${CBIN}.mk ${CBIN}.cache \ 105 lib*.a lib*.olist ${CBIN}.map \ 106 *.o *.lo *.c bsd ${BSD_RD} bsd.gz ${FLOPPY} elfrdsetroot 107 /bin/rm -rf ${IMAGE}.d 108 109.ifdef RELEASEDIR 110install: 111 cp ${FLOPPY} ${BSD.RD} ${RELEASEDIR} 112.endif 113 114.include <bsd.obj.mk> 115.include <bsd.subdir.mk> 116