diff options
-rw-r--r-- | scripts/makepkg.sh.in | 12 |
1 files changed, 6 insertions, 6 deletions
diff --git a/scripts/makepkg.sh.in b/scripts/makepkg.sh.in index ac803a10..1fa4819a 100644 --- a/scripts/makepkg.sh.in +++ b/scripts/makepkg.sh.in @@ -1100,14 +1100,14 @@ find_libdepends() { find_libprovides() { local libprovides missing - for p in ${provides[@]}; do + for p in "${provides[@]}"; do missing=0 case "$p" in *.so) - local filename=$(find "$pkgdir" -type f -name $p\*) + IFS=$'\n' read -rd '' -a filename < <(find "$pkgdir" -type f -name $p\*) if [[ $filename ]]; then # packages may provide multiple versions of the same library - for fn in ${filename[@]}; do + for fn in "${filename[@]}"; do # check if we really have a shared object if LC_ALL=C readelf -h "$fn" 2>/dev/null | grep -q '.*Type:.*DYN (Shared object file).*'; then # get the string binaries link to (e.g. libfoo.so.1.2 -> libfoo.so.1) @@ -1195,15 +1195,15 @@ write_pkginfo() { [[ $optdepends ]] && printf "optdepend = %s\n" "${optdepends[@]//+([[:space:]])/ }" [[ $conflicts ]] && printf "conflict = %s\n" "${conflicts[@]}" - provides=($(find_libprovides)) + IFS=$'\n' read -rd '' -a provides < <(find_libprovides) [[ $provides ]] && printf "provides = %s\n" "${provides[@]}" [[ $backup ]] && printf "backup = %s\n" "${backup[@]}" local it - libdepends=$(find_libdepends) - depends+=(${libdepends}) + IFS=$'\n' read -rd '' -a libdepends < <(find_libdepends) + depends+=("${libdepends[@]}") for it in "${depends[@]}"; do if [[ $it = *.so ]]; then |