diff options
author | julian <julian@FreeBSD.org> | 1996-05-21 01:12:48 +0000 |
---|---|---|
committer | julian <julian@FreeBSD.org> | 1996-05-21 01:12:48 +0000 |
commit | 57f684b7bcf43e96e30345e8dd8437b9722daa89 (patch) | |
tree | 4e0299859bca8dbeb00101cbcd071e48e508f44f /release/floppies/crunch_fs.mk | |
parent | daaf2e922f028b52c7654d7ffacd86a5f39dd69f (diff) | |
download | FreeBSD-src-57f684b7bcf43e96e30345e8dd8437b9722daa89.zip FreeBSD-src-57f684b7bcf43e96e30345e8dd8437b9722daa89.tar.gz |
stand alone (kinda) floppy generation..
you still need tohave done a make world and have made 'sysinstall'
this should not interfere with existing code as it's standalone.
write_mfs_in_kernel.c is duplicated alsewhere.. one will go ..
Diffstat (limited to 'release/floppies/crunch_fs.mk')
-rw-r--r-- | release/floppies/crunch_fs.mk | 107 |
1 files changed, 107 insertions, 0 deletions
diff --git a/release/floppies/crunch_fs.mk b/release/floppies/crunch_fs.mk new file mode 100644 index 0000000..ab11d5a --- /dev/null +++ b/release/floppies/crunch_fs.mk @@ -0,0 +1,107 @@ +### +# $Id: Makefile,v 1.214 1996/05/02 08:18:28 jkh Exp $ +# +# This is included to make a floppy that includes a crunch file +# +# Variables that control this mk include file. +# TOP specifies where the top of the FreeBSD source tree is.. (*) +# FS_DIRS directories to make on the fs (*) +# STANDLINKS added symlinks to /stand on the fs +# VERBATIM a directory that contains tree to be copied to the fs +# FSSIZE defaults to 1200 +# FSLABEL defaults to fd1200 +# FSINODE defaults to 4300 +# FS_DEVICES devices to make on the fs (using MAKEDEV) (default = all) +# ZIP decides if the installed cruch will also be gzip'd(def=true) +# (*) = Mandatory +### + +# If we weren't told, default to nothing +.if ! defined( TOP ) +# define TOP! +xxx +.endif + +# mountpoint for filesystems. +MNT= /mnt + +# other floppy parameters. +FSSIZE?= 1200 +FSLABEL?= fd1200 +FSINODE?= 4300 +FS_DEVICES?= all +ZIP?=true + +# Things which will get you into trouble if you change them +TREE= tree +LABELDIR= ${TOP}/sys/i386/boot/biosboot/obj + +clean: + rm -rf tree fs-image fs-image.size step[0-9] + +.include <bsd.prog.mk> + + +# +# --==## Create a filesystem image ##==-- +# + +fs_image: ${TREE} step2 step3 step4 fs-image + +${TREE}: ${.CURDIR}/Makefile + rm -rf ${TREE} + mkdir -p ${TREE} + cd ${TREE} && mkdir ${FS_DIRS} + cd ${TREE} ; for i in ${STANDLINKS} ;\ + do ; \ + ln -s /stand $${i} ; \ + done + +step2: ${CRUNCHDIRS} ${.CURDIR}/Makefile +.if defined(CRUNCHDIRS) + @cd ${.CURDIR} && $(MAKE) installCRUNCH DIR=${TREE}/stand ZIP=${ZIP} +.endif + touch step2 + +step3: step2 +.if defined (FS_DEVICES) + ( cd tree/dev && \ + cp ${TOP}/etc/etc.i386/MAKEDEV . && sh MAKEDEV ${FS_DEVICES} ) +.endif + touch step3 + +step4: step3 +.if defined(VERBATIM) + A=`pwd`;cd ${.CURDIR}/${VERBATIM}; \ + find . -print |cpio -pdmuv $$A/tree +.endif + true || cp ${TOP}/etc/spwd.db tree/etc + touch step4 + +fs-image: step4 + sh -e ${FS_BIN}/doFS.sh ${LABELDIR} ${MNT} ${FSSIZE} tree \ + 10000 ${FSLABEL} + + +.if defined(CRUNCHDIRS) +installCRUNCH: +.if !defined(DIR) + @echo "DIR undefined in installCRUNCH" && exit 1 +.endif +.if !defined(ZIP) + @echo "ZIP undefined in installCRUNCH" && exit 1 +.endif +.for CRUNCHDIR in ${CRUNCHDIRS} + if ${ZIP} ; then \ + gzip -9 < ${CRUNCHDIR}/crunch > ${DIR}/.crunch ; \ + else \ + ln -f ${CRUNCHDIR}/crunch ${DIR}/.crunch ; \ + fi + chmod 555 ${DIR}/.crunch + for i in `crunchgen -l ${.CURDIR}/${CRUNCHDIR}/crunch.conf` ; do \ + ln -f ${DIR}/.crunch ${DIR}/$$i ; \ + done + rm -f ${DIR}/.crunch +.endfor +.endif + |