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