1# $OpenBSD: Makefile,v 1.13 2011/04/15 03:11:22 deraadt Exp $ 2 3REV= ${OSrev} 4 5TOP= ${.CURDIR}/.. 6 7BSD_RD= bsd.rd 8IMAGE= mr.fs 9CBIN?= instbin 10CRUNCHCONF?= ${CBIN}.conf 11CRUNCHCONFS?= ${.CURDIR}/../common/crunch.conf 12LISTS= ${.CURDIR}/list 13UTILS?= ${.CURDIR}/../../miniroot 14 15MOUNT_POINT= /mnt 16MTREE= ${UTILS}/mtree.conf 17 18VND?= svnd0 19VND_DEV= /dev/${VND}a 20VND_RDEV= /dev/r${VND}a 21VND_CRDEV= /dev/r${VND}c 22 23 24DISKTYPE= rdroot2.5M 25#NBLKS= 8192 26NBLKS= 5120 27# minfree, opt, b/i trks, sects, cpg 28NEWFSARGS= -m 0 -o space -i 4096 29 30.ifndef DESTDIR 31all ${IMAGE}: 32 @echo setenv DESTDIR before making a ramdisk! 33 @false 34.else 35 36# mix config is not needed. 37all: ${BSD_RD} 38 39${BSD_RD}: ${CBIN} ${IMAGE} bsd rdsetroot 40 cp bsd ${BSD_RD} 41 ${.OBJDIR}/rdsetroot ${BSD_RD} ${IMAGE} 42 43${IMAGE}: rd_setup do_files rd_teardown 44 45.endif 46 47bsd: 48 cd ${TOP}/../../sys/arch/landisk/conf && config RAMDISK 49 cd ${TOP}/../../sys/arch/landisk/compile/RAMDISK && \ 50 ${MAKE} clean && exec ${MAKE} 51 cp ${TOP}/../../sys/arch/landisk/compile/RAMDISK/bsd bsd 52 53rd_setup: 54 dd if=/dev/zero of=${IMAGE} bs=512 count=${NBLKS} 55 vnconfig -v -c -t ${DISKTYPE} ${VND} ${IMAGE} 56 disklabel -w ${VND} ${DISKTYPE} 57 newfs ${NEWFSARGS} ${VND_RDEV} 58 fsck ${VND_RDEV} 59 mount ${VND_DEV} ${MOUNT_POINT} 60 61rd_teardown: 62 @df -i ${MOUNT_POINT} 63 -umount ${MOUNT_POINT} 64 -vnconfig -u ${VND} 65 66rdsetroot: ${TOP}/../common/elfrdsetroot.c 67 ${HOSTCC} -o rdsetroot ${TOP}/../common/elfrdsetroot.c 68 69unconfig: 70 -umount -f ${MOUNT_POINT} 71 -vnconfig -u ${VND} 72 73.PRECIOUS: ${IMAGE} 74 75.ifdef RELEASEDIR 76install: 77 cp ${BSD_RD} ${RELEASEDIR} 78.endif 79 80${CBIN}.mk ${CBIN}.cache ${CBIN}.c: ${CRUNCHCONF} 81 crunchgen -E -D ${.CURDIR}/../../.. -L ${DESTDIR}/usr/lib ${.ALLSRC} 82 83${CBIN}: ${CBIN}.mk ${CBIN}.cache ${CBIN}.c 84 ${MAKE} -f ${CBIN}.mk all 85 86${CRUNCHCONF}: ${LISTS} 87 awk -f ${UTILS}/makeconf.awk CBIN=${CBIN} ${LISTS} > ${CBIN}.conf 88 89do_files: 90 cat ${MTREE} | mtree -de -p ${MOUNT_POINT}/ -u 91 TOPDIR=${TOP} CURDIR=${.CURDIR} OBJDIR=${.OBJDIR} \ 92 REV=${REV} TARGDIR=${MOUNT_POINT} UTILS=${UTILS} \ 93 RELEASEDIR=${RELEASEDIR} sh ${UTILS}/runlist.sh ${LISTS} 94 rm ${MOUNT_POINT}/${CBIN} 95 96clean cleandir: 97 /bin/rm -f core ${IMAGE} ${CBIN} ${CBIN}.mk ${CBIN}.cache \ 98 *.o *.lo *.c bsd ${BSD_RD} rdsetroot 99 rm -f instbin.conf 100 rm -rf cd-dir 101 102.include <bsd.obj.mk> 103.include <bsd.subdir.mk> 104