1 # $NetBSD: Makefile,v 1.21 2002/02/09 13:56:52 lukem Exp $ 2 3 .include "../../../Makefile.inc" 4 .include <bsd.kernobj.mk> 5 .include <bsd.own.mk> 6 7 DISKBINDIR= /installation/diskimage 8 KERNBINDIR= /binary/kernel 9 10 IMAGE= diskimage 11 IMAGESIZE= 4096 # 512 byte blocks, update disktab.diskimage if changed 12 DISKTAB= ${.CURDIR}/disktab.diskimage 13 DISKTYPE= "install diskimag" 14 LABELPROTO= ${.CURDIR}/diskimage.label.proto 15 NEWFSOPTS?= -c 32 -B le -i 32768 # don't need many inodes! 16 17 KERN= ${KERNOBJDIR}/RAMDISK/netbsd 18 RAMDISK!= cd ${.CURDIR}/../ramdisk; ${MAKE} echoimage 19 CLEANFILES= netbsd netbsd.gz netbsd.ecoff netbsd.ecoff.gz ${IMAGE}.gz 20 21 VND?= vnd0 22 VND_DEV= /dev/${VND}c 23 VND_RDEV= /dev/r${VND}c 24 MOUNT_POINT?= /mnt 25 MDSETIMAGE?= mdsetimage 26 27 all: netbsd.gz ${IMAGE}.gz 28 29 netbsd.gz: ${KERN} ${RAMDISK} 30 cp ${KERN} netbsd 31 ${MDSETIMAGE} -v netbsd ${RAMDISK} 32 elf2ecoff netbsd netbsd.ecoff 33 rm -f netbsd.ecoff.gz 34 gzip -9 netbsd.ecoff 35 rm -f netbsd.gz 36 gzip -9 netbsd 37 38 ${IMAGE}.gz: netbsd.gz ${DESTDIR}/usr/mdec/boot.pmax 39 dd if=/dev/zero of=${IMAGE} count=${IMAGESIZE} 40 vnconfig ${DISKTYPEARG} -v -c ${VND} ${IMAGE} ${VND_GEOM} 41 disklabel -R -r ${VND} ${LABELPROTO} 42 newfs -B le -m 0 -o space ${NEWFSOPTS} ${VND_RDEV} 43 ${DESTDIR}/usr/mdec/installboot ${VND_RDEV} \ 44 ${DESTDIR}/usr/mdec/bootxx_ffs 45 mount ${VND_DEV} ${MOUNT_POINT} 46 cp -p ${DESTDIR}/usr/mdec/boot.pmax ${MOUNT_POINT} 47 cp -p netbsd.gz ${MOUNT_POINT}/netbsd 48 @echo "" 49 @df -i ${MOUNT_POINT} 50 @echo "" 51 umount ${MOUNT_POINT} 52 vnconfig -u ${VND} 53 rm -f ${IMAGE}.gz 54 gzip -9 ${IMAGE} 55 56 unconfig: 57 -umount -f ${MOUNT_POINT} 58 -vnconfig -u ${VND} 59 -/bin/rm -f ${IMAGE} ${IMAGE}.gz 60 61 realinstall: 62 ${INSTALL} ${RENAME} ${PRESERVE} ${COPY} -m ${NONBINMODE} \ 63 ${IMAGE}.gz ${RELEASEDIR}${DISKBINDIR} 64 ${INSTALL} ${RENAME} ${PRESERVE} ${COPY} -m ${NONBINMODE} \ 65 netbsd.gz ${RELEASEDIR}${KERNBINDIR}/install.gz 66 ${INSTALL} ${RENAME} ${PRESERVE} ${COPY} -m ${NONBINMODE} \ 67 netbsd.ecoff.gz ${RELEASEDIR}${KERNBINDIR}/install.ecoff.gz 68 69 clean cleandir distclean: 70 rm -f ${CLEANFILES} 71 72 # XXX! 73 depend: 74 dependall: depend all 75 76 .include <bsd.obj.mk> 77 .include "../Makefile.inc" 78