summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--abuild.in11
1 files changed, 10 insertions, 1 deletions
diff --git a/abuild.in b/abuild.in
index 72f8978..49e2630 100644
--- a/abuild.in
+++ b/abuild.in
@@ -1607,7 +1607,16 @@ srcpkg() {
# return true if arch is supported or noarch
check_arch() {
- list_has $CARCH $arch || [ "$arch" = "noarch" ] || [ "$arch" = "all" ]
+ local ret=1
+ local i
+ for i in $arch; do
+ case $i in
+ all | noarch) ret=0 ;;
+ "$CARCH") ret=0 ;;
+ "!$CARCH") return 1 ;;
+ esac
+ done
+ return $ret
}
# return true if libc is not masked in options