aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorNathan Whitehorn <nwhitehorn@FreeBSD.org>2011-03-27 23:46:12 +0000
committerNathan Whitehorn <nwhitehorn@FreeBSD.org>2011-03-27 23:46:12 +0000
commit46c413fe0655ac76e82a22827291919b9ca6c600 (patch)
tree4d0275bcaa5937d0924237e1a5e98f8fb0571f77
parent6dcef0cf52c436cccca1474a293f50544d8f44f4 (diff)
downloadsrc-46c413fe0655ac76e82a22827291919b9ca6c600.tar.gz
src-46c413fe0655ac76e82a22827291919b9ca6c600.zip
Add infrastructure for generation of boot-only ISO images. These have a
reduced world, though still reasonably complete for fixit purposes.
Notes
Notes: svn path=/head/; revision=220081
-rw-r--r--release/Makefile29
1 files changed, 27 insertions, 2 deletions
diff --git a/release/Makefile b/release/Makefile
index e48120ab89ee..610d57a12537 100644
--- a/release/Makefile
+++ b/release/Makefile
@@ -122,13 +122,38 @@ system: packagesystem
ln -s /tmp/bsdinstall_etc/resolv.conf ${.OBJDIR}/release/etc/resolv.conf
echo sendmail_enable=\"NONE\" > ${.OBJDIR}/release/etc/rc.conf
echo hostid_enable=\"NO\" >> ${.OBJDIR}/release/etc/rc.conf
- touch ${.OBJDIR}/release/etc/fstab
cp ${.CURDIR}/rc.local ${.OBJDIR}/release/etc
touch ${.OBJDIR}/${.TARGET}
+bootonly: packagesystem
+# Install system
+ mkdir ${.OBJDIR}/bootonly
+ cd ${WORLDDIR} && ${IMAKE} installkernel installworld distribution \
+ DESTDIR=${.OBJDIR}/bootonly WITHOUT_AMD=1 WITHOUT_AT=1 \
+ WITHOUT_BIND_DNSSEC=1 WITHOUT_BIND_ETC=1 WITHOUT_BIND_MTREE=1 \
+ WITHOUT_BIND_NAMED=1 WITHOUT_GAMES=1 WITHOUT_GROFF=1 \
+ WITHOUT_INSTALLLIB=1 WITHOUT_LIB32=1 WITHOUT_MAIL=1 \
+ WITHOUT_NCP=1 WITHOUT_TOOLCHAIN=1 WITHOUT_RESCUE=1 WITHOUT_DICT=1
+ -rm ${.OBJDIR}/bootonly/boot/kernel/*.symbols
+# Copy manifest only (no distfiles) to get checksums
+ mkdir ${.OBJDIR}/bootonly/usr/freebsd-dist
+ cp ${.OBJDIR}/MANIFEST ${.OBJDIR}/bootonly/usr/freebsd-dist
+# Copy documentation, if generated
+.if !defined(NODOC)
+ cp ${.OBJDIR}/reldoc/* ${.OBJDIR}/bootonly
+.endif
+# Set up installation environment
+ ln -s /tmp/bsdinstall_etc/resolv.conf ${.OBJDIR}/bootonly/etc/resolv.conf
+ echo sendmail_enable=\"NONE\" > ${.OBJDIR}/bootonly/etc/rc.conf
+ echo hostid_enable=\"NO\" >> ${.OBJDIR}/bootonly/etc/rc.conf
+ cp ${.CURDIR}/rc.local ${.OBJDIR}/bootonly/etc
+
release.iso: system
sh ${.CURDIR}/${TARGET}/mkisoimages.sh -b FreeBSD_Install ${.OBJDIR}/release.iso ${.OBJDIR}/release
+bootonly.iso: bootonly
+ sh ${.CURDIR}/${TARGET}/mkisoimages.sh -b FreeBSD_Install ${.OBJDIR}/bootonly.iso ${.OBJDIR}/bootonly
+
memstick: system
sh ${.CURDIR}/${TARGET}/make-memstick.sh ${.OBJDIR}/release ${.OBJDIR}/memstick
@@ -136,7 +161,7 @@ packagesystem: base.txz kernel.txz ${EXTRA_PACKAGES}
sh ${.CURDIR}/scripts/make-manifest.sh ${.OBJDIR}/*.txz > ${.OBJDIR}/MANIFEST
touch ${.OBJDIR}/${.TARGET}
-cdrom: release.iso
+cdrom: release.iso bootonly.iso
ftp: packagesystem
rm -rf ${.OBJDIR}/ftp
mkdir ${.OBJDIR}/ftp