# $OpenBSD: Makefile,v 1.14 2005/08/06 18:07:17 deraadt Exp $ TOP= ${.CURDIR}/.. .include "${TOP}/Makefile.inc" BSD_RD= bsd.rd IMAGE= mr.fs CBIN?= instbin LISTS= ${.CURDIR}/list UTILS?= ${.CURDIR}/../../miniroot MOUNT_POINT= /mnt MTREE= ${UTILS}/mtree.conf FLOPPY= floppy${REV}.fs FLOPPYSIZE?= 2880 FLOPPYTYPE?= floppy INSTALLBOOT?= /usr/mdec/installboot VND?= svnd0 VND_DEV= /dev/${VND}a VND_RDEV= /dev/r${VND}a VND_CRDEV= /dev/r${VND}c PID!= echo $$$$ GZIP?= gzip GZIPFLAGS?= -9v GZIPEXT?= .gz MOUNT_POINT?= /mnt DISKTYPE= rdroot PID!= echo $$$$ REALIMAGE!= echo /tmp/image.${PID} IMAGE?= ramdisk${REV}.fs IMAGESIZE?= 8192 # 4MB in 512 byte blocks NEWFS_WILL_FAIL?=false CRUNCHGENOPTS?= KERNEL?= RAMDISKU1 UTILS?= ${.CURDIR}/../miniroot STRIP?= strip DISKTYPE= rdroot NBLKS= 6144 # minfree, opt, b/i trks, sects, cpg NEWFSARGS= -m 0 -o space -c 16 -i 8192 .ifndef DESTDIR all ${IMAGE}: @echo setenv DESTDIR before making a ramdisk! @false .else # mix config is not needed. all: ${FLOPPY} ${BSD_RD} bsd.gz: bsd.rd ${GZIP} ${GZIPFLAGS} < bsd.rd > bsd.gz ${FLOPPY}: bsd.gz ${BOOT} /usr/ dd if=/dev/zero of=${REALIMAGE} count=${FLOPPYSIZE} vnconfig -v -c ${VND} ${REALIMAGE} disklabel -w ${RAWLABEL} ${VND} ${FLOPPYTYPE} newfs -m 0 -o space -i 524288 -c 80 ${VND_RDEV} mount ${VND_DEV} ${MOUNT_POINT} cp ${DESTDIR}/usr/mdec/ofwboot ${MOUNT_POINT}/ cp bsd.gz ${MOUNT_POINT}/bsd ${INSTALLBOOT} -v ${DESTDIR}/usr/mdec/bootblk \ `echo ${VND_RDEV} | sed -e 's/a$$/c/'` @echo "" @df -i ${MOUNT_POINT} @echo "" umount ${MOUNT_POINT} vnconfig -u ${VND} dd if=${REALIMAGE} of=${FLOPPY} count=${FLOPPYSIZE} rm -f ${REALIMAGE} ${BSD_RD}: ${CBIN} ${IMAGE} bsd elfrdsetroot cp bsd ${BSD_RD} ${.OBJDIR}/elfrdsetroot ${BSD_RD} < ${IMAGE} ${IMAGE}: rd_setup do_files rd_teardown .endif bsd: cd ${TOP}/../../sys/arch/sparc64/conf && config ${KERNEL} cd ${TOP}/../../sys/arch/sparc64/compile/${KERNEL} && \ make clean && make depend && COPTS=-Os make cp ${TOP}/../../sys/arch/sparc64/compile/${KERNEL}/bsd bsd rd_setup: dd if=/dev/zero of=${IMAGE} bs=512 count=${NBLKS} vnconfig -v -c ${VND} ${IMAGE} disklabel -w -r ${VND} ${DISKTYPE} newfs ${NEWFSARGS} ${VND_RDEV} fsck ${VND_RDEV} mount ${VND_DEV} ${MOUNT_POINT} rd_teardown: @df -i ${MOUNT_POINT} -umount ${MOUNT_POINT} -vnconfig -u ${VND} elfrdsetroot: ${TOP}/../common/elfrdsetroot.c ${HOSTCC} -DDEBUG -o elfrdsetroot ${TOP}/../common/elfrdsetroot.c unconfig: -umount -f ${MOUNT_POINT} -vnconfig -u ${VND} .PRECIOUS: ${IMAGE} install: cp ${FLOPPY} ${DESTDIR}/snapshot/ ${CBIN}.conf: ${LISTS} awk -f ${UTILS}/makeconf.awk CBIN=${CBIN} ${LISTS} > ${CBIN}.conf ${CBIN}.mk ${CBIN}.cache ${CBIN}.c: ${CBIN}.conf crunchgen -E -D ${.CURDIR}/../../.. -L ${DESTDIR}/usr/lib ${.ALLSRC} ${CBIN}: ${CBIN}.mk ${CBIN}.cache ${CBIN}.c make -f ${CBIN}.mk all do_files: mtree -def ${MTREE} -p ${MOUNT_POINT}/ -u TOPDIR=${TOP} CURDIR=${.CURDIR} OBJDIR=${.OBJDIR} \ REV=${REV} ARCHDIR=${.CURDIR}/.. TARGDIR=${MOUNT_POINT} \ UTILS=${UTILS} sh ${UTILS}/runlist.sh ${LISTS} rm ${MOUNT_POINT}/${CBIN} clean cleandir: /bin/rm -f core ${IMAGE} ${CBIN} ${CBIN}.mk ${CBIN}.cache \ *.o *.lo *.c bsd ${BSD_RD} bsd.gz ${FLOPPY} elfrdsetroot beforeinstall: cp ${BSD.RD} ${DESTDIR}/snapshot .include .include