summaryrefslogtreecommitdiffstats
path: root/release
diff options
context:
space:
mode:
authorjoerg <joerg@FreeBSD.org>1997-04-13 08:46:58 +0000
committerjoerg <joerg@FreeBSD.org>1997-04-13 08:46:58 +0000
commitbad54f644f2f2ba67151c7a3416c3587510bcf1f (patch)
treef2e91d68f1ae63178c69730a941c1dfb0fd777f7 /release
parenteefd272abd4a24b254ee8da3730cf125ad7dc408 (diff)
downloadFreeBSD-src-bad54f644f2f2ba67151c7a3416c3587510bcf1f.zip
FreeBSD-src-bad54f644f2f2ba67151c7a3416c3587510bcf1f.tar.gz
Add more bootstrapping bandaids: copy over some of the host system
dependent utilities to /bootstrap inside the chroot tree, so the hosting and targeted environment are not required the same. By now, mount/umount (due to the Lite2 changes) and cpio (due to lchown) make it there. This should allow building a 3.0-current release from inside a 2.2 vintage system, and visa verse. Isn't lchown also a reason for a shared lib version number bump? PR: Reviewed by: jkh
Diffstat (limited to 'release')
-rw-r--r--release/Makefile29
1 files changed, 24 insertions, 5 deletions
diff --git a/release/Makefile b/release/Makefile
index 3148fec..f560a2e 100644
--- a/release/Makefile
+++ b/release/Makefile
@@ -1,4 +1,4 @@
-# $Id: Makefile,v 1.288 1997/03/15 20:35:06 joerg Exp $
+# $Id: Makefile,v 1.289 1997/04/12 21:55:53 joerg Exp $
#
# How to roll a release:
#
@@ -46,8 +46,8 @@ ZIPNSPLIT= gzip --no-name -9 -c | split -b 240640 -
# Upper size for the mfs in the boot.flp kernel.
# These are adjusted down to the minimum needed by doFS.sh.
BOOTMFSSIZE= 1440
-MFSINODE= 60000
-FIXITINODE= 20000
+MFSINODE= 7000
+FIXITINODE= 2000
BOOTINODE= 100000
# Things which will get you into trouble if you change them
@@ -59,6 +59,21 @@ CD= /R/cdrom
CD_DISC1= ${CD}/disc1
CD_DISC2= ${CD}/disc2
+# ${BOOTSTRAPDIR} is for those utilities that refer to the hosting
+# environment, rather then the target environment. This is specifically
+# intended for kernel-dependant utilities that are used during the build.
+#
+# ${BOOTSTRAPDIR} is actually being used by prepending it to the normal
+# ${PATH}. Thus, it's also available to outside utilities like doFS.sh.
+BOOTSTRAPDIR= /bootstrap
+#
+# The mount subsystem has been changed between 2.2 and 3.0 by the
+# Lite2 import.
+BOOTSTRAPUTILS= /sbin/mount /sbin/umount
+#
+# 3.0 cpio tries to reference lchown(2) which is not available in 2.2
+BOOTSTRAPUTILS+= /usr/bin/cpio
+
.if !defined(WHICH_CRUNCH)
WHICH_CRUNCH= boot fixit
.endif
@@ -86,6 +101,10 @@ rerelease release:
cd ${.CURDIR}/../etc && ${MAKE} distrib-dirs DESTDIR=${CHROOTDIR}
cd ${.CURDIR}/../etc && ${MAKE} distribution DESTDIR=${CHROOTDIR}
cd ${.CURDIR}/.. && ${MAKE} install DESTDIR=${CHROOTDIR} NOMAN=1
+ mkdir ${CHROOTDIR}/${BOOTSTRAPDIR}
+ for i in ${BOOTSTRAPUTILS} ; do \
+ cp -p ${CHROOTDIR}$$i ${CHROOTDIR}/${BOOTSTRAPDIR} ; \
+ done
.if !defined(RELEASETAG)
cd ${CHROOTDIR}/usr && rm -rf src && \
cvs -d ${CVSROOT} co -P src
@@ -130,8 +149,7 @@ rerelease release:
-test -f install.cfg && cp install.cfg ${CHROOTDIR}/usr/src/release
echo "#!/bin/sh" > ${CHROOTDIR}/mk
echo "set -ex" >> ${CHROOTDIR}/mk
- echo "CFLAGS='-O2 -pipe'" >> ${CHROOTDIR}/mk
- echo "export CFLAGS" >> ${CHROOTDIR}/mk
+ echo "export CFLAGS='-O2 -pipe'" >> ${CHROOTDIR}/mk
echo "export BUILDNAME=${BUILDNAME}" >> ${CHROOTDIR}/mk
.if defined(RELEASETAG)
echo "export RELEASETAG=${RELEASETAG}" >> ${CHROOTDIR}/mk
@@ -141,6 +159,7 @@ rerelease release:
.endif
# Don't remove this, or the build will fall over!
echo "export RELEASEDIR=/R" >> ${CHROOTDIR}/mk
+ echo "export PATH=${BOOTSTRAPDIR}:$${PATH} >> ${CHROOTDIR}/mk
echo "cd /usr/src" >> ${CHROOTDIR}/mk
.if make(release)
# This eases bootstrapping from a more recent hosting environment:
OpenPOWER on IntegriCloud