I belive the floppies work as expected now. (incl the fixit)

This commit is contained in:
Poul-Henning Kamp 1995-03-15 06:14:19 +00:00
parent b337d29402
commit e12c435569
Notes: svn2git 2020-12-20 02:59:44 +00:00
svn path=/head/; revision=7063
2 changed files with 106 additions and 62 deletions

View File

@ -1,4 +1,4 @@
# $Id: Makefile,v 1.113 1995/02/28 20:32:29 phk Exp $
# $Id$
#
# How to roll a release:
#
@ -16,6 +16,10 @@ CPIO1= etc/services etc/protocols
CPIO2= scripts/miscfuncs.sh scripts/instdist.sh scripts/netinst.sh \
scripts/adduser.sh scripts/bininst.sh scripts/setup.sh
FAQS= README README-2.0 MIRROR.SITES
# define FDFORMAT to format floppies
#FDFORMAT= yes
FDDEVICE= fd0
FDCYLS= 80
FDCYLSIZE= 15k
@ -29,6 +33,8 @@ ZIPNSPLIT= gzip --no-name -9 -c | split -b 240640 -
DISTRIBUTIONS= bin ${EXTRADISTRIBUTIONS}
MTREEFILES= ${.CURDIR}/../etc/mtree
RD= ${RELEASEDIR}/stage
FD= ${RELEASEDIR}/ftp
CD= ${RELEASEDIR}/cdrom
release:
.if !defined(CHROOTDIR)
@ -39,7 +45,7 @@ release:
rm -rf ${CHROOTDIR}/*
cd ${.CURDIR}/../etc ; ${MAKE} distrib-dirs DESTDIR=${CHROOTDIR}
cd ${.CURDIR}/../etc ; ${MAKE} distribution DESTDIR=${CHROOTDIR}
cd ${.CURDIR}/.. ; ${MAKE} install DESTDIR=${CHROOTDIR}
cd ${.CURDIR}/.. ; ${MAKE} -k install DESTDIR=${CHROOTDIR}
echo "#!/bin/sh" > ${CHROOTDIR}/mk
echo "set -ex" >> ${CHROOTDIR}/mk
echo "cd /usr/src" >> ${CHROOTDIR}/mk
@ -55,6 +61,7 @@ release:
.else
cd ${CHROOTDIR}/usr ; cvs export -r ${RELEASETAG} src
.endif
#cp ${.CURDIR}/Makefile ${CHROOTDIR}/usr/src/release
chmod 755 ${CHROOTDIR}/mk
chroot ${CHROOTDIR} /mk
@ -74,32 +81,35 @@ release.1:
mkdir ${RD}/bootfd/stand
mkdir ${RD}/cpiofd
mkdir ${RD}/cpiofd/stand
mkdir ${RD}/cpiofd/stand/scripts
mkdir ${RD}/fixitfd
mkdir ${RD}/fixitfd/stand
mkdir ${RD}/fixitfd/bin
mkdir ${RD}/fixitfd/sbin
mkdir ${RD}/fixitfd/mnt
mkdir ${RD}/fixitfd/etc
mkdir ${RD}/floppies
mkdir ${RD}/trees
mkdir ${RD}/trees/bin
mkdir ${RD}/dists
mkdir ${RD}/dists/bin
mkdir ${RD}/tarballs
mkdir ${RD}/tarballs/bin
cd ${.CURDIR}/../etc && make distrib-dirs DESTDIR=${RD}/dists/bin
cd ${.CURDIR}/../etc && make distrib-dirs DESTDIR=${RD}/trees/bin
for i in ${EXTRADISTRIBUTIONS} ; do \
mkdir ${RD}/trees/$$i ; \
mkdir ${RD}/dists/$$i ; \
mkdir ${RD}/tarballs/$$i ; \
mtree -deU -f ${MTREEFILES}/BSD.root.dist \
-p ${RD}/dists/$$i > /dev/null ; \
-p ${RD}/trees/$$i > /dev/null ; \
mtree -deU -f ${MTREEFILES}/BSD.usr.dist \
-p ${RD}/dists/$$i/usr > /dev/null ; \
-p ${RD}/trees/$$i/usr > /dev/null ; \
mtree -deU -f ${MTREEFILES}/BSD.var.dist \
-p ${RD}/dists/$$i/var > /dev/null ; \
-p ${RD}/trees/$$i/var > /dev/null ; \
done
touch release.1
# Install the system into the various distributions.
release.2:
@cd ${.CURDIR} ; $(MAKE) ckRELEASEDIR
cd ${.CURDIR}/.. ; make distribute DISTDIR=${RD}/dists
cd ${.CURDIR}/.. ; make distribute DISTDIR=${RD}/trees
touch release.2
# Make and install a couple of kernels we need.
@ -111,8 +121,8 @@ release.3:
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
install -c kernel ${RD}/trees/bin/kernel.GENERIC
ln -f ${RD}/trees/bin/kernel.GENERIC ${RD}/cpiofd/kernel
cd ${.CURDIR}/../sys/compile/BOOTFLP ; \
make depend ; \
make kernel ; \
@ -130,8 +140,13 @@ release.4:
( 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 ; \
if [ $$j = cpio ] ; then \
cat < $${j}_crunch/$${j}_crunch \
> ${RD}/$${j}fd/stand/$${j}_crunch ; \
else \
gzip -9 < $${j}_crunch/$${j}_crunch \
> ${RD}/$${j}fd/stand/$${j}_crunch ; \
fi ; \
rm -rf $${j}_crunch ; \
chmod 555 ${RD}/$${j}fd/stand/$${j}_crunch ; \
for i in `crunchgen -l ${.CURDIR}/$${j}_crunch.conf` ; do \
@ -144,44 +159,44 @@ 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 ;\
if [ -d ${RD}/trees/bin/usr/share/man ] ; then \
rm -rf ${RD}/trees/manpages/usr/share/man ;\
mv ${RD}/trees/bin/usr/share/man \
${RD}/trees/manpages/usr/share/man ;\
fi
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 ;\
if [ -d ${RD}/trees/bin/usr/games ] ; then \
rm -rf ${RD}/trees/games/usr/games ;\
mv ${RD}/trees/bin/usr/games \
${RD}/trees/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 ;\
if [ -d ${RD}/trees/bin/usr/share/games ] ; then \
rm -rf ${RD}/trees/games/usr/share/games ;\
mv ${RD}/trees/bin/usr/share/games \
${RD}/trees/games/usr/share/games ;\
fi
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 ;\
if [ -d ${RD}/trees/bin/var/games ] ; then \
rm -rf ${RD}/trees/games/var/games ;\
mv ${RD}/trees/bin/var/games \
${RD}/trees/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 ;\
if [ -d ${RD}/trees/bin/usr/share/dict ] ; then \
rm -rf ${RD}/trees/dict/usr/share/dict ;\
mv ${RD}/trees/bin/usr/share/dict \
${RD}/trees/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 ; \
if [ -f ${RD}/trees/bin/usr/share/misc/$$i ] ; then \
mv ${RD}/trees/bin/usr/share/misc/$$i \
${RD}/trees/dict/usr/share/misc ; \
fi ; \
done
for i in ${RD}/dists/bin/usr/lib/*_p.a ; do \
for i in ${RD}/trees/bin/usr/lib/*_p.a ; do \
if [ -f $$i ] ; then \
mv $$i \
${RD}/dists/proflibs/usr/lib ; \
${RD}/trees/proflibs/usr/lib ; \
fi ; \
done
-cd ${RD}/dists ; \
-cd ${RD}/trees ; \
find ${EXTRADISTRIBUTIONS} -depth -type d -print | xargs rmdir
touch release.5
@ -189,13 +204,13 @@ release.5:
# Complete the bootfd
release.6:
@cd ${.CURDIR} ; $(MAKE) ckRELEASEDIR
( cd ${RD}/dists/bin/dev ; \
( cd ${RD}/trees/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 ${RD}/bootfd/dev )
install -c ${.CURDIR}/../COPYRIGHT ${RD}/bootfd
cd ${RD}/dists/bin/usr/share/FAQ ; \
cd ${RD}/trees/bin/usr/share/FAQ ; \
install -c diskspace.FAQ ${RD}/bootfd/DISKSPACE.FAQ ;\
install -c RELNOTES.FreeBSD ${RD}/bootfd ;\
install -c TROUBLESHOOTING ${RD}/bootfd ;\
@ -208,10 +223,10 @@ release.6:
# 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}/trees/bin ; ls ${CPIO1} | cpio -dump ${RD}/cpiofd/stand
cd ${.CURDIR} ; ls ${CPIO2} | cpio -dumpv ${RD}/cpiofd/stand
chmod 755 ${RD}/cpiofd/stand/scripts/*
cp ${RD}/trees/bin/usr/sbin/tzsetup ${RD}/cpiofd/stand
( cd ${RD}/cpiofd ; \
( rm -f OK ; find . -print ; touch OK ; echo OK ) | \
cpio -H newc -oa | gzip -9 -c | dd conv=osync ) \
@ -219,28 +234,28 @@ release.7:
gzip -1 -c < ${RD}/floppies/cpio.flp > ${RD}/floppies/cpio.flp.gz
touch release.7
# Make binary tarballs
# Make binary dists
release.8:
@cd ${.CURDIR} ; $(MAKE) ckRELEASEDIR
rm -rf ${RD}/tarballs
mkdir -p ${RD}/tarballs
rm -rf ${RD}/dists
mkdir -p ${RD}/dists
@for i in ${DISTRIBUTIONS} ; \
do \
if [ -d ${RD}/dists/$${i} ] ; then \
if [ -d ${RD}/trees/$${i} ] ; then \
cd ${.CURDIR} ; \
$(MAKE) doTARBALL SD=${RD}/dists/$${i} \
$(MAKE) doTARBALL SD=${RD}/trees/$${i} \
TD=$$i ARG="." ; \
( cd ${RD}/tarballs/$${i}; \
( cd ${RD}/dists/$${i}; \
sh -e ${.CURDIR}/scripts/mkchecksums.sh ) ; \
cp ${.CURDIR}/scripts/extract_$${i}.sh \
${RD}/tarballs/$${i}/extract.sh;\
${RD}/dists/$${i}/extract.sh;\
echo "$${i} distribution is finished."; \
fi ; \
done
touch release.8
# Make source tarballs
# Make source dists
release.9:
@cd ${.CURDIR} ; $(MAKE) ckRELEASEDIR
@cd ${.CURDIR} ; $(MAKE) doTARBALL SD=/usr/src TD=src/base ARG="[A-Z]*"
@ -252,25 +267,37 @@ release.9:
TD=src/$$i ARG="$$i" ; \
fi ; \
done
( cd ${RD}/tarballs/src; \
( cd ${RD}/dists/src; \
sh -e ${.CURDIR}/scripts/mkchecksums.sh ) ; \
cp ${.CURDIR}/scripts/extract_src.sh \
${RD}/tarballs/src/extract.sh;\
${RD}/dists/src/extract.sh;\
echo "src distribution is finished."; \
touch release.9
# Complete the fixitfd
release.10:
@cd ${.CURDIR} ; $(MAKE) ckRELEASEDIR
( cd ${RD}/dists/bin/dev ; \
( cd ${RD}/trees/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 ${RD}/fixitfd/dev )
ln -f ${RD}/fixitfd/stand/init ${RD}/fixitfd/sbin
ln -f ${RD}/fixitfd/stand/sh ${RD}/fixitfd/bin
cp ${RD}/trees/bin/usr/mdec/fdboot ${RD}/fixitfd/etc/boot1
cp ${RD}/trees/bin/usr/mdec/bootfd ${RD}/fixitfd/etc/boot2
cp ${.CURDIR}/fixit.profile ${RD}/fixitfd/.profile
echo 'echo /etc/rc' > ${RD}/fixitfd/etc/rc
echo 'exit 1' >> ${RD}/fixitfd/etc/rc
touch ${RD}/fixitfd/etc/spwd.db
cd ${.CURDIR} ; ${MAKE} doFLOPPY FLOPPY=fixit
touch release.10
ftp.1:
rm -rf ${FD}
mkdir ${FD}
cd ${RD} && find floppies dists -print | cpio -dumplv ${FD}
cd ${RD}/trees/bin/usr/share/FAQ && ln -f ${FAQS} ${FD}
# Various "subroutine" and other supporting targets.
@ -284,12 +311,12 @@ doTARBALL:
.if !defined(ARG)
@echo "ARG undefined in doTARBALL" ; exit 1
.endif
rm -rf ${RD}/tarballs/${TD}
mkdir -p ${RD}/tarballs/${TD}
rm -rf ${RD}/dists/${TD}
mkdir -p ${RD}/dists/${TD}
( cd ${SD} ; \
echo rolling ${TD} tarball ;\
tar --exclude CVS -cf - ${ARG} | \
${ZIPNSPLIT} ${RD}/tarballs/${TD}/`basename ${TD}`. )
${ZIPNSPLIT} ${RD}/dists/${TD}/`basename ${TD}`. )
doRELEASE: release.1 release.2 release.3 release.4 release.5 release.6 \
release.7 release.8 release.9 release.10
@ -307,10 +334,12 @@ doFLOPPY:
.if !defined(VNDEVICE)
-umount /dev/${FDDEVICE}
-umount ${MNT}
.if !defined(FDFORMAT)
echo y | fdformat /dev/r${FDDEVICE}
.endif
disklabel -w -r -B \
-b ${RD}/dists/bin/usr/mdec/fdboot \
-s ${RD}/dists/bin/usr/mdec/bootfd \
-b ${RD}/trees/bin/usr/mdec/fdboot \
-s ${RD}/trees/bin/usr/mdec/bootfd \
/dev/r${FDDEVICE} ${FDLABEL}
newfs -c 80 -b 4096 -f 512 -i 4096 -m 0 -t 0 -u 0 \
-o space -T ${FDLABEL} /dev/r${FDDEVICE}

15
release/fixit.profile Normal file
View File

@ -0,0 +1,15 @@
:
# $Id$
PATH=/stand
BLOCKSIZE=K
PS1="Fixit# "
echo '+---------------------------------------------------+'
echo '| You are now running from a FreeBSD "fixit" floppy |'
echo '+---------------------------------------------------+'
echo
echo 'Good Luck!'
echo
export PATH BLOCKSIZE PS1