diff options
author | Allan McRae <allan@archlinux.org> | 2011-08-18 15:01:29 +0200 |
---|---|---|
committer | Dan McGee <dan@archlinux.org> | 2011-08-18 17:50:17 +0200 |
commit | c28052e45b94437d8c476c648ad6c9f9b8c04f36 (patch) | |
tree | dee28c2c5e0812a50852533e7ba1e00d87c3ad4f /scripts/makepkg.sh.in | |
parent | 2a466c2abc94ce835efac94510659af006bd4330 (diff) | |
download | pacman-c28052e45b94437d8c476c648ad6c9f9b8c04f36.tar.gz pacman-c28052e45b94437d8c476c648ad6c9f9b8c04f36.tar.xz |
makepkg: deal with variable substitution when checking sanity
If any of pkgver, pkgrel or epoch contained a variable substitution,
then it needed to be evaluated before checking its value conformed
to the rules.
[Dan: add quotes around RHS]
Signed-off-by: Allan McRae <allan@archlinux.org>
Signed-off-by: Dan McGee <dan@archlinux.org>
Diffstat (limited to 'scripts/makepkg.sh.in')
-rw-r--r-- | scripts/makepkg.sh.in | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/scripts/makepkg.sh.in b/scripts/makepkg.sh.in index 8555db36..c6b522df 100644 --- a/scripts/makepkg.sh.in +++ b/scripts/makepkg.sh.in @@ -1451,6 +1451,7 @@ check_sanity() { awk -F'=' '/^[[:space:]]*pkgver=/ { $1=""; print $0 }' "$BUILDFILE" | while read i _; do + eval i="$i" if [[ $i =~ [[:space:]:-] ]]; then error "$(gettext "%s is not allowed to contain colons, hyphens or whitespace.")" "pkgver" return 1 @@ -1459,6 +1460,7 @@ check_sanity() { awk -F'=' '/^[[:space:]]*pkgrel=/ { $1=""; print $0 }' "$BUILDFILE" | while read i _; do + eval i="$i" if [[ $i =~ [[:space:]-] ]]; then error "$(gettext "%s is not allowed to contain hyphens or whitespace.")" "pkgrel" return 1 @@ -1467,6 +1469,7 @@ check_sanity() { awk -F'=' '/^[[:space:]]*epoch=/ { $1=""; print $0 }' "$BUILDFILE" | while read i _; do + eval i="$i" if [[ ! $i =~ ^[0-9]*$ ]]; then error "$(gettext "%s must be an integer.")" "epoch" return 1 |