Home | History | Annotate | Line # | Download | only in instkernel
Makefile revision 1.3
      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