With multiple items in $libdepends this check only worked for the first
one, everything after this returned an error. This was probably an issue
with \s being treated wrong.

Fix-by: Dave Reisner <dreis...@archlinux.org>
Signed-off-by: Florian Pritz <bluew...@xinu.at>
---
This should be applied to both master and maint.

 scripts/makepkg.sh.in |    3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/scripts/makepkg.sh.in b/scripts/makepkg.sh.in
index 9301730..0ca7513 100644
--- a/scripts/makepkg.sh.in
+++ b/scripts/makepkg.sh.in
@@ -1189,7 +1189,8 @@ write_pkginfo() {
                if [[ $it = *.so ]]; then
                        # check if the entry has been found by find_libdepends
                        # if not, it's unneeded; tell the user so he can remove 
it
-                       if [[ ! $libdepends =~ (^|\s)${it}=.* ]]; then
+                       printf -v re '(^|\s)%s=.*' "$it"
+                       if [[ ! $libdepends =~ $re ]]; then
                                error "$(gettext "Cannot find library listed in 
%s: %s")" "'depends'" "$it"
                                return 1
                        fi
-- 
1.7.9.2

Reply via email to