Home | History | Annotate | Line # | Download | only in ramdisk
Makefile revision 1.7.2.2
      1  1.7.2.2     he #	$NetBSD: Makefile,v 1.7.2.2 2000/03/01 00:28:02 he Exp $
      2      1.1    gwr 
      3      1.1    gwr TOP=		${.CURDIR}/..
      4      1.1    gwr 
      5      1.1    gwr # This include just sets REV=XX
      6      1.1    gwr .include "${TOP}/Makefile.inc"
      7      1.1    gwr 
      8      1.1    gwr IMAGE=	ramdisk
      9      1.1    gwr CBIN=	rd_bin
     10      1.1    gwr 
     11      1.1    gwr TREE=	${TOP}/common/${IMAGE}.tree
     12      1.1    gwr 
     13      1.1    gwr LISTS=	${TOP}/common/${CBIN}.list \
     14      1.1    gwr 	${TOP}/common/${IMAGE}.list
     15      1.1    gwr 
     16  1.7.2.1  perry KERNEL3  = ${KERNOBJDIR}/RAMDISK/netbsd
     17  1.7.2.1  perry KERNEL3X = ${KERNOBJDIR}/RAMDISK3X/netbsd
     18      1.3    gwr 
     19  1.7.2.1  perry MOUNT_POINT?=	/mnt
     20  1.7.2.2     he # DEV/RDEV file system device, CDEV/CRDEV vnconfig device
     21  1.7.2.2     he VND?=		vnd0
     22  1.7.2.2     he VND_DEV=	/dev/${VND}a
     23  1.7.2.2     he VND_RDEV=	/dev/r${VND}a
     24  1.7.2.2     he VND_CDEV=	/dev/${VND}c
     25  1.7.2.2     he VND_CRDEV=	/dev/r${VND}c
     26  1.7.2.2     he 
     27  1.7.2.2     he CYLS=		20
     28  1.7.2.2     he SECS=		16
     29  1.7.2.2     he TRKS=		2
     30  1.7.2.2     he TOTALSECT !=	expr ${CYLS} '*' ${SECS} '*' ${TRKS}
     31      1.3    gwr DISKTYPE=	rdroot
     32  1.7.2.2     he DISKTAB=	./${DISKTYPE}.disktab
     33  1.7.2.2     he GEOM=		512/${SECS}/${TRKS}/${CYLS}
     34  1.7.2.2     he INO_BYTES=	2048
     35      1.1    gwr 
     36  1.7.2.1  perry KERNELS= netbsd-RAMDISK netbsd-RAMDISK3X
     37  1.7.2.2     he CLEANFILES= $(KERNELS) rdsetroot ${IMAGE}.fs ${DISKTAB}
     38      1.1    gwr 
     39  1.7.2.1  perry all: $(KERNELS)
     40      1.5    gwr 
     41  1.7.2.1  perry netbsd-RAMDISK : rdsetroot ${IMAGE}.fs
     42      1.5    gwr 	cp ${KERNEL3} netbsd-tmp
     43      1.5    gwr 	./rdsetroot  netbsd-tmp < ${IMAGE}.fs
     44      1.5    gwr 	-mv -f netbsd-tmp $@
     45      1.5    gwr 
     46  1.7.2.1  perry netbsd-RAMDISK3X : rdsetroot ${IMAGE}.fs
     47      1.5    gwr 	cp ${KERNEL3X} netbsd-tmp
     48      1.1    gwr 	./rdsetroot  netbsd-tmp < ${IMAGE}.fs
     49      1.1    gwr 	-mv -f netbsd-tmp $@
     50      1.1    gwr 
     51      1.1    gwr rdsetroot: ${TOP}/common/rdsetroot.c
     52      1.1    gwr 	$(CC) -o $@ -DDEBUG ${TOP}/common/rdsetroot.c
     53      1.1    gwr 
     54  1.7.2.2     he ${DISKTAB}:
     55  1.7.2.2     he 	echo "${DISKTYPE}:ty=simulated:se#512:nt#${TRKS}:ns#${SECS}:nc#${CYLS}:pa#${TOTALSECT}:oa#0:ba#4096:fa#512:ta=4.2BSD:pc#${TOTALSECT}:oc#0:" > $@
     56  1.7.2.2     he 
     57  1.7.2.2     he ${IMAGE}.fs: ${TREE} ${LISTS} ${CBIN} ${DISKTAB}
     58  1.7.2.2     he 	dd if=/dev/zero of=$@ bs=512 count=${TOTALSECT}
     59  1.7.2.2     he 	vnconfig -v -c ${VND_CDEV} $@ ${GEOM}
     60  1.7.2.2     he 	disklabel -rw -f ${DISKTAB} ${VND_CDEV} ${DISKTYPE}
     61  1.7.2.2     he 	disklabel -W ${VND_CDEV}
     62  1.7.2.2     he 	# bigendian, old format, minfree, opt, b/i, cpg, device
     63  1.7.2.2     he 	newfs -B be -O -m 0 -o space -i ${INO_BYTES} -c ${CYLS} ${VND_RDEV}
     64  1.7.2.2     he 	mount ${VND_DEV} ${MOUNT_POINT}
     65      1.3    gwr 	mtree -def ${TREE} -p ${MOUNT_POINT}/ -u
     66      1.3    gwr 	TOPDIR=${TOP} CURDIR=${.CURDIR} \
     67      1.3    gwr 	  OBJDIR=${.OBJDIR} TARGDIR=${MOUNT_POINT} \
     68      1.3    gwr 	  sh ${TOP}/common/RunList.sh ${LISTS}
     69      1.3    gwr 	sync
     70      1.3    gwr 	@echo ""
     71      1.3    gwr 	@df -i ${MOUNT_POINT}
     72      1.3    gwr 	@echo ""
     73  1.7.2.2     he 	umount ${MOUNT_POINT}
     74  1.7.2.2     he 	vnconfig -u ${VND_CDEV}
     75      1.1    gwr 
     76      1.2    gwr # Do not delete this if I change my mind and kill make...
     77  1.7.2.2     he # Yes delete the durn thing, in case the make fails because vnd is busy!!
     78  1.7.2.2     he #.PRECIOUS: ${IMAGE}.fs
     79      1.2    gwr 
     80      1.1    gwr # Rules for making ${CBIN} ...
     81      1.1    gwr .include "${TOP}/common/Make.crunch"
     82      1.1    gwr 
     83      1.3    gwr # This is listed in rd_bin.conf but is built here.
     84      1.1    gwr ${CBIN} : libhack.o
     85      1.1    gwr 
     86      1.1    gwr # Use stubs to eliminate some large stuff from libc
     87      1.1    gwr HACKSRC=${TOP}/../utils/libhack
     88      1.1    gwr .include "${HACKSRC}/Makefile.inc"
     89      1.1    gwr 
     90      1.6  lukem clean cleandir distclean:
     91  1.7.2.2     he 	-rm -f a.out core *.core *.o *.cro
     92      1.2    gwr 	-rm -f ${CLEANFILES}
     93  1.7.2.2     he 
     94  1.7.2.2     he # XXX -- prevent 'make depend' from bombing out
     95  1.7.2.2     he depend:
     96      1.1    gwr 
     97      1.1    gwr # Standard rules needed by the above...
     98      1.1    gwr .include <bsd.obj.mk>
     99  1.7.2.1  perry 
    100  1.7.2.1  perry .if !defined(RELEASEDIR)
    101  1.7.2.1  perry release:
    102  1.7.2.1  perry 	@echo setenv RELEASEDIR before doing that!
    103  1.7.2.1  perry 	@false
    104  1.7.2.1  perry .else	# RELEASEDIR
    105  1.7.2.1  perry release: $(KERNELS)
    106  1.7.2.1  perry .for x in ${KERNELS}
    107  1.7.2.1  perry 	gzip -c -9 < ${x} > \
    108  1.7.2.1  perry 	 ${RELEASEDIR}/binary/kernel/${x}.gz
    109  1.7.2.1  perry .endfor # KERNELS
    110  1.7.2.1  perry .endif	# RELEASEDIR
    111