Home | History | Annotate | Line # | Download | only in miniroot
Makefile revision 1.15
      1 #	$NetBSD: Makefile,v 1.15 1997/09/09 23:02:04 is Exp $
      2 
      3 .include <bsd.own.mk>
      4 
      5 REV!=sh ${BSDSRCDIR}/sys/conf/osrelease.sh -s
      6 
      7 CBIN=		instbin
      8 ARCHDIR=	${.CURDIR}/../${MACHINE}/miniroot
      9 
     10 .if exists(${ARCHDIR}/Makefile.inc)
     11 .include "${ARCHDIR}/Makefile.inc"
     12 .endif
     13 
     14 MOUNT_POINT?=	/mnt
     15 VND?=		vnd0c
     16 VND_DEV=	/dev/${VND}
     17 VND_RDEV=	/dev/r${VND}
     18 IMAGE?=		miniroot-${REV}.fs
     19 IMAGESIZE?=	12288 # 6Mb in 512 byte blocks
     20 NEWFSOPTS?=
     21 BOOTINSTALL?=	true
     22 
     23 .ifdef DISKTYPE
     24 DISKTYPEARG=	-t ${DISKTYPE}
     25 .endif
     26 
     27 LISTS=		${.CURDIR}/list ${ARCHDIR}/list
     28 CRUNCHCONF=	${CBIN}.conf
     29 MTREE=		${.CURDIR}/mtree.conf
     30 
     31 .ifndef DESTDIR
     32 all:
     33 	@echo setenv DESTDIR before makeing a miniroot!
     34 	@false
     35 .else
     36 
     37 all: ${CBIN}
     38 	dd if=/dev/zero of=${IMAGE} count=${IMAGESIZE}
     39 	vnconfig ${DISKTYPEARG} -v -c ${VND_DEV} ${IMAGE}
     40 	-newfs -m 0 -o space ${NEWFSOPTS} ${VND_RDEV} ${DISKTYPE}
     41 	${BOOTINSTALL}
     42 	mount ${VND_DEV} ${MOUNT_POINT}
     43 	mtree -def ${MTREE} -p ${MOUNT_POINT}/ -u
     44 	REV=${REV} CURDIR=${.CURDIR} OBJDIR=${.OBJDIR} ARCHDIR=${ARCHDIR} \
     45 	    TARGDIR=${MOUNT_POINT} VND_RDEV=${VND_RDEV} \
     46 	    sh ${.CURDIR}/runlist.sh ${LISTS}
     47 	@echo ""
     48 	@df -i ${MOUNT_POINT}
     49 	@echo ""
     50 	umount ${MOUNT_POINT}
     51 	vnconfig -u ${VND_DEV}
     52 	cat /*bin/* > /dev/null
     53 
     54 unconfig:
     55 	-umount -f ${MOUNT_POINT}
     56 	-vnconfig -u ${VND_DEV}
     57 	-/bin/rm -f ${IMAGE}
     58 
     59 ${CBIN}.conf: ${LISTS}
     60 	awk -f ${.CURDIR}/makeconf.awk CBIN=${CBIN} ${LISTS} > ${CBIN}.conf
     61 
     62 ${CBIN}.mk ${CBIN}.cache ${CBIN}.c: ${CRUNCHCONF}
     63 	crunchgen -D ${.CURDIR}/../.. -L ${DESTDIR}/usr/lib ${CRUNCHCONF}
     64 
     65 ${CBIN}: ${CBIN}.mk ${CBIN}.cache ${CBIN}.c
     66 	make -f ${CBIN}.mk all
     67 
     68 clean cleandir:
     69 	/bin/rm -f core ${IMAGE} ${CBIN} ${CBIN}.mk ${CBIN}.cache \
     70 	${CBIN}.conf *.o *.lo *.c
     71 
     72 .endif	# DESTDIR check
     73 .include <bsd.obj.mk>
     74 .include <bsd.subdir.mk>
     75