1
0
mirror of https://github.com/moparisthebest/pacman synced 2025-01-10 13:28:12 -05:00

makepkg: escape closing bash array paren for awk

The closing parenthesis of bash arrays needs to be escaped in the ending
address of awk expressions in order to play nicely with implementations
of awk other than gawk. This change provides compatibility with gawk,
nawk and mawk.

Signed-off-by: Dave Reisner <d@falconindy.com>
Signed-off-by: Allan McRae <allan@archlinux.org>
Signed-off-by: Dan McGee <dan@archlinux.org>
This commit is contained in:
Dave Reisner 2010-12-26 19:12:55 -05:00 committed by Dan McGee
parent eb93955477
commit bd98b93a6e

View File

@ -1223,7 +1223,7 @@ check_sanity() {
fi fi
local provides_list local provides_list
eval $(awk '/^[[:space:]]*provides=/,/)/' "$BUILDFILE" | sed "s/provides=/provides_list+=/") eval $(awk '/^[[:space:]]*provides=/,/\)/' "$BUILDFILE" | sed "s/provides=/provides_list+=/")
for i in ${provides_list[@]}; do for i in ${provides_list[@]}; do
if [[ $i != ${i//</} || $i != ${i//>/} ]]; then if [[ $i != ${i//</} || $i != ${i//>/} ]]; then
error "$(gettext "Provides array cannot contain comparison (< or >) operators.")" error "$(gettext "Provides array cannot contain comparison (< or >) operators.")"
@ -1232,7 +1232,7 @@ check_sanity() {
done done
local backup_list local backup_list
eval $(awk '/^[[:space:]]*backup=/,/)/' "$BUILDFILE" | sed "s/backup=/backup_list+=/") eval $(awk '/^[[:space:]]*backup=/,/\)/' "$BUILDFILE" | sed "s/backup=/backup_list+=/")
for i in "${backup_list[@]}"; do for i in "${backup_list[@]}"; do
if [[ ${i:0:1} = "/" ]]; then if [[ ${i:0:1} = "/" ]]; then
error "$(gettext "Backup entry should not contain leading slash : %s")" "$i" error "$(gettext "Backup entry should not contain leading slash : %s")" "$i"
@ -1241,7 +1241,7 @@ check_sanity() {
done done
local optdepends_list local optdepends_list
eval $(awk '/^[[:space:]]*optdepends=/,/)/' "$BUILDFILE" | sed "s/optdepends=/optdepends_list+=/") eval $(awk '/^[[:space:]]*optdepends=/,/\)/' "$BUILDFILE" | sed "s/optdepends=/optdepends_list+=/")
for i in "${optdepends_list[@]}"; do for i in "${optdepends_list[@]}"; do
local pkg=${i%%:*} local pkg=${i%%:*}
if [[ ! $pkg =~ ^[[:alnum:]\>\<\=\.\+\_\-]+$ ]]; then if [[ ! $pkg =~ ^[[:alnum:]\>\<\=\.\+\_\-]+$ ]]; then
@ -1264,7 +1264,7 @@ check_sanity() {
local valid_options=1 local valid_options=1
local known kopt options_list local known kopt options_list
eval $(awk '/^[[:space:]]*options=/,/)/' "$BUILDFILE" | sed "s/options=/options_list+=/") eval $(awk '/^[[:space:]]*options=/,/\)/' "$BUILDFILE" | sed "s/options=/options_list+=/")
for i in ${options_list[@]}; do for i in ${options_list[@]}; do
known=0 known=0
# check if option matches a known option or its inverse # check if option matches a known option or its inverse