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