1 # $NetBSD: Makefile,v 1.6 2002/02/09 13:56:51 lukem Exp $ 2 3 .include "../../../Makefile.inc" 4 .include <bsd.kernobj.mk> 5 .include <bsd.own.mk> 6 7 DISKBINDIR= ${RELEASEDIR}/installation/diskimage 8 KERNBINDIR= ${RELEASEDIR}/binary/kernel 9 MDSETIMAGE?= mdsetimage 10 11 IMAGE= diskimage 12 IMAGESIZE= 4096 # 512 byte blocks, update disktab.diskimage if changed 13 DISKTAB= ${.CURDIR}/disktab.diskimage 14 DISKTYPE= miniroot 15 NEWFSOPTS?= -c 32 -B be -i 32768 # don't need many inodes! 16 17 MDEC?= ${DESTDIR}/usr/mdec 18 BOOT_PRIMARY= ${MDEC}/bootxx_ffs 19 BOOT_SECONDARY= ${MDEC}/boot 20 INSTALLBOOT?= ${MDEC}/installboot 21 22 KERN= ${KERNOBJDIR}/RAMDISK/netbsd 23 RAMDISK!= cd ${.CURDIR}/../ramdisk; ${MAKE} echoimage 24 CLEANFILES= netbsd netbsd.gz netbsd.ecoff netbsd.ecoff.gz ${IMAGE}.gz 25 26 # DEV/RDEV file system device, CDEV/RDEV vnconfig device 27 VND?= vnd0 28 VND_DEV= /dev/${VND}c 29 VND_RDEV= /dev/r${VND}c 30 #VND_GEOM= 512/18/2/$$((${IMAGESIZE} / (18 * 2))) 31 32 MOUNT_POINT?= /mnt 33 34 realall: ${IMAGE}.gz 35 36 netbsd.gz: ${KERN} ${RAMDISK} 37 cp ${KERN} netbsd 38 ${MDSETIMAGE} -v netbsd ${RAMDISK} 39 .ifdef ECOFF_KERNEL 40 elf2ecoff netbsd netbsd.ecoff 41 rm -f netbsd.ecoff.gz 42 gzip -9 netbsd.ecoff 43 .endif # ECOFF_KERNEL 44 rm -f netbsd.gz 45 gzip -9 netbsd 46 47 ${IMAGE}.gz: netbsd.gz ${BOOT_PRIMARY} ${BOOT_SECONDARY} 48 dd if=/dev/zero of=${IMAGE} count=${IMAGESIZE} 49 vnconfig ${DISKTYPEARG} -v -c ${VND} ${IMAGE} ${VND_GEOM} 50 disklabel -rw -f ${DISKTAB} ${VND} ${DISKTYPE} 51 newfs -B be -m 0 -o space ${NEWFSOPTS} ${VND_RDEV} 52 ${INSTALLBOOT} ${VND_RDEV} ${BOOT_PRIMARY} 53 mount ${VND_DEV} ${MOUNT_POINT} 54 cp -p ${BOOT_SECONDARY} ${MOUNT_POINT} 55 cp -p netbsd.gz ${MOUNT_POINT}/netbsd 56 @echo "" 57 @df -i ${MOUNT_POINT} 58 @echo "" 59 umount ${MOUNT_POINT} 60 vnconfig -u ${VND} 61 rm -f ${IMAGE}.gz 62 gzip -9 ${IMAGE} 63 64 unconfig: 65 -umount -f ${MOUNT_POINT} 66 -vnconfig -u ${VND} 67 -/bin/rm -f ${IMAGE} ${IMAGE}.gz 68 69 .if !defined(RELEASEDIR) 70 release: .USE 71 @echo setenv RELEASEDIR first! 72 @false 73 .else 74 release: ${IMAGE}.gz 75 -mkdir -p ${DISKBINDIR} ${KERNBINDIR} 76 ${INSTALL} ${RENAME} ${PRESERVE} ${COPY} -m ${NONBINMODE} \ 77 ${IMAGE}.gz ${DISKBINDIR} 78 ${INSTALL} ${RENAME} ${PRESERVE} ${COPY} -m ${NONBINMODE} \ 79 netbsd.gz ${KERNBINDIR}/install.gz 80 .if defined(ECOFF_KERNEL) 81 ${INSTALL} ${RENAME} ${PRESERVE} ${COPY} -m ${NONBINMODE} \ 82 netbsd.ecoff.gz ${KERNBINDIR}/install.ecoff.gz 83 .endif # ECOFF_KERNEL 84 .endif # RELEASEDIR 85 86 realinstall: release 87 88 clean cleandir distclean: 89 rm -f ${CLEANFILES} 90 91 .include <bsd.obj.mk> 92