Makefile revision 1.28
11.28Slukem# $NetBSD: Makefile,v 1.28 2003/07/10 10:34:02 lukem Exp $
21.24Ssjg
31.24Ssjg.include "../../../Makefile.inc"
41.1Scgd
51.1Scgd# Make a distribution for the alpha, on a spare disk.
61.1Scgd# This creates a large, gzipped disk image in ${.OBJDIR}
71.1Scgd
81.26SrossLOCALTARGETS=	bin.tar.gz etc.tar.gz x11.tar.gz diskimage.gz
91.8Scgd
101.1Scgd.if !defined(DESTDIR) || !defined(DESTDISK)
111.1Scgdall:
121.1Scgd	@echo both 'DESTDIR' and 'DESTDISK' must be defined.
131.1Scgd	@false
141.1Scgd.else
151.1Scgd
161.24SsjgKERNEL?= ${KERNOBJDIR}/GENERIC/netbsd
171.24Ssjg
181.17ScgdSECPERCYL=	343
191.17ScgdCYLS=		1189
201.1Scgd
211.26Srossall: ${LOCALTARGETS}
221.1Scgd
231.7Scgdmount-fs:
241.1Scgd	disklabel -W ${DESTDISK}
251.1Scgd	-dd if=/dev/zero of=/dev/r${DESTDISK}c bs=`expr ${SECPERCYL} \* 512` \
261.1Scgd	    count=${CYLS}
271.17Scgd	disklabel -w -r ${DESTDISK} ImageDisk
281.1Scgd	disklabel -W ${DESTDISK}
291.22Swrstuden	newfs -B le -O /dev/r${DESTDISK}a
301.22Swrstuden	newfs -B le -O /dev/r${DESTDISK}d
311.1Scgd	mount /dev/${DESTDISK}a ${DESTDIR}
321.1Scgd	mkdir ${DESTDIR}/usr
331.1Scgd	mount /dev/${DESTDISK}d ${DESTDIR}/usr
341.7Scgd
351.7Scgdbuild-fs:
361.25Sjhawk	cd ${.CURDIR}/../../../etc && ${MAKE} distribution
371.17Scgd	if [ -d ${.CURDIR}/../../../toolchain ]; then \
381.17Scgd		cd ${.CURDIR}/../../../toolchain && \
391.25Sjhawk		    ${MAKE} prefix=${DESTDIR}/usr/local install; \
401.13Scgd	else \
411.13Scgd		true; \
421.13Scgd	fi
431.17Scgd	if [ -d ${.CURDIR}/../../../xc ]; then \
441.25Sjhawk		cd ${.CURDIR}/../../../xc && ${MAKE} install install.man; \
451.13Scgd	else \
461.13Scgd		true; \
471.13Scgd	fi
481.24Ssjg	cp ${KERNEL} ${DESTDIR}
491.1Scgd	ln -s gcc ${DESTDIR}/usr/local/bin/cc
501.14Scgd	(cd ${DESTDIR}/usr/libexec && ln -s \
511.14Scgd	    ../local/lib/gcc-lib/alpha-unknown-netbsd*/*/cpp .)
521.1Scgd	ln -s ../local/bin/ar ${DESTDIR}/usr/bin
531.1Scgd	ln -s ../local/bin/as ${DESTDIR}/usr/bin
541.1Scgd	ln -s ../local/bin/cc ${DESTDIR}/usr/bin
551.1Scgd	ln -s ../local/bin/gcc ${DESTDIR}/usr/bin
561.1Scgd	ln -s ../local/bin/ld ${DESTDIR}/usr/bin
571.1Scgd	ln -s ../local/bin/nm ${DESTDIR}/usr/bin
581.1Scgd	ln -s ../local/bin/ranlib ${DESTDIR}/usr/bin
591.1Scgd	ln -s ../local/bin/size ${DESTDIR}/usr/bin
601.1Scgd	ln -s ../local/bin/strip ${DESTDIR}/usr/bin
611.4Scgd	cp -p ${DESTDIR}/usr/mdec/boot ${DESTDIR}/
621.10Scgd	sync; sleep 1; sync; sleep 1
631.28Slukem	${TOOL_INSTALLBOOT} -v /dev/r${DESTDISK}c ${DESTDIR}/usr/mdec/bootxx_ffs
641.7Scgd
651.7Scgdunmount-fs:
661.1Scgd	umount ${DESTDIR}/usr ${DESTDIR}
671.16Scgd	fsck -f -t ffs /dev/r${DESTDISK}a /dev/r${DESTDISK}d
681.7Scgd
691.17Scgddiskimage.gz: mount-fs build-fs unmount-fs
701.15Scgd	mount /dev/${DESTDISK}a ${DESTDIR}
711.15Scgd	mount /dev/${DESTDISK}d ${DESTDIR}/usr
721.18Scgd#	mkdir ${DESTDIR}/alphadist
731.18Scgd#	cp -p ${DESTDIR}/usr/sbin/sysctl ${DESTDIR}/alphadist
741.18Scgd#	mv ${DESTDIR}/etc/rc ${DESTDIR}/alphadist/rc.real
751.18Scgd#	cp ${.CURDIR}/rc.hack ${DESTDIR}/alphadist/rc.hack
761.18Scgd#	cp -p ${DESTDIR}/alphadist/rc.hack ${DESTDIR}/etc/rc
771.15Scgd	umount ${DESTDIR}/usr ${DESTDIR}
781.1Scgd	/bin/rm -f $@
791.1Scgd	dd if=/dev/r${DESTDISK}c bs=`expr ${SECPERCYL} \* 512` \
801.1Scgd	    count=${CYLS} | gzip -9 > $@
811.5Scgd
821.7Scgdbin.tar.gz: mount-fs build-fs
831.7Scgd	/bin/rm -f $@
841.9Scgd	(cd ${DESTDIR} ; find . | grep -v '^./etc' | \
851.9Scgd	    grep -v '^./usr/X11R6' | grep -v '^./netbsd' | \
861.10Scgd	    grep -v '^./boot' | pax -w -d | gzip -9) > $@
871.7Scgd
881.7Scgdetc.tar.gz: mount-fs build-fs
891.7Scgd	/bin/rm -f $@
901.7Scgd	(cd ${DESTDIR} ; find ./etc | pax -w -d | gzip -9) > $@
911.5Scgd
921.8Scgdx11.tar.gz: mount-fs build-fs
931.8Scgd	/bin/rm -f $@
941.8Scgd	(cd ${DESTDIR} ; find ./usr/X11R6 | pax -w -d | gzip -9) > $@
951.8Scgd
961.1Scgd.endif
971.1Scgd
981.7Scgd# clean dependencies in case somebody decides to shortcut the build.
991.21Slukemclean cleandir distclean:
1001.26Sross	/bin/rm -f ${LOCALTARGETS}
1011.7Scgd	/bin/rm -f mount-fs build-fs unmount-fs
1021.1Scgd
1031.24Ssjg.include <bsd.kernobj.mk>
1041.1Scgd.include <bsd.own.mk>
1051.1Scgd.include <bsd.obj.mk>
106