Makefile revision 1.1
11.1Smrg#	$NetBSD: Makefile,v 1.1 2001/01/07 09:30:19 mrg Exp $
21.1Smrg
31.1SmrgTOP=		${.CURDIR}/..
41.1SmrgMINIROOT=	${TOP}/../miniroot
51.1SmrgHACKSRC=	${TOP}/../utils/libhack
61.1SmrgSRCROOT=	${TOP}/../..
71.1SmrgWARNS=1
81.1Smrg
91.1Smrg.if ${MACHINE_ARCH} == "i386"
101.1SmrgRAW_PART=	d
111.1Smrg.else
121.1SmrgRAW_PART=	c
131.1Smrg.endif
141.1Smrg
151.1Smrg# Need to add more cases
161.1Smrg.if ${MACHINE_ARCH} == "sparc" || ${MACHINE_ARCH} == "m68k" || \
171.1Smrg    ${MACHINE_ARCH} == "sparc64"
181.1SmrgFS_END=		be
191.1Smrg.else		# i386, pmax
201.1SmrgFS_END=		le
211.1Smrg.endif
221.1Smrg
231.1SmrgAUXDEPENDS= 	dot.profile disktab.preinstall termcap.mini \
241.1Smrg		dist/base_obsolete dist/comp_obsolete \
251.1Smrg		dist/games_obsolete dist/man_obsolete dist/misc_obsolete \
261.1Smrg		dist/secr_obsolete dist/xbase_obsolete dist/xserver_obsolete
271.1SmrgAUXCLEAN=	list ${CBIN}.conf dot.profile
281.1Smrg
291.1SmrgCBIN=		ramdiskbin
301.1Smrg
311.1Smrg.if ${MACHINE_ARCH} == "sparc64"
321.1SmrgCSIZE?=		10240
331.1Smrg.endif
341.1Smrg
351.1SmrgMOUNT_POINT?=	/mnt
361.1Smrg# DEV/RDEV file system device, CDEV/RDEV vnconfig device
371.1SmrgVND?=		vnd0
381.1SmrgVND_DEV=	/dev/${VND}c
391.1SmrgVND_RDEV=	/dev/r${VND}c
401.1SmrgVND_CDEV=	/dev/${VND}${RAW_PART}
411.1SmrgVND_CRDEV=	/dev/r${VND}${RAW_PART}
421.1SmrgIMAGE?=		ramdisk.fs
431.1SmrgCSIZE?=         3312
441.1SmrgMDEC=		${DESTDIR}/usr/mdec
451.1Smrg
461.1SmrgLISTS=		list
471.1SmrgCRUNCHCONF=	${CBIN}.conf
481.1SmrgMTREE=		mtree.conf
491.1Smrg
501.1SmrgCRUNCHGEN?=	crunchgen
511.1SmrgDISKTYPE?=	miniroot
521.1Smrg
531.1Smrgall: ${CBIN} ${AUXDEPENDS} ${MTREE} ${LISTS} dot.profile
541.1Smrg	dd if=/dev/zero of=${IMAGE} count=${CSIZE}
551.1Smrg	vnconfig -v -c ${VND_CDEV} ${IMAGE}
561.1Smrg	disklabel -f ${.CURDIR}/disktab -rw ${VND_CDEV} ${DISKTYPE}
571.1Smrg	newfs -B ${FS_END} -m 0 -o space -i 5120 -c 80 ${VND_RDEV} ${DISKTYPE}
581.1Smrg	mount -o softdep ${VND_DEV} ${MOUNT_POINT}
591.1Smrg	mtree -def ${.CURDIR}/${MTREE} -p ${MOUNT_POINT}/ -u
601.1Smrg	TOPDIR=${TOP} CURDIR=${.CURDIR} OBJDIR=${.OBJDIR} \
611.1Smrg	    KERNOBJDIR=${KERNOBJDIR} \
621.1Smrg	    TARGDIR=${MOUNT_POINT} sh ${TOP}/runlist.sh ${LISTS}
631.1Smrg	@echo ""
641.1Smrg	@df -i ${MOUNT_POINT}
651.1Smrg	@echo ""
661.1Smrg	@echo "installing new bootblocks"
671.1Smrg	${MDEC}/binstall -m ${DESTDIR}/usr/mdec -u -v ffs ${MOUNT_POINT}
681.1Smrg	umount ${MOUNT_POINT}
691.1Smrg	vnconfig -u ${VND_CDEV}
701.1Smrg
711.1Smrgunconfig:
721.1Smrg	-umount -f ${MOUNT_POINT}
731.1Smrg	-vnconfig -u ${VND_DEV}
741.1Smrg	-/bin/rm -f ${IMAGE}
751.1Smrg
761.1Smrgdot.profile: dot.profile.m4
771.1Smrg	m4 -DMACHINE_ARCH=${MACHINE_ARCH} -DMACHINE=${MACHINE} \
781.1Smrg				${.ALLSRC} > ${.TARGET}
791.1Smrg
801.1Smrg${LISTS}: ${LISTS}.m4
811.1Smrg	m4 -DMACHINE_ARCH=${MACHINE_ARCH} -DMACHINE=${MACHINE} \
821.1Smrg			-DSRCROOT=${SRCROOT} ${.ALLSRC} > ${.TARGET}
831.1Smrg
841.1Smrg${CBIN}.conf: ${CBIN}.m4
851.1Smrg	m4 -DMACHINE_ARCH=${MACHINE_ARCH} -DMACHINE=${MACHINE} \
861.1Smrg				${.ALLSRC} > ${.TARGET}
871.1Smrg
881.1Smrg${CBIN}.mk ${CBIN}.cache ${CBIN}.c: ${CRUNCHCONF}
891.1Smrg	${CRUNCHGEN} -D ${SRCROOT} -L ${DESTDIR}/usr/lib ${.ALLSRC}
901.1Smrg
911.1Smrg${CBIN}: ${CBIN}.mk ${CBIN}.cache ${CBIN}.c
921.1Smrg	${MAKE} -f ${CBIN}.mk all
931.1Smrg
941.1Smrg# This is listed in ramdiskbin.conf but is built here.
951.1Smrg${CBIN}: libhack.o
961.1Smrg
971.1Smrg# Use stubs to eliminate some large stuff from libc
981.1Smrg.include "${HACKSRC}/Makefile.inc"
991.1Smrg
1001.1Smrg# turn off small gethostby* temporarily
1011.1SmrgHACKOBJS:= getcap.o getgrent.o getnet.o getnetgr.o getpwent.o setlocale.o yplib.o
1021.1Smrg
1031.1Smrgclean cleandir distclean:
1041.1Smrg	/bin/rm -f *.core ${AUXCLEAN} ${IMAGE} ${CBIN} ${CBIN}.mk ${CBIN}.cache *.o *.lo *.cro *.c
1051.1Smrg
1061.1Smrg.ifndef RELEASEDIR
1071.1Smrgrelease:
1081.1Smrg	@echo setenv RELEASEDIR first
1091.1Smrg	@false
1101.1Smrg.else
1111.1Smrgrelease: $(IMAGE)
1121.1Smrg	@mkdir -p $(RELEASEDIR)/installation/ramdisk
1131.1Smrg	gzip -c -9 < $(.OBJDIR)/ramdisk.fs \
1141.1Smrg		> $(RELEASEDIR)/installation/ramdisk/ramdisk.fs.gz
1151.1Smrg.endif	# RELEASEDIR check
1161.1Smrg
1171.1Smrg.include <bsd.own.mk>
1181.1Smrg.include <bsd.obj.mk>
1191.1Smrg.include <bsd.subdir.mk>
1201.1Smrg.include <bsd.sys.mk>
121