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