summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAllan McRae <allan@archlinux.org>2013-10-20 22:49:51 +1000
committerAllan McRae <allan@archlinux.org>2013-10-31 16:20:02 +1000
commitb82a0d83ce3aede3cd82885439996359fa7e7e7b (patch)
treed4a699c65cf68152b3a98dc85ad4ef214a9ae0e1
parent6405ecb25995e7cb4ec8b4603d6cfed9d58bf22a (diff)
makepkg: do not allow badly formatted arch lines
It appears there are a lot of packages with arch=('i686 x86_64') floating around. Quote the arch array when passing as a parameter to detect such things. Signed-off-by: Allan McRae <allan@archlinux.org>
-rw-r--r--scripts/makepkg.sh.in4
1 files changed, 2 insertions, 2 deletions
diff --git a/scripts/makepkg.sh.in b/scripts/makepkg.sh.in
index ccc1ddf4..4cb81730 100644
--- a/scripts/makepkg.sh.in
+++ b/scripts/makepkg.sh.in
@@ -2136,7 +2136,7 @@ check_sanity() {
done || ret=1
if [[ $arch != 'any' ]]; then
- if ! in_array $CARCH ${arch[@]}; then
+ if ! in_array $CARCH "${arch[@]}"; then
if (( ! IGNOREARCH )); then
error "$(gettext "%s is not available for the '%s' architecture.")" "$pkgbase" "$CARCH"
plain "$(gettext "Note that many packages may need a line added to their %s")" "$BUILDSCRIPT"
@@ -2151,7 +2151,7 @@ check_sanity() {
local arch_list=""
eval $(declare -f package_${i} | sed -n 's/\(^[[:space:]]*arch=\)/arch_list=/p')
if [[ ${arch_list[@]} && ${arch_list} != 'any' ]]; then
- if ! in_array $CARCH ${arch_list[@]}; then
+ if ! in_array $CARCH "${arch_list[@]}"; then
if (( ! IGNOREARCH )); then
error "$(gettext "%s is not available for the '%s' architecture.")" "$i" "$CARCH"
ret=1