Home | History | Annotate | Line # | Download | only in xminiroot
Makefile revision 1.4
      1  1.4  eeh #	$NetBSD: Makefile,v 1.4 2001/08/23 17:14:40 eeh Exp $
      2  1.1  mrg 
      3  1.1  mrg TOP=		${.CURDIR}/..
      4  1.1  mrg MINIROOT=	${TOP}/../miniroot
      5  1.3  eeh 
      6  1.3  eeh .include "${TOP}/Makefile.inc"
      7  1.3  eeh 
      8  1.3  eeh .include <bsd.own.mk>	# So we use /etc/mk.conf.
      9  1.3  eeh .include <bsd.kernobj.mk>
     10  1.3  eeh 
     11  1.1  mrg HACKSRC=	${TOP}/../utils/libhack
     12  1.1  mrg SRCROOT=	${TOP}/../..
     13  1.1  mrg WARNS=1
     14  1.3  eeh KERN?=		${KERNOBJDIR}/INSTALL/netbsd
     15  1.1  mrg 
     16  1.1  mrg .if ${MACHINE_ARCH} == "i386"
     17  1.1  mrg RAW_PART=	d
     18  1.1  mrg .else
     19  1.1  mrg RAW_PART=	c
     20  1.1  mrg .endif
     21  1.1  mrg 
     22  1.1  mrg # Need to add more cases
     23  1.1  mrg .if ${MACHINE_ARCH} == "sparc" || ${MACHINE_ARCH} == "m68k" || \
     24  1.1  mrg     ${MACHINE_ARCH} == "sparc64"
     25  1.1  mrg FS_END=		be
     26  1.1  mrg .else		# i386, pmax
     27  1.1  mrg FS_END=		le
     28  1.1  mrg .endif
     29  1.1  mrg 
     30  1.1  mrg AUXDEPENDS= 	dot.profile disktab.preinstall termcap.mini \
     31  1.1  mrg 		dist/base_obsolete dist/comp_obsolete \
     32  1.1  mrg 		dist/games_obsolete dist/man_obsolete dist/misc_obsolete \
     33  1.1  mrg 		dist/secr_obsolete dist/xbase_obsolete dist/xserver_obsolete
     34  1.1  mrg AUXCLEAN=	list ${CBIN}.conf dot.profile
     35  1.1  mrg 
     36  1.1  mrg CBIN=		ramdiskbin
     37  1.1  mrg 
     38  1.1  mrg 
     39  1.1  mrg MOUNT_POINT?=	/mnt
     40  1.1  mrg # DEV/RDEV file system device, CDEV/RDEV vnconfig device
     41  1.1  mrg VND?=		vnd0
     42  1.1  mrg VND_DEV=	/dev/${VND}c
     43  1.1  mrg VND_RDEV=	/dev/r${VND}c
     44  1.1  mrg VND_CDEV=	/dev/${VND}${RAW_PART}
     45  1.1  mrg VND_CRDEV=	/dev/r${VND}${RAW_PART}
     46  1.3  eeh CSIZE?=		14000
     47  1.2  mrg IMAGE?=		miniroot.fs
     48  1.1  mrg MDEC=		${DESTDIR}/usr/mdec
     49  1.1  mrg 
     50  1.1  mrg LISTS=		list
     51  1.1  mrg CRUNCHCONF=	${CBIN}.conf
     52  1.1  mrg MTREE=		mtree.conf
     53  1.1  mrg 
     54  1.1  mrg CRUNCHGEN?=	crunchgen
     55  1.1  mrg DISKTYPE?=	miniroot
     56  1.1  mrg 
     57  1.3  eeh all: netbsd.INSTALL ${IMAGE}
     58  1.3  eeh 
     59  1.3  eeh netbsd.INSTALL: ${KERN} ${IMAGE}
     60  1.3  eeh 	cp ${KERN} netbsd.tmp
     61  1.3  eeh 	mdsetimage -v netbsd.tmp ${IMAGE}
     62  1.3  eeh 	strip netbsd.tmp
     63  1.3  eeh 	mv netbsd.tmp ${.TARGET}
     64  1.3  eeh 
     65  1.3  eeh 
     66  1.3  eeh ${IMAGE}: ${CBIN} ${AUXDEPENDS} ${MTREE} ${LISTS} dot.profile
     67  1.1  mrg 	dd if=/dev/zero of=${IMAGE} count=${CSIZE}
     68  1.1  mrg 	vnconfig -v -c ${VND_CDEV} ${IMAGE}
     69  1.3  eeh 	-disklabel -f ${.CURDIR}/disktab -rw ${VND_CDEV} ${DISKTYPE}
     70  1.3  eeh 	#newfs -B ${FS_END} -m 0 -o space -i 5120 -c 80 ${VND_RDEV} ${DISKTYPE}
     71  1.3  eeh 	newfs -B ${FS_END} -m 0 -o space ${VND_RDEV} ${DISKTYPE}
     72  1.1  mrg 	mount -o softdep ${VND_DEV} ${MOUNT_POINT}
     73  1.1  mrg 	mtree -def ${.CURDIR}/${MTREE} -p ${MOUNT_POINT}/ -u
     74  1.1  mrg 	TOPDIR=${TOP} CURDIR=${.CURDIR} OBJDIR=${.OBJDIR} \
     75  1.1  mrg 	    KERNOBJDIR=${KERNOBJDIR} \
     76  1.1  mrg 	    TARGDIR=${MOUNT_POINT} sh ${TOP}/runlist.sh ${LISTS}
     77  1.1  mrg 	@echo ""
     78  1.1  mrg 	@df -i ${MOUNT_POINT}
     79  1.1  mrg 	@echo ""
     80  1.1  mrg 	@echo "installing new bootblocks"
     81  1.3  eeh 	#${MDEC}/binstall -m ${DESTDIR}/usr/mdec -u -v ffs ${MOUNT_POINT}
     82  1.1  mrg 	umount ${MOUNT_POINT}
     83  1.3  eeh 	dd if=${MDEC}/bootblk of=${VND_CDEV} bs=512 count=15 conv=notrunc seek=1
     84  1.3  eeh 	#${MDEC}/installboot -v ${MDEC}/bootblk ${VND_CDEV}
     85  1.1  mrg 	vnconfig -u ${VND_CDEV}
     86  1.1  mrg 
     87  1.1  mrg unconfig:
     88  1.1  mrg 	-umount -f ${MOUNT_POINT}
     89  1.1  mrg 	-vnconfig -u ${VND_DEV}
     90  1.1  mrg 	-/bin/rm -f ${IMAGE}
     91  1.1  mrg 
     92  1.1  mrg dot.profile: dot.profile.m4
     93  1.1  mrg 	m4 -DMACHINE_ARCH=${MACHINE_ARCH} -DMACHINE=${MACHINE} \
     94  1.1  mrg 				${.ALLSRC} > ${.TARGET}
     95  1.1  mrg 
     96  1.1  mrg ${LISTS}: ${LISTS}.m4
     97  1.1  mrg 	m4 -DMACHINE_ARCH=${MACHINE_ARCH} -DMACHINE=${MACHINE} \
     98  1.1  mrg 			-DSRCROOT=${SRCROOT} ${.ALLSRC} > ${.TARGET}
     99  1.1  mrg 
    100  1.1  mrg ${CBIN}.conf: ${CBIN}.m4
    101  1.1  mrg 	m4 -DMACHINE_ARCH=${MACHINE_ARCH} -DMACHINE=${MACHINE} \
    102  1.1  mrg 				${.ALLSRC} > ${.TARGET}
    103  1.1  mrg 
    104  1.1  mrg ${CBIN}.mk ${CBIN}.cache ${CBIN}.c: ${CRUNCHCONF}
    105  1.1  mrg 	${CRUNCHGEN} -D ${SRCROOT} -L ${DESTDIR}/usr/lib ${.ALLSRC}
    106  1.1  mrg 
    107  1.1  mrg ${CBIN}: ${CBIN}.mk ${CBIN}.cache ${CBIN}.c
    108  1.1  mrg 	${MAKE} -f ${CBIN}.mk all
    109  1.1  mrg 
    110  1.1  mrg # This is listed in ramdiskbin.conf but is built here.
    111  1.1  mrg ${CBIN}: libhack.o
    112  1.1  mrg 
    113  1.1  mrg # Use stubs to eliminate some large stuff from libc
    114  1.1  mrg .include "${HACKSRC}/Makefile.inc"
    115  1.1  mrg 
    116  1.1  mrg # turn off small gethostby* temporarily
    117  1.1  mrg HACKOBJS:= getcap.o getgrent.o getnet.o getnetgr.o getpwent.o setlocale.o yplib.o
    118  1.1  mrg 
    119  1.1  mrg clean cleandir distclean:
    120  1.4  eeh 	/bin/rm -f *.core ${AUXCLEAN} ${IMAGE} netbsd.INSTALL ${CBIN} \
    121  1.4  eeh 		${CBIN}.mk ${CBIN}.cache *.o *.lo *.cro *.c
    122  1.1  mrg 
    123  1.1  mrg .ifndef RELEASEDIR
    124  1.1  mrg release:
    125  1.1  mrg 	@echo setenv RELEASEDIR first
    126  1.1  mrg 	@false
    127  1.1  mrg .else
    128  1.4  eeh release: $(IMAGE) netbsd.INSTALL
    129  1.2  mrg 	@mkdir -p $(RELEASEDIR)/installation/miniroot
    130  1.2  mrg 	gzip -c -9 < $(.OBJDIR)/miniroot.fs \
    131  1.2  mrg 		> $(RELEASEDIR)/installation/miniroot/miniroot.fs.gz
    132  1.4  eeh 	@mkdir -p $(RELEASEDIR)/binary/kernels
    133  1.4  eeh 	cp netbsd.INSTALL $(RELEASEDIR)/binary/kernels
    134  1.1  mrg .endif	# RELEASEDIR check
    135  1.1  mrg 
    136  1.1  mrg .include <bsd.own.mk>
    137  1.1  mrg .include <bsd.obj.mk>
    138  1.1  mrg .include <bsd.subdir.mk>
    139  1.1  mrg .include <bsd.sys.mk>
    140