svn commit: r218948 - user/nwhitehorn/bsdinstall/release

Nathan Whitehorn nwhitehorn at FreeBSD.org
Tue Feb 22 14:02:00 UTC 2011


Author: nwhitehorn
Date: Tue Feb 22 14:02:00 2011
New Revision: 218948
URL: http://svn.freebsd.org/changeset/base/218948

Log:
  New-style release scripts designed for integration into the main tree.

Added:
  user/nwhitehorn/bsdinstall/release/Makefile
  user/nwhitehorn/bsdinstall/release/README
Deleted:
  user/nwhitehorn/bsdinstall/release/testsystem.sh

Added: user/nwhitehorn/bsdinstall/release/Makefile
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ user/nwhitehorn/bsdinstall/release/Makefile	Tue Feb 22 14:02:00 2011	(r218948)
@@ -0,0 +1,49 @@
+# $FreeBSD: head/release/Makefile 210097 2010-07-15 01:48:30Z nwhitehorn $
+
+WORLDDIR?=	${.CURDIR}/..
+DISTDIR?=	${DESTDIR}/usr/freebsd-dist
+PORTSDIR?=	/usr/ports
+
+TARGET_ARCH?=	${MACHINE_ARCH}
+.if ${TARGET_ARCH} == ${MACHINE_ARCH}
+TARGET?=	${MACHINE}
+.else
+TARGET?=	${TARGET_ARCH}
+.endif
+IMAKE=		${MAKE} TARGET_ARCH=${TARGET_ARCH} TARGET=${TARGET}
+
+packagesystem:
+	-mkdir -p ${DISTDIR}
+	cd ${WORLDDIR} && ${IMAKE} distributeworld distributekernel packageworld packagekernel DISTDIR=${DISTDIR}
+	-mkdir -p ${DISTDIR}/usr
+	ln -fs ${WORLDDIR} ${DISTDIR}/usr/src
+	ln -fs ${PORTSDIR} ${DISTDIR}/usr/ports
+.if !defined(NOPORTS)
+	cd ${DISTDIR} && tar cLvJf ${DISTDIR}/ports.txz --exclude usr/ports/distfiles --exclude usr/ports/packages --exclude 'usr/ports/INDEX*' usr/ports
+.endif
+.if !defined(NOSRC)
+	cd ${DISTDIR} && tar cLvJf ${DISTDIR}/src.txz --exclude .svn --exclude CVS usr/src
+.endif
+
+system:
+# Install system
+	-mkdir ${DISTDIR}/release
+	cd ${WORLDDIR} && ${IMAKE} installkernel installworld distribution DESTDIR=${DISTDIR}/release
+	-rm ${DISTDIR}/release/boot/kernel/*.symbols
+# Copy distfiles
+	mkdir ${DISTDIR}/release/usr/freebsd-dist
+	cp ${DISTDIR}/*.txz ${DISTDIR}/release/usr/freebsd-dist
+# Set up installation environment
+	ln -s /tmp/bsdinstall_etc/resolv.conf ${DISTDIR}/release/etc/resolv.conf
+	echo sendmail_enable=\"NONE\" > ${DISTDIR}/release/etc/rc.conf
+	echo hostid_enable=\"NO\" >> ${DISTDIR}/release/etc/rc.conf
+	touch ${DISTDIR}/release/etc/fstab
+	cp rc.local ${DISTDIR}/release/etc
+
+cdrom:
+	echo kernel_options=\"-C\" > ${DISTDIR}/release/boot/loader.conf
+	sh /usr/src/release/${TARGET}/mkisoimages.sh -b FreeBSD_Install ${DISTDIR}/release.iso ${DISTDIR}/release
+	rm ${DISTDIR}/release/boot/loader.conf
+
+release: packagesystem system cdrom
+	

Added: user/nwhitehorn/bsdinstall/release/README
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ user/nwhitehorn/bsdinstall/release/README	Tue Feb 22 14:02:00 2011	(r218948)
@@ -0,0 +1,16 @@
+This files should be copied to /usr/src/release.
+
+Options
+- NOPORTS: Does not include a ports tree on the install media
+- NOSRC: Does not include documentation
+
+Targets:
+- release: Sets up installation media for a prebuilt world and kernel
+- packagesystem: Builds distributions and tars them
+- system: Sets up a bootable system that runs the installer at boot
+- cdrom: Makes an ISO image from the output of system
+
+Missing features:
+- Release documentation build
+- Memstick images
+- FTP area prep


More information about the svn-src-user mailing list