aboutsummaryrefslogtreecommitdiff
path: root/release
diff options
context:
space:
mode:
authorPoul-Henning Kamp <phk@FreeBSD.org>1995-02-25 22:08:48 +0000
committerPoul-Henning Kamp <phk@FreeBSD.org>1995-02-25 22:08:48 +0000
commitbd668f6f6ca9911442969e75e1b7f9381802d3b6 (patch)
treefe003f593ee7c9c8678f0d513707702f3ac26cd2 /release
parentfba33612b8e0d737683e1b4745d2f4033956c209 (diff)
downloadsrc-bd668f6f6ca9911442969e75e1b7f9381802d3b6.tar.gz
src-bd668f6f6ca9911442969e75e1b7f9381802d3b6.zip
New and better "make release" rules.
Notes
Notes: svn path=/head/; revision=6718
Diffstat (limited to 'release')
-rw-r--r--release/Makefile631
-rw-r--r--release/alpha/boot_crunch.conf18
-rw-r--r--release/amd64/boot_crunch.conf18
-rw-r--r--release/boot_crunch.conf18
-rw-r--r--release/cpio_crunch.conf37
-rw-r--r--release/i386/boot_crunch.conf18
-rw-r--r--release/pc98/boot_crunch.conf18
7 files changed, 398 insertions, 360 deletions
diff --git a/release/Makefile b/release/Makefile
index 7e54880fcc37..ed607572c03b 100644
--- a/release/Makefile
+++ b/release/Makefile
@@ -1,384 +1,295 @@
-# $Id: Makefile,v 1.106 1995/02/10 06:04:58 phk Exp $
+# $Id: Makefile,v 1.107 1995/02/11 05:35:37 phk Exp $
#
+# How to roll a release:
+#
+# make release CHROOTDIR=<lots of disk> [ RELEASETAG=something ]
+#
+# As far as I know, this will roll everything nicely into the "stage"
+# directory. I still need to write the two rules to move that into
+# the "cdrom" and "ftp" directories.
+# I also need to "make ports" and install those, but I'm not going to do
+# that on a 14.4 line just yet...
-FLOPPY= fd0
-#VNDEV= vn0
-
-
-# Evil floppies are, of course, 1.44MB floppies.
-.if !defined(EVIL_FLOPPY)
-FDLABEL= fd1200
-DDBS= 15k
-DDCOUNT= 80
-.else
-FDLABEL= fd1440
-DDBS= 18k
-DDCOUNT= 80
-.endif
-
-MNT= /mnt
+# Things which without too much trouble can be considered variables
+EXTRADISTRIBUTIONS= secure games manpages proflibs dict info
+CPIO1= etc/services etc/protocols
+CPIO2= scripts/miscfuncs.sh scripts/instdist.sh scripts/netinst.sh \
+ scripts/adduser.sh scripts/bininst.sh scripts/setup.sh
-CPIO1= basename cat chmod cksum cp cu date dd df dmesg echo ed expr hostname
-CPIO1+= kill ln ls mkdir mt mv rcp rm rmdir sh sleep stty sync tar test tip [
-CPIO1+= -sh badsect chown clri disklabel dump dmesg fdisk fsck getopt ifconfig
-CPIO1+= init mknod mount mount_cd9660 mount_msdos mount_nfs ncftp newfs ping pwd
-CPIO1+= reboot restore slattach swapon umount route
-CPIO1+= rdump rrestore halt ft
-CPIO1+= ftp rsh sed telnet rlogin grep
+FDDEVICE= fd0
+FDCYLS= 80
+FDCYLSIZE= 15k
+FDLABEL= fd1200
+MNT= /mnt
-CPIO2= etc/services etc/protocols
+ZIPNSPLIT= gzip --no-name -9 -c | split -b 240640 -
-CPIO3= scripts/miscfuncs.sh scripts/instdist.sh scripts/netinst.sh \
- scripts/adduser.sh scripts/bininst.sh scripts/setup.sh
-CPIO4= /usr/sbin/tzsetup
-CPIO4B= tzsetup
+# Things which will get you into trouble if you change them
+DISTRIBUTIONS= bin ${EXTRADISTRIBUTIONS}
+MTREEFILES= ${.CURDIR}/../etc/mtree
+RD= ${RELEASEDIR}/stage
-# Somewhat on the rough side...
-CLEANFILES+= *.o *.c *.cache *.mk *.lo ${CPIO1} ${CPIO2} ${CPIO4B}
-CLEANFILES+= *.flp *.gz
-CLEANFILES+= boot_flp cpio_flp_1 kernel.* kernel *.core
-CLEANFILES+= ${.CURDIR}/../sys/compile/BOOTFLP/kernel \
- ${.CURDIR}/../sys/compile/GENERIC/kernel
+release:
+.if !defined(CHROOTDIR)
+ @echo "To make a release you must set CHROOTDIR"
+.else
+ -mkdir ${CHROOTDIR}
+ chflags -R noschg ${CHROOTDIR}/.
+ rm -rf ${CHROOTDIR}/*
+ cd ${.CURDIR}/.. ; ${MAKE} install DESTDIR=${CHROOTDIR}
+ cd ${.CURDIR}/../etc ; ${MAKE} distribution DESTDIR=${CHROOTDIR}
+ echo "#!/bin/sh" > ${CHROOTDIR}/mk
+ echo "set -ex" >> ${CHROOTDIR}/mk
+ echo "cd /usr/src" >> ${CHROOTDIR}/mk
+ echo "make world" >> ${CHROOTDIR}/mk
+ echo "cd release" >> ${CHROOTDIR}/mk
+ echo "make doRELEASE RELEASEDIR=/R" >> ${CHROOTDIR}/mk
+.if !defined(RELEASETAG)
+ cd ${CHROOTDIR}/usr ; cvs co src
+.else
+ cd ${CHROOTDIR}/usr ; cvs export -r ${RELEASETAG} src
+.endif
+ chmod 755 ${CHROOTDIR}/mk
+ chroot ${CHROOTDIR} /mk
+.endif
-MTREE_DIR= ${.CURDIR}/../etc/mtree
+doRELEASE: release.1 release.2 release.3 release.4 release.5 release.6 \
+ release.7 release.8 release.9
+ @echo "Release done"
-ZIPNSPLIT= gzip --no-name -9 -c | split -b 240640 -
+clean:
+ rm -rf cpio_crunch boot_crunch release.[1-9]
-LATIN1LINKS = \
- da_DK de_AT de_CH de_DE en_AU en_CA en_GB en_US es_ES fi_FI \
- fr_BE fr_CA fr_CH fr_FR is_IS it_CH it_IT nl_BE nl_NL no_NO \
- pt_PT sv_SE
+ckRELEASEDIR:
+.if !defined(RELEASEDIR)
+ @echo "To make a release RELEASEDIR must be defined" ; @exit 1
+.endif
-hierarchy:
- mtree -deU -f ${MTREE_DIR}/BSD.root.dist -p ${DESTDIR}/
- mtree -deU -f ${MTREE_DIR}/BSD.var.dist -p ${DESTDIR}/var
- mtree -deU -f ${MTREE_DIR}/BSD.usr.dist -p ${DESTDIR}/usr
-.if defined(MAKE_LOCAL)
- mtree -deU -f ${MTREE_DIR}/BSD.local.dist -p ${DESTDIR}/usr/local
-.endif
- cd ${DESTDIR}/usr/share/locale; \
- for l in ${LATIN1LINKS} ; do \
- rm -f $$l.ISO8859-1; \
- ln -s lt_LN.ISO8859-1 $$l.ISO8859-1; \
- chown ${BINOWN}.${BINGRP} $$l.ISO8859-1; \
- chmod 755 $$l.ISO8859-1; \
+# Clean out ${RELEASEDIR} and make the directory structure.
+release.1:
+ @cd ${.CURDIR} ; $(MAKE) ckRELEASEDIR
+ -mkdir ${RELEASEDIR}
+ chflags -R noschg ${RELEASEDIR}/.
+ rm -rf ${RELEASEDIR}/*
+ mkdir ${RD}
+ mkdir ${RD}/bootfd
+ mkdir ${RD}/bootfd/dev
+ mkdir ${RD}/bootfd/mnt
+ mkdir ${RD}/bootfd/stand
+ mkdir ${RD}/cpiofd
+ mkdir ${RD}/cpiofd/stand
+ mkdir ${RD}/floppies
+ mkdir ${RD}/dists
+ mkdir ${RD}/tarballs
+ for i in ${DISTRIBUTIONS} ; do \
+ mkdir ${RD}/dists/$$i ; \
+ mkdir ${RD}/tarballs/$$i ; \
+ mtree -deU -f ${MTREEFILES}/BSD.root.dist \
+ -p ${RD}/dists/$$i > /dev/null ; \
+ mtree -deU -f ${MTREEFILES}/BSD.usr.dist \
+ -p ${RD}/dists/$$i/usr > /dev/null ; \
+ mtree -deU -f ${MTREEFILES}/BSD.var.dist \
+ -p ${RD}/dists/$$i/var > /dev/null ; \
done
- rm -f ${DESTDIR}/sys
- ln -s usr/src/sys ${DESTDIR}/sys
-
-kernel: ${.CURDIR}/../sys/i386/conf/GENERIC
- @if [ ! -f ${.CURDIR}/../sys/compile/GENERIC/kernel ]; then \
- (cd ${.CURDIR}/../sys/i386/conf; config GENERIC); \
- (cd ${.CURDIR}/../sys/compile/GENERIC; \
- ${MAKE} depend; ${MAKE} all; ) \
+ touch release.1
+
+# Install the system into the various distributions.
+release.2:
+ @cd ${.CURDIR} ; $(MAKE) ckRELEASEDIR
+ cd ${.CURDIR}/.. ; make distribute DISTDIR=${RD}/dists
+ touch release.2
+
+# Make and install a couple of kernels we need.
+release.3:
+ @cd ${.CURDIR} ; $(MAKE) ckRELEASEDIR
+ cd ${.CURDIR}/../sys/i386/conf ; \
+ config GENERIC ; \
+ config BOOTFLP
+ cd ${.CURDIR}/../sys/compile/GENERIC ; \
+ make depend ; \
+ make kernel ; \
+ install -c kernel ${RD}/dists/bin/kernel.GENERIC
+ ln -f ${RD}/dists/bin/kernel.GENERIC \
+ ${RD}/cpiofd/kernel
+ cd ${.CURDIR}/../sys/compile/BOOTFLP ; \
+ make depend ; \
+ make kernel ; \
+ install -s -c kernel ${RD}/bootfd/kernel
+ touch release.3
+
+# Make and install the two crunched binaries which live on the floppies.
+# You are not supposed to like this :-)
+release.4:
+ @cd ${.CURDIR} ; $(MAKE) ckRELEASEDIR
+ for j in boot cpio ; do \
+ rm -rf $${j}_crunch ; \
+ mkdir $${j}_crunch ; \
+ ( cd $${j}_crunch ; \
+ crunchgen ${.CURDIR}/$${j}_crunch.conf ; \
+ ${MAKE} -f $${j}_crunch.mk objs exe NOCRYPT=yes ) ; \
+ gzip -9 < $${j}_crunch/$${j}_crunch \
+ > ${RD}/$${j}fd/stand/$${j}_crunch ; \
+ rm -rf $${j}_crunch ; \
+ chmod 555 ${RD}/$${j}fd/stand/$${j}_crunch ; \
+ for i in `crunchgen -l ${.CURDIR}/$${j}_crunch.conf` ; do \
+ ln -f ${RD}/$${j}fd/stand/$${j}_crunch \
+ ${RD}/$${j}fd/stand/$$i ; \
+ done ; \
+ done
+ touch release.4
+
+# Fix up the distributions.
+release.5:
+ @cd ${.CURDIR} ; $(MAKE) ckRELEASEDIR
+ if [ -d ${RD}/dists/bin/usr/share/man ] ; then \
+ rm -rf ${RD}/dists/manpages/usr/share/man ;\
+ mv ${RD}/dists/bin/usr/share/man \
+ ${RD}/dists/manpages/usr/share/man ;\
fi
- cp ${.CURDIR}/../sys/compile/GENERIC/kernel kernel
-
-kernel.BOOTFLP: ${.CURDIR}/../sys/i386/conf/BOOTFLP
- @if [ ! -f ${.CURDIR}/../sys/compile/BOOTFLP/kernel ]; then \
- (cd ${.CURDIR}/../sys/i386/conf; config BOOTFLP); \
- (cd ${.CURDIR}/../sys/compile/BOOTFLP; \
- ${MAKE} depend; ${MAKE} all; ) \
+ if [ -d ${RD}/dists/bin/usr/games ] ; then \
+ rm -rf ${RD}/dists/games/usr/games ;\
+ mv ${RD}/dists/bin/usr/games \
+ ${RD}/dists/games/usr/games ;\
+ fi
+ if [ -d ${RD}/dists/bin/usr/share/games ] ; then \
+ rm -rf ${RD}/dists/games/usr/share/games ;\
+ mv ${RD}/dists/bin/usr/share/games \
+ ${RD}/dists/games/usr/share/games ;\
fi
- cp ${.CURDIR}/../sys/compile/BOOTFLP/kernel kernel.BOOTFLP
- strip kernel.BOOTFLP
+ if [ -d ${RD}/dists/bin/var/games ] ; then \
+ rm -rf ${RD}/dists/games/var/games ;\
+ mv ${RD}/dists/bin/var/games \
+ ${RD}/dists/games/var/games ;\
+ fi
+ if [ -d ${RD}/dists/bin/usr/share/dict ] ; then \
+ rm -rf ${RD}/dists/dict/usr/share/dict ;\
+ mv ${RD}/dists/bin/usr/share/dict \
+ ${RD}/dists/dict/usr/share/dict ;\
+ fi
+ for i in airport birthtoken flowers na.phone zipcodes ; do \
+ if [ -f ${RD}/dists/bin/usr/share/misc/$$i ] ; then \
+ mv ${RD}/dists/bin/usr/share/misc/$$i \
+ ${RD}/dists/dict/usr/share/misc ; \
+ fi ; \
+ done
+ for i in ${RD}/dists/bin/usr/lib/*_p.a ; do \
+ if [ -f $$i ] ; then \
+ mv $$i \
+ ${RD}/dists/proflibs/usr/lib ; \
+ fi ; \
+ done
+ -cd ${RD}/dists ; \
+ find ${EXTRADISTRIBUTIONS} -depth -type d -print | xargs rmdir
-boot.flp: kernel.BOOTFLP
- crunchgen ${.CURDIR}/boot_flp.conf
- ${MAKE} -f boot_flp.mk objs exe NOCRYPT=yes
- -umount /dev/${FLOPPY}
- -umount ${MNT}
- disklabel -w -r -B \
- -b ${DESTDIR}/usr/mdec/fdboot -s ${DESTDIR}/usr/mdec/bootfd \
- /dev/r${FLOPPY} ${FDLABEL}
- newfs -c 80 -b 4096 -f 512 -i 9000 -m 0 -t 0 -u 0 \
- -o space -T ${FDLABEL} /dev/r${FLOPPY}
- mount -o async /dev/${FLOPPY} ${MNT}
- mkdir ${MNT}/dev ${MNT}/stand ${MNT}/mnt
- cp kernel.BOOTFLP ${MNT}/kernel
- ( cd ${DESTDIR}/dev ; \
+ touch release.5
+
+# Complete the bootfd
+release.6:
+ @cd ${.CURDIR} ; $(MAKE) ckRELEASEDIR
+ ( cd ${RD}/dists/bin/dev ; \
ls console tty ttyv1 null zero \
sd[0123][a-h] wd[0123][a-h] fd[01] \
- rsd[0123][a-h] rwd[0123][a-h] rfd[01] \
- | cpio -dump ${MNT}/dev \
- )
- gzip -9 -c < boot_flp > ${MNT}/stand/sysinstall
- chmod 755 ${MNT}/stand/sysinstall
- ln ${MNT}/stand/sysinstall ${MNT}/stand/newfs
- ln ${MNT}/stand/sysinstall ${MNT}/stand/gzip
- ln ${MNT}/stand/sysinstall ${MNT}/stand/fsck
- install -m 400 -c ${.CURDIR}/../COPYRIGHT ${MNT}/COPYRIGHT
- install -m 400 -c ${.CURDIR}/../share/FAQ/diskspace.FAQ \
- ${MNT}/DISKSPACE.FAQ
- install -m 400 -c ${.CURDIR}/../share/FAQ/RELNOTES.FreeBSD \
- ${MNT}/RELNOTES.FreeBSD
- install -m 400 -c ${.CURDIR}/../share/FAQ/TROUBLESHOOTING \
- ${MNT}/TROUBLESHOOTING
- install -m 400 -c ${.CURDIR}/../share/FAQ/README-2.0 ${MNT}/README
- touch ${MNT}/this_is_boot_flp
- sync
+ rsd[0123][a-h] rwd[0123][a-h] rfd[01] | \
+ cpio -dump ${RD}/bootfd/dev )
+ install -c ${.CURDIR}/../COPYRIGHT ${RD}/bootfd
+ cd ${RD}/dists/bin/usr/share/FAQ ; \
+ install -c diskspace.FAQ ${RD}/bootfd/DISKSPACE.FAQ ;\
+ install -c RELNOTES.FreeBSD ${RD}/bootfd ;\
+ install -c TROUBLESHOOTING ${RD}/bootfd ;\
+ install -c README-2.0 ${RD}/bootfd/README
+ touch ${RD}/bootfd/this_is_boot_flp
+.if !defined(VNDEVICE)
+ -umount /dev/${FDDEVICE}
-umount ${MNT}
+ echo y | fdformat /dev/r${FDDEVICE}
+ disklabel -w -r -B \
+ -b ${RD}/dists/bin/usr/mdec/fdboot \
+ -s ${RD}/dists/bin/usr/mdec/bootfd \
+ /dev/r${FDDEVICE} ${FDLABEL}
+ newfs -c 80 -b 4096 -f 512 -i 9000 -m 0 -t 0 -u 0 \
+ -o space -T ${FDLABEL} /dev/r${FDDEVICE}
+ mount -o async /dev/${FDDEVICE} ${MNT}
+ cd ${RD}/bootfd ; find . -print | cpio -dumpv ${MNT}
sync
- fsck /dev/r${FLOPPY}
- dd if=/dev/r${FLOPPY} of=boot.tmp bs=${DDBS} count=${DDCOUNT}
- mv boot.tmp boot.flp
- od -x boot.flp | head -3
- gzip -9 -c < boot.flp > boot.flp.gz
-
-cpio.flp: kernel
- crunchgen ${.CURDIR}/cpio_flp_1.conf
- ${MAKE} -f cpio_flp_1.mk objs exe NOCRYPT=yes
- for i in ${CPIO1} ; do rm -f ./$$i ; ln cpio_flp_1 ./$$i ; done
- ( cd /${DESTDIR} ; ls ${CPIO2} | cpio -H newc -oa ) | cpio -ivd
- ( cd ${.CURDIR} ; ls ${CPIO3} | cpio -H newc -oa ) | cpio -ivd
- chmod 755 ${CPIO3}
- cp ${CPIO4} .
- rm -f OK
- touch OK
- (ls ${CPIO1} ${CPIO2} ${CPIO3} ${CPIO4B} ; \
- echo kernel ; echo OK ) | \
- cpio -H newc -oa | gzip -9 -c | \
- dd conv=osync > cpio.flp
- rm -f OK
- gzip -1 -c < cpio.flp > cpio.flp.gz
-
-floppies: boot.flp cpio.flp
- mkdir -p ${RELEASEDIR}/floppies
- cp boot.flp boot.flp.gz cpio.flp cpio.flp.gz \
- ${RELEASEDIR}/floppies
-
-release20:
-.if !defined(RELEASEDIR)
- @echo "Do NOT invoke this target without a RELEASEDIR defined."
- @echo "It will otherwise blow away your root directory!"
- @exit 1
+ umount ${MNT}
+ fsck /dev/r${FDDEVICE}
+ dd if=/dev/r${FDDEVICE} of=${RD}/floppies/boot.tmp \
+ bs=${FDCYLSIZE} count=${FDCYLS}
+ mv ${RD}/floppies/boot.tmp ${RD}/floppies/boot.flp
+ gzip -9 -c < ${RD}/floppies/boot.flp > ${RD}/floppies/boot.flp.gz
.endif
- @echo "Did you remember to increment the release number?"
- ( cd ${.CURDIR} ; ${MAKE} clean)
- -mkdir ${RELEASEDIR}
- chflags -R noschg ${RELEASEDIR}/.
- rm -rf ${RELEASEDIR}/*
- mkdir -p ${RELEASEDIR}/tarballs
- ( cd ${.CURDIR}/.. ; \
- ${MAKE} all distribute NOCRYPT=yes)
- ( cd ${.CURDIR}/../etc ; \
- ${MAKE} release-dirs )
- ( cd ${.CURDIR} ; ${MAKE} obj)
- ( cd ${.CURDIR} ; \
- ${MAKE} kernel DESTDIR=${RELEASEDIR}/filesys )
- install ${COPY} -m 644 ${.CURDIR}/../sys/compile/GENERIC/kernel \
- ${RELEASEDIR}/filesys/kernel
- ( cd ${.CURDIR} ; \
- ${MAKE} hierarchy DESTDIR=${RELEASEDIR}/filesys )
- ( cd ${.CURDIR}/../etc ; \
- ${MAKE} distribution DESTDIR=${RELEASEDIR}/filesys \
- NOCRYPT=yes SHARED=copies)
- ( cd ${RELEASEDIR}/filesys; \
- tar cf - . | \
- ${ZIPNSPLIT} ${RELEASEDIR}/tarballs/bindist/bindist.)
- cp ${.CURDIR}/scripts/extract_bin.sh \
- ${RELEASEDIR}/tarballs/bindist/extract.sh
- ( cd ${RELEASEDIR}/tarballs/bindist; ${.CURDIR}/scripts/mkchecksums.sh )
- ( cd ${.CURDIR} ; \
- ${MAKE} floppies )
-
-EXTRADISTRIBUTIONS= secure games manpages proflibs dict info
-DISTRIBUTIONS= bin ${EXTRADISTRIBUTIONS}
-MTREEFILES= ${.CURDIR}/../etc/mtree
-
-jkhdist:
- @echo "--> Making all"
- ( cd ${.CURDIR}/..; ${MAKE} all )
- @echo "--> Making distribute"
- ( cd ${.CURDIR}/..; ${MAKE} distribute )
- @echo "--> Making beforetarballs"
- ( cd ${.CURDIR}; ${MAKE} beforetarballs )
- @echo "--> Making tarballs"
- ( cd ${.CURDIR}; ${MAKE} tarballs )
- @echo "--> Making floppies"
- ( cd ${.CURDIR}; ${MAKE} floppies )
-
-distribute:
- -mkdir ${RELEASEDIR}
- chflags -R noschg ${RELEASEDIR}/.
- rm -rf ${RELEASEDIR}/*
- for i in ${DISTRIBUTIONS} ; \
- do \
- mkdir -p ${RELEASEDIR}/$$i ; \
- mtree -deU -f ${MTREEFILES}/BSD.root.dist -p ${RELEASEDIR}/$$i/ ; \
- mtree -deU -f ${MTREEFILES}/BSD.var.dist -p ${RELEASEDIR}/$$i/var ; \
- mtree -deU -f ${MTREEFILES}/BSD.usr.dist -p ${RELEASEDIR}/$$i/usr ; \
- done
- ( cd ${.CURDIR} ; \
- ${MAKE} kernel DESTDIR=${RELEASEDIR}/filesys )
- install ${COPY} -m 644 ${.CURDIR}/../sys/compile/GENERIC/kernel \
- ${RELEASEDIR}/bin/kernel
-
-beforetarballs:
- rm -rf ${RELEASEDIR}/manpages/usr/share/man
- mv ${RELEASEDIR}/bin/usr/share/man \
- ${RELEASEDIR}/manpages/usr/share/man
- rm -rf ${RELEASEDIR}/games/usr/games
- mv ${RELEASEDIR}/bin/usr/games \
- ${RELEASEDIR}/games/usr/games
- rm -rf ${RELEASEDIR}/games/var/games
- mv ${RELEASEDIR}/bin/var/games \
- ${RELEASEDIR}/games/var/games
- rm -rf ${RELEASEDIR}/games/usr/share/games
- mv ${RELEASEDIR}/bin/usr/share/games \
- ${RELEASEDIR}/games/usr/share/games
- rm -rf ${RELEASEDIR}/dict/usr/share/dict
- mv ${RELEASEDIR}/bin/usr/share/dict \
- ${RELEASEDIR}/dict/usr/share/dict
- mv ${RELEASEDIR}/bin/usr/share/misc/airport \
- ${RELEASEDIR}/bin/usr/share/misc/birthtoken \
- ${RELEASEDIR}/bin/usr/share/misc/flowers \
- ${RELEASEDIR}/bin/usr/share/misc/na.phone \
- ${RELEASEDIR}/bin/usr/share/misc/zipcodes \
- ${RELEASEDIR}/dict/usr/share/misc
- mv ${RELEASEDIR}/bin/usr/lib/*_p.a \
- ${RELEASEDIR}/proflibs/usr/lib
- -cd ${RELEASEDIR} ; \
- find ${EXTRADISTRIBUTIONS} -depth -type d -print | xargs rmdir
- mkdir -p ${RELEASEDIR}/secure/usr
-
- mkdir -p ${RELEASEDIR}/src/usr
- cd ${RELEASEDIR}/src/usr ; cvs export -r ${RELEASETAG} src
-
-tarballs:
- rm -rf ${RELEASEDIR}/tarballs
- mkdir -p ${RELEASEDIR}/tarballs
+ touch release.6
+
+# Complete the cpiofd directory
+# XXX a lot of stuff is missing here...
+release.7:
+ @cd ${.CURDIR} ; $(MAKE) ckRELEASEDIR
+ cd ${RD}/dists/bin ; ls ${CPIO1} | cpio -dump ${RD}/cpiofd
+ cd ${.CURDIR} ; ls ${CPIO2} | cpio -dumpv ${RD}/cpiofd
+ chmod 755 ${RD}/cpiofd/scripts/*
+ cp ${RD}/dists/bin/usr/sbin/tzsetup ${RD}/cpiofd
+ ( cd ${RD}/cpiofd ; \
+ ( rm -f OK ; find . -print ; touch OK ; echo OK ) | \
+ cpio -H newc -oa | gzip -9 -c | dd conv=osync ) \
+ > ${RD}/floppies/cpio.flp
+ gzip -1 -c < ${RD}/floppies/cpio.flp > ${RD}/floppies/cpio.flp.gz
+ touch release.7
+
+# Make binary tarballs
+release.8:
+ @cd ${.CURDIR} ; $(MAKE) ckRELEASEDIR
+ rm -rf ${RD}/tarballs
+ mkdir -p ${RD}/tarballs
@for i in ${DISTRIBUTIONS} ; \
do \
- mkdir -p ${RELEASEDIR}/tarballs/$${i} ; \
- ( cd ${RELEASEDIR}/$${i}; \
- tar cf - . | \
- ${ZIPNSPLIT} ${RELEASEDIR}/tarballs/$$i/$${i}.) ; \
- ( cd ${RELEASEDIR}/tarballs/$${i}; \
- sh -e ${.CURDIR}/scripts/mkchecksums.sh ) ; \
- cp ${.CURDIR}/scripts/extract_$${i}.sh \
- ${RELEASEDIR}/tarballs/$${i}/extract.sh;\
- echo "$${i} distribution is finished."; \
+ if [ -d ${RD}/dists/$${i} ] ; then \
+ cd ${.CURDIR} ; \
+ $(MAKE) doTARBALL SD=${RD}/dists/$${i} \
+ TD=$$i ARG="." ; \
+ ( cd ${RD}/tarballs/$${i}; \
+ sh -e ${.CURDIR}/scripts/mkchecksums.sh ) ; \
+ cp ${.CURDIR}/scripts/extract_$${i}.sh \
+ ${RD}/tarballs/$${i}/extract.sh;\
+ echo "$${i} distribution is finished."; \
+ fi ; \
+ done
+ touch release.8
+
+ .include <bsd.prog.mk>
+
+# Make source tarballs
+release.9:
+ @cd ${.CURDIR} ; $(MAKE) ckRELEASEDIR
+ @cd ${.CURDIR} ; $(MAKE) doTARBALL SD=/usr/src TD=src/base ARG="[A-Z]*"
+ @for i in bin etc games gnu include lib libexec release sbin \
+ secure lkm eBones share sys usrbin usrsbin ; do \
+ if [ -d /usr/src/$$i ] ; then \
+ cd ${.CURDIR} ; \
+ $(MAKE) doTARBALL SD=/usr/src \
+ TD=src/$$i ARG="$$i" ; \
+ fi ; \
done
-
-srcbase-tarball:
- (cd ${RELEASEDIR}/src/usr/src; \
- mkdir -p ${RELEASEDIR}/tarballs/src; \
- tar -cf - [A-Z]* | \
- ${ZIPNSPLIT} ${RELEASEDIR}/tarballs/src/base.)
-
-srcbin-tarball:
- (cd ${RELEASEDIR}/src/usr/src; \
- mkdir -p ${RELEASEDIR}/tarballs/src; \
- tar -cf - bin | \
- ${ZIPNSPLIT} ${RELEASEDIR}/tarballs/src/srcbin.)
-
-srcetc-tarball:
- (cd ${RELEASEDIR}/src/usr/src; \
- mkdir -p ${RELEASEDIR}/tarballs/src; \
- tar -cf - etc | \
- ${ZIPNSPLIT} ${RELEASEDIR}/tarballs/src/etc.)
-
-srcgames-tarball:
- (cd ${RELEASEDIR}/src/usr/src; \
- mkdir -p ${RELEASEDIR}/tarballs/src; \
- tar -cf - games | \
- ${ZIPNSPLIT} ${RELEASEDIR}/tarballs/src/games.)
-
-srcgnu-tarball:
- (cd ${RELEASEDIR}/src/usr/src; \
- mkdir -p ${RELEASEDIR}/tarballs/src; \
- tar -cf - gnu | \
- ${ZIPNSPLIT} ${RELEASEDIR}/tarballs/src/gnu.)
-
-srcinclude-tarball:
- (cd ${RELEASEDIR}/src/usr/src; \
- mkdir -p ${RELEASEDIR}/tarballs/src; \
- tar -cf - include | \
- ${ZIPNSPLIT} ${RELEASEDIR}/tarballs/src/include.)
-
-srclib-tarball:
- (cd ${RELEASEDIR}/src/usr/src; \
- mkdir -p ${RELEASEDIR}/tarballs/src; \
- tar -cf - lib | \
- ${ZIPNSPLIT} ${RELEASEDIR}/tarballs/src/lib.)
-
-srclibexec-tarball:
- (cd ${RELEASEDIR}/src/usr/src; \
- mkdir -p ${RELEASEDIR}/tarballs/src; \
- tar -cf - libexec | \
- ${ZIPNSPLIT} ${RELEASEDIR}/tarballs/src/libexec.)
-
-srcrelease-tarball:
- (cd ${RELEASEDIR}/src/usr/src; \
- mkdir -p ${RELEASEDIR}/tarballs/src; \
- tar -cf - release | \
- ${ZIPNSPLIT} ${RELEASEDIR}/tarballs/src/release.)
-
-srcsbin-tarball:
- (cd ${RELEASEDIR}/src/usr/src; \
- mkdir -p ${RELEASEDIR}/tarballs/src; \
- tar -cf - sbin | \
- ${ZIPNSPLIT} ${RELEASEDIR}/tarballs/src/sbin.)
-
-srcsecure-tarball:
- (cd ${RELEASEDIR}/src/usr/src; \
- mkdir -p ${RELEASEDIR}/tarballs/secure; \
- tar -cf - secure | \
- ${ZIPNSPLIT} ${RELEASEDIR}/tarballs/secure/secrsrc.)
-
-srclkm-tarball:
- (cd ${RELEASEDIR}/src/usr/src; \
- mkdir -p ${RELEASEDIR}/tarballs/src; \
- tar -cf - lkm | \
- ${ZIPNSPLIT} ${RELEASEDIR}/tarballs/src/lkm.)
-
-srcerelease-tarball:
- (cd ${RELEASEDIR}/src/usr/src; \
- mkdir -p ${RELEASEDIR}/tarballs/src; \
- tar -cf - release | \
- ${ZIPNSPLIT} ${RELEASEDIR}/tarballs/src/release.)
-
-srcebones-tarball:
- (cd ${RELEASEDIR}/src/usr/src; \
- mkdir -p ${RELEASEDIR}/tarballs/secure; \
- tar -cf - eBones | \
- ${ZIPNSPLIT} ${RELEASEDIR}/tarballs/secure/ebones.)
-
-srcshare-tarball:
- (cd ${RELEASEDIR}/src/usr/src; \
- mkdir -p ${RELEASEDIR}/tarballs/src; \
- tar -cf - share | \
- ${ZIPNSPLIT} ${RELEASEDIR}/tarballs/src/share.)
-
-srcsys-tarball:
- (cd ${RELEASEDIR}/src/usr/src; \
- mkdir -p ${RELEASEDIR}/tarballs/src; \
- tar -cf - sys lkm | \
- ${ZIPNSPLIT} ${RELEASEDIR}/tarballs/src/sys.)
-
-srcusrbin-tarball:
- (cd ${RELEASEDIR}/src/usr/src; \
- mkdir -p ${RELEASEDIR}/tarballs/src; \
- tar -cf - usr.bin | \
- ${ZIPNSPLIT} ${RELEASEDIR}/tarballs/src/usrbin.)
-
-srcusrsbin-tarball:
- (cd ${RELEASEDIR}/src/usr/src; \
- mkdir -p ${RELEASEDIR}/tarballs/src; \
- tar -cf - usr.sbin | \
- ${ZIPNSPLIT} ${RELEASEDIR}/tarballs/src/usrsbin.)
-
-src: srcbase-tarball srcbin-tarball srcetc-tarball \
- srcgames-tarball srcgnu-tarball srcinclude-tarball \
- srclib-tarball srcsecure-tarball srclibexec-tarball \
- srcsbin-tarball srcshare-tarball srcsys-tarball \
- srcusrbin-tarball srcusrsbin-tarball srcrelease-tarball \
- srcebones-tarball srclkm-tarball srcrelease-tarball
- ( cd ${RELEASEDIR}/tarballs/src; \
- sh -e ${.CURDIR}/scripts/mkchecksums.sh )
+ ( cd ${RD}/tarballs/src; \
+ sh -e ${.CURDIR}/scripts/mkchecksums.sh ) ; \
cp ${.CURDIR}/scripts/extract_src.sh \
- ${RELEASEDIR}/tarballs/src/extract.sh
-
-.include <bsd.prog.mk>
+ ${RD}/tarballs/src/extract.sh;\
+ echo "src distribution is finished."; \
+ #touch release.9
+
+doTARBALL:
+.if !defined(SD)
+ @echo "SD undefined in doTARBALL" ; exit 1
+.endif
+.if !defined(TD)
+ @echo "TB undefined in doTARBALL" ; exit 1
+.endif
+.if !defined(ARG)
+ @echo "ARGundefined in doTARBALL" ; exit 1
+.endif
+ rm -rf ${RD}/tarballs/${TD}
+ mkdir -p ${RD}/tarballs/${TD}
+ ( cd ${SD} ; \
+ echo rolling ${TD} tarball ;\
+ tar --exclude CVS -cf - ${ARG} | \
+ ${ZIPNSPLIT} ${RD}/tarballs/${TD}/`basename ${TD}`. )
diff --git a/release/alpha/boot_crunch.conf b/release/alpha/boot_crunch.conf
new file mode 100644
index 000000000000..fd01a85ea7eb
--- /dev/null
+++ b/release/alpha/boot_crunch.conf
@@ -0,0 +1,18 @@
+# $Id: boot_flp.conf,v 1.4 1994/11/21 04:14:31 phk Exp $
+
+srcdirs /usr/src/bin /usr/src/sbin /usr/src/usr.bin /usr/src/gnu/usr.bin
+srcdirs /usr/src/usr.sbin
+
+# Programs from bin/
+# progs sh mkdir rm mknod chmod expr
+# progs ln test mount umount cat mv sync cp
+# progs cpio gzip sysinstall newfs
+progs sysinstall newfs gzip cpio fsck dialog bad144 fsck
+ln gzip gunzip
+ln gzip zcat
+# ln sh -sh
+# ln sysinstall oinit
+# ln test [
+
+# libs -ll -ledit -ltermcap -lutil -lscrypt
+libs -ldialog -lncurses -lmytinfo
diff --git a/release/amd64/boot_crunch.conf b/release/amd64/boot_crunch.conf
new file mode 100644
index 000000000000..fd01a85ea7eb
--- /dev/null
+++ b/release/amd64/boot_crunch.conf
@@ -0,0 +1,18 @@
+# $Id: boot_flp.conf,v 1.4 1994/11/21 04:14:31 phk Exp $
+
+srcdirs /usr/src/bin /usr/src/sbin /usr/src/usr.bin /usr/src/gnu/usr.bin
+srcdirs /usr/src/usr.sbin
+
+# Programs from bin/
+# progs sh mkdir rm mknod chmod expr
+# progs ln test mount umount cat mv sync cp
+# progs cpio gzip sysinstall newfs
+progs sysinstall newfs gzip cpio fsck dialog bad144 fsck
+ln gzip gunzip
+ln gzip zcat
+# ln sh -sh
+# ln sysinstall oinit
+# ln test [
+
+# libs -ll -ledit -ltermcap -lutil -lscrypt
+libs -ldialog -lncurses -lmytinfo
diff --git a/release/boot_crunch.conf b/release/boot_crunch.conf
new file mode 100644
index 000000000000..fd01a85ea7eb
--- /dev/null
+++ b/release/boot_crunch.conf
@@ -0,0 +1,18 @@
+# $Id: boot_flp.conf,v 1.4 1994/11/21 04:14:31 phk Exp $
+
+srcdirs /usr/src/bin /usr/src/sbin /usr/src/usr.bin /usr/src/gnu/usr.bin
+srcdirs /usr/src/usr.sbin
+
+# Programs from bin/
+# progs sh mkdir rm mknod chmod expr
+# progs ln test mount umount cat mv sync cp
+# progs cpio gzip sysinstall newfs
+progs sysinstall newfs gzip cpio fsck dialog bad144 fsck
+ln gzip gunzip
+ln gzip zcat
+# ln sh -sh
+# ln sysinstall oinit
+# ln test [
+
+# libs -ll -ledit -ltermcap -lutil -lscrypt
+libs -ldialog -lncurses -lmytinfo
diff --git a/release/cpio_crunch.conf b/release/cpio_crunch.conf
new file mode 100644
index 000000000000..114a0f48c55a
--- /dev/null
+++ b/release/cpio_crunch.conf
@@ -0,0 +1,37 @@
+# fixit.conf - put in anything we think we might want on a fixit floppy
+
+# first, we list the source dirs that our programs reside in. These are
+# searched in order listed to find the dir containing each program.
+
+srcdirs /usr/src/gnu/usr.bin
+srcdirs /usr/src/bin /usr/src/sbin /usr/src/sbin/i386 /usr/src/usr.bin
+srcdirs /usr/src/usr.sbin
+
+# second, we list all the programs we want to include in our crunched binary.
+# The order doesn't matter. Any program that needs hard links to it gets an
+# `ln' directive.
+
+# /bin stuff
+
+progs cat chmod cksum cp date dd df echo ed expr grep hostname kill ln ls
+progs mkdir mt mv pwd rcp rm rmdir sh sleep slattach stty sync test
+ln test [
+ln sh -sh # init invokes the shell this way
+
+# /sbin stuff
+
+progs badsect basename chown clri disklabel dmesg dump dmesg fdisk fsck ft
+progs getopt ifconfig init mknod mount mount_cd9660 mount_msdos mount_nfs
+progs newfs ping reboot restore route swapon umount
+ln dump rdump
+ln restore rrestore
+ln reboot halt
+
+# /usr/bin stuff
+
+progs tar tip ftp ncftp rsh sed telnet rlogin
+ln tip cu
+
+# finally, we specify the libraries to link in with our binary
+libs -lcrypt -ltelnet -lutil -ll -ledit
+libs -lgnuregex -lreadline -lcurses -ltermcap -lkvm
diff --git a/release/i386/boot_crunch.conf b/release/i386/boot_crunch.conf
new file mode 100644
index 000000000000..fd01a85ea7eb
--- /dev/null
+++ b/release/i386/boot_crunch.conf
@@ -0,0 +1,18 @@
+# $Id: boot_flp.conf,v 1.4 1994/11/21 04:14:31 phk Exp $
+
+srcdirs /usr/src/bin /usr/src/sbin /usr/src/usr.bin /usr/src/gnu/usr.bin
+srcdirs /usr/src/usr.sbin
+
+# Programs from bin/
+# progs sh mkdir rm mknod chmod expr
+# progs ln test mount umount cat mv sync cp
+# progs cpio gzip sysinstall newfs
+progs sysinstall newfs gzip cpio fsck dialog bad144 fsck
+ln gzip gunzip
+ln gzip zcat
+# ln sh -sh
+# ln sysinstall oinit
+# ln test [
+
+# libs -ll -ledit -ltermcap -lutil -lscrypt
+libs -ldialog -lncurses -lmytinfo
diff --git a/release/pc98/boot_crunch.conf b/release/pc98/boot_crunch.conf
new file mode 100644
index 000000000000..fd01a85ea7eb
--- /dev/null
+++ b/release/pc98/boot_crunch.conf
@@ -0,0 +1,18 @@
+# $Id: boot_flp.conf,v 1.4 1994/11/21 04:14:31 phk Exp $
+
+srcdirs /usr/src/bin /usr/src/sbin /usr/src/usr.bin /usr/src/gnu/usr.bin
+srcdirs /usr/src/usr.sbin
+
+# Programs from bin/
+# progs sh mkdir rm mknod chmod expr
+# progs ln test mount umount cat mv sync cp
+# progs cpio gzip sysinstall newfs
+progs sysinstall newfs gzip cpio fsck dialog bad144 fsck
+ln gzip gunzip
+ln gzip zcat
+# ln sh -sh
+# ln sysinstall oinit
+# ln test [
+
+# libs -ll -ledit -ltermcap -lutil -lscrypt
+libs -ldialog -lncurses -lmytinfo