xref: /netbsd-src/distrib/prep/floppies/ramdisk/Makefile (revision 8a8f936f250a330d54f8a24ed0e92aadf9743a7b)
1#	$NetBSD: Makefile,v 1.2 2001/10/10 05:13:55 enami Exp $
2
3TOP=		${.CURDIR}/..
4
5.include "${TOP}/Makefile.inc"
6IMAGE=		ramdisk.fs
7
8AUXDEPENDS=	disktab.preinstall dot.profile termcap.src
9
10CBIN=		ramdiskbin
11
12MOUNT_POINT?=	/mnt
13# DEV/RDEV file system device, CDEV/RCDEV vnconfig device
14VND?=		vnd0
15VND_DEV=	/dev/${VND}a
16VND_RDEV=	/dev/r${VND}a
17VND_CDEV=	/dev/${VND}c
18VND_CRDEV=	/dev/r${VND}c
19MDEC=		${DESTDIR}/usr/mdec
20
21LISTS=		list
22CRUNCHCONF=	${CBIN}.conf
23MTREECONF=	mtree.conf
24
25CRUNCHGEN?=	crunchgen
26
27SIZE=           2048k
28DISKTYPE=	floppyinstfs
29DBG=            -Os -mmultiple
30
31all: ${IMAGE}
32
33${IMAGE}: ${CBIN} ${AUXDEPENDS} ${MTREECONF} ${LISTS}
34	rm -f ${IMAGE}.tmp
35	dd if=/dev/zero of=${IMAGE}.tmp bs=${SIZE} count=1
36	vnconfig -t ${DISKTYPE} -v -c ${VND_CDEV} ${IMAGE}.tmp
37	disklabel -f ${.CURDIR}/disktab -rw ${VND_CDEV} ${DISKTYPE}
38	newfs -B be -m 0 -o space -i 6144 -c 128 ${VND_RDEV}
39	mount ${VND_DEV} ${MOUNT_POINT}
40	mtree -def ${.CURDIR}/${MTREECONF} -p ${MOUNT_POINT}/ -u
41	TOPDIR=${TOP} CURDIR=${.CURDIR} OBJDIR=${.OBJDIR} \
42	    TARGDIR=${MOUNT_POINT} sh ${TOP}/runlist.sh ${.CURDIR}/${LISTS}
43	@echo ""
44	@df -i ${MOUNT_POINT}
45	@echo ""
46	umount ${MOUNT_POINT}
47	vnconfig -u ${VND_CDEV}
48	mv -f ${IMAGE}.tmp ${IMAGE}
49
50unconfig:
51	-umount -f ${MOUNT_POINT}
52	-vnconfig -u ${VND_CDEV}
53	-/bin/rm -f ${IMAGE}
54
55${CBIN}.mk ${CBIN}.cache ${CBIN}.c: ${CRUNCHCONF}
56	${CRUNCHGEN} -D ${TOP}/../../.. -L ${DESTDIR}/usr/lib ${.ALLSRC}
57
58${CBIN}: ${CBIN}.mk ${CBIN}.cache ${CBIN}.c libhack.o
59	make -f ${CBIN}.mk DBG="${DBG}" all
60
61HACKSRC=	${TOP}/../../utils/libhack
62.include "${HACKSRC}/Makefile.inc"
63HACKOBJS=	gethost.o getnet.o getpwent.o localeconv.o perror.o \
64		setlocale.o strerror.o strsignal.o utmp.o yplib.o
65
66release:
67
68clean cleandir distclean:
69	rm -f ${IMAGE} ${IMAGE}.tmp ${CBIN} ${CBIN}.mk ${CBIN}.cache
70	rm -f *.core *.o *.cro *.c
71
72.include <bsd.obj.mk>
73.include <bsd.subdir.mk>
74