svn commit: r264027 - in head: release share/man/man7
Glen Barber
gjb at FreeBSD.org
Tue Apr 1 22:41:28 UTC 2014
Author: gjb
Date: Tue Apr 1 22:41:26 2014
New Revision: 264027
URL: http://svnweb.freebsd.org/changeset/base/264027
Log:
Add a new release build variable, WITH_COMPRESSED_IMAGES.
When set to a non-empty value, the installation medium is
compressed with gzip(1) as part of the 'install' target in
the release/ directory.
With gzip(1) compression, downloadable image are reduced in
size quite significantly. Build test against head at 263927
shows the following:
bootonly.iso: 64% smaller
disc1.iso: 44% smaller
memstick.img: 47% smaller
mini-memstick.img: 65% smaller
dvd1.iso: untested
This option is off by default, I would eventually like to
turn it on by default, and remove the '-k' flag to gzip(1)
so only compressed images are published on FTP.
Requested by: wkoszek
MFC After: 1 week
Sponsored by: The FreeBSD Foundation
Modified:
head/release/Makefile
head/release/release.conf.sample
head/release/release.sh
head/share/man/man7/release.7
Modified: head/release/Makefile
==============================================================================
--- head/release/Makefile Tue Apr 1 22:21:56 2014 (r264026)
+++ head/release/Makefile Tue Apr 1 22:41:26 2014 (r264027)
@@ -21,6 +21,8 @@
# NOSRC: if set, do not distribute source tree
# NODOC: if set, do not generate release documentation
# WITH_DVD: if set, generate dvd1.iso
+# WITH_COMPRESSED_IMAGES: if set, compress installation images with gzip(1)
+# (uncompressed images are not removed)
# TARGET/TARGET_ARCH: architecture of built release
#
@@ -251,6 +253,9 @@ install:
cp -a ftp ${DESTDIR}/
.for I in ${IMAGES}
cp -p ${I} ${DESTDIR}/${OSRELEASE}-${I}
+. if defined(WITH_COMPRESSED_IMAGES) || !empty(WITH_COMPRESSED_IMAGES)
+ gzip -k ${DESTDIR}/${OSRELEASE}-${I}
+. endif
.endfor
cd ${DESTDIR} && sha256 ${OSRELEASE}* > ${DESTDIR}/CHECKSUM.SHA256
cd ${DESTDIR} && md5 ${OSRELEASE}* > ${DESTDIR}/CHECKSUM.MD5
Modified: head/release/release.conf.sample
==============================================================================
--- head/release/release.conf.sample Tue Apr 1 22:21:56 2014 (r264026)
+++ head/release/release.conf.sample Tue Apr 1 22:41:26 2014 (r264027)
@@ -46,6 +46,7 @@ PORTBRANCH="ports/head at rHEAD"
#NODOC=
#NOPORTS=
#WITH_DVD=
+#WITH_COMPRESSED_IMAGES=
## Set when building embedded images.
#EMBEDDEDBUILD=
Modified: head/release/release.sh
==============================================================================
--- head/release/release.sh Tue Apr 1 22:21:56 2014 (r264026)
+++ head/release/release.sh Tue Apr 1 22:41:26 2014 (r264027)
@@ -83,6 +83,7 @@ NOPORTS=
# Set to non-empty value to build dvd1.iso as part of the release.
WITH_DVD=
+WITH_COMPRESSED_IMAGES=
usage() {
echo "Usage: $0 [-c release.conf]"
@@ -128,6 +129,7 @@ if [ -n "${EMBEDDEDBUILD}" ]; then
exit 1
fi
WITH_DVD=
+ WITH_COMPRESSED_IMAGES=
NODOC=yes
fi
@@ -262,4 +264,4 @@ eval chroot ${CHROOTDIR} make -C /usr/sr
eval chroot ${CHROOTDIR} make -C /usr/src/release ${RELEASE_RMAKEFLAGS} \
release
eval chroot ${CHROOTDIR} make -C /usr/src/release ${RELEASE_RMAKEFLAGS} \
- install DESTDIR=/R
+ install DESTDIR=/R WITH_COMPRESSED_IMAGES=${WITH_COMPRESSED_IMAGES}
Modified: head/share/man/man7/release.7
==============================================================================
--- head/share/man/man7/release.7 Tue Apr 1 22:21:56 2014 (r264026)
+++ head/share/man/man7/release.7 Tue Apr 1 22:41:26 2014 (r264027)
@@ -250,6 +250,12 @@ Setting this also sets
Set to a non-empty value to include the
.Cm dvdrom
target.
+.It Va WITH_COMPRESSED_IMAGES
+Set to a non-empty value to compress the release images with
+.Xr gzip 1 .
+The original
+.Pq uncompressed
+images are not removed.
.It Va VCSCMD
The command run to obtain the source trees.
Defaults to
More information about the svn-src-all
mailing list