diff options
author | gjb <gjb@FreeBSD.org> | 2015-01-11 01:38:32 +0000 |
---|---|---|
committer | gjb <gjb@FreeBSD.org> | 2015-01-11 01:38:32 +0000 |
commit | 11947f9f2cfc44c72828b69b62c16c142234d5b4 (patch) | |
tree | 74ff8cb4aeffaf49a470c6f0a0aa2b60b8a36205 /release/scripts | |
parent | 375caa6c5f87f403192607edced29a94229f1c73 (diff) | |
download | FreeBSD-src-11947f9f2cfc44c72828b69b62c16c142234d5b4.zip FreeBSD-src-11947f9f2cfc44c72828b69b62c16c142234d5b4.tar.gz |
MFC r276765, r276766, r276820, r276822, r276827, r276828:
r276765:
Update pkg-stage.sh to be compatible with pkg-1.4.x.
In 1.3.x and earlier, ABI format is, for example,
freebsd:11:x86:64.
In 1.4.x, ABI format is FreeBSD:11:amd64, and a new
configuration entry, ALTABI, is: freebsd:11:x86:64.
Export PKG_ABI and PKG_ALTABI accordingly, and if
PKG_ALTABI is set, create a symlink within the dvd
PKG_CACHEDIR so both new and old ABI directories
exist.
r276766:
Properly change directories before creating the
PKG_ALTABI -> PKG_ABI symlink.
r276820:
Print informational output when NOPORTS is set,
which would otherwise cause pkg-stage.sh to
silently exit.
r276822:
Ensure /var/run/ld-elf.so.hints exists before building
pkg(8).
r276827:
Ensure the ports directories exist for the list of
packages intended to be included on the DVD, and
remove any nonexistent ports from the final list.
Print the list of missing paths, and ensure that
DVD_PACKAGES is non-zero length (which should never
happen).
r276828:
Switch to x11/gnome3 now that x11/gnome2 no longer
exists in the ports tree.
Sponsored by: The FreeBSD Foundation
Diffstat (limited to 'release/scripts')
-rwxr-xr-x | release/scripts/pkg-stage.sh | 34 |
1 files changed, 31 insertions, 3 deletions
diff --git a/release/scripts/pkg-stage.sh b/release/scripts/pkg-stage.sh index 0b99632..095f996 100755 --- a/release/scripts/pkg-stage.sh +++ b/release/scripts/pkg-stage.sh @@ -11,7 +11,7 @@ export PERMISSIVE="YES" export REPO_AUTOUPDATE="NO" export PKGCMD="/usr/sbin/pkg -d" -DVD_PACKAGES="archivers/unzip +_DVD_PACKAGES="archivers/unzip devel/subversion devel/subversion-static emulators/linux_base-f10 @@ -27,23 +27,51 @@ sysutils/screen www/firefox www/links x11-drivers/xf86-video-vmware -x11/gnome2 +x11/gnome3 x11/kde4 x11/xorg" # If NOPORTS is set for the release, do not attempt to build pkg(8). if [ ! -f /usr/ports/Makefile ]; then + echo "*** /usr/ports is missing! ***" + echo "*** Skipping pkg-stage.sh ***" + echo "*** Unset NOPORTS to fix this ***" exit 0 fi if [ ! -x /usr/local/sbin/pkg ]; then + /etc/rc.d/ldconfig restart /usr/bin/make -C /usr/ports/ports-mgmt/pkg install clean fi +export DVD_DIR="dvd/packages" export PKG_ABI=$(pkg config ABI) -export PKG_REPODIR="dvd/packages/${PKG_ABI}" +export PKG_ALTABI=$(pkg config ALTABI 2>/dev/null) +export PKG_REPODIR="${DVD_DIR}/${PKG_ABI}" /bin/mkdir -p ${PKG_REPODIR} +if [ ! -z "${PKG_ALTABI}" ]; then + (cd ${DVD_DIR} && ln -s ${PKG_ABI} ${PKG_ALTABI}) +fi + +# Ensure the ports listed in _DVD_PACKAGES exist to sanitize the +# final list. +for _P in ${_DVD_PACKAGES}; do + if [ -d "/usr/ports/${_P}" ]; then + DVD_PACKAGES="${DVD_PACKAGES} ${_P}" + else + echo "*** Skipping nonexistent port: ${_P}" + fi +done + +# Make sure the package list is not empty. +if [ -z "${DVD_PACKAGES}" ]; then + echo "*** The package list is empty." + echo "*** Something is very wrong." + # Exit '0' so the rest of the build process continues + # so other issues (if any) can be addressed as well. + exit 0 +fi # Print pkg(8) information to make debugging easier. ${PKGCMD} -vv |