Page MenuHomeFreeBSD

D56792.id177159.diff
No OneTemporary

D56792.id177159.diff

diff --git a/release/packages/create-sets.sh b/release/packages/create-sets.sh
--- a/release/packages/create-sets.sh
+++ b/release/packages/create-sets.sh
@@ -35,17 +35,48 @@
# generate-set-ucl.lua.
UCL_VARS="$@"
+# Extract PKG_NAME_PREFIX so we can use it later.
+PKG_NAME_PREFIX=""
+set -- $UCL_VARS
+while [ -n "$1" ]; do case "$1" in
+ PKG_NAME_PREFIX)
+ shift
+ PKG_NAME_PREFIX="$1"
+ break;;
+ *)
+ shift; shift;;
+esac; done
+if [ -z "$PKG_NAME_PREFIX" ]; then
+ printf >&2 '%s: PKG_NAME_PREFIX must be specified\n' "$0"
+ exit 1
+fi
+
# Nothing is explicitly added to set-base, so it wouldn't get built unless
# we list it here.
SETS="base base-dbg base-jail base-jail-dbg"
for pkg in "$repodir"/*.pkg; do
- # If the package name doesn't containing a '-', then it's
- # probably data.pkg or packagesite.pkg, which are not real
- # packages.
- { echo "$pkg" | grep -q '-'; } || continue
+ # If the package name doesn't contain a '-', then it's probably
+ # data.pkg or packagesite.pkg, which are not real packages.
+ { echo "${pkg##*/}" | grep -q '-'; } || continue
+ # When building release, we add a 'pkg' package to the repository,
+ # but this isn't a base package and doesn't have a set. To avoid
+ # this causing an error, skip that package.
+ { echo "${pkg##*/}" | grep -q '^pkg-'; } && continue
+ # Any existing set packages may also have no sets (and even if they
+ # do, they shouldn't be included here).
+ { echo "${pkg##*/}" | grep -q "^${PKG_NAME_PREFIX}-set-"; } && continue
+ # Print a useful error message instead of failing silently if
+ # grep doesn't find any sets here.
+ set +e
_tmp="$(${PKG_CMD} query -F "$pkg" '%At %n %Av' | grep '^set ')"
+ if [ -z "$_tmp" ]; then
+ printf >&2 '%s: package has no sets: %s\n' "$0" "$pkg"
+ exit 1
+ fi
+ set -e
+
set -- $_tmp
pkgname="$2"
sets="$(echo "$3" | tr , ' ')"

File Metadata

Mime Type
text/plain
Expires
Wed, May 27, 7:21 AM (21 h, 15 m)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
32703431
Default Alt Text
D56792.id177159.diff (1 KB)

Event Timeline