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