summaryrefslogtreecommitdiff
path: root/pin-dependencies.PKGBUILDpatch
diff options
context:
space:
mode:
Diffstat (limited to 'pin-dependencies.PKGBUILDpatch')
-rw-r--r--pin-dependencies.PKGBUILDpatch24
1 files changed, 16 insertions, 8 deletions
diff --git a/pin-dependencies.PKGBUILDpatch b/pin-dependencies.PKGBUILDpatch
index f0e5ee8f0..48c8aef9a 100644
--- a/pin-dependencies.PKGBUILDpatch
+++ b/pin-dependencies.PKGBUILDpatch
@@ -1,13 +1,21 @@
if printf '%s\n' "${arch[@]}" | grep -qvxF any; then
if ! _errors=$(
diff <(
- find "${pkgdir}" -type f -exec objdump -x {} \; 2>/dev/null \
- | sed '
- s/^\s*NEEDED\s\+\(\S\+\)\s*$/\1/
- t
- d
- ' \
- | sort -u \
+ {
+ find "${pkgdir}" -type f -exec objdump -x {} \; 2>/dev/null \
+ | sed '
+ s/^\s*NEEDED\s\+\(\S\+\)\s*$/\1/
+ t
+ d
+ ' \
+ | sort -u
+ for _libdir in "${pkgdir}/usr"/lib*; do
+ [ -d "${_libdir}" ] || continue
+ find "${_libdir}" -type f -printf '%f\n%f\n'
+ done
+ } \
+ | sort \
+ | uniq -u \
| while read -r _lib; do
if ! _pkg=$(
pacman -Qqo "/usr/lib/${_lib}" 2>/dev/null
@@ -50,7 +58,7 @@ if printf '%s\n' "${arch[@]}" | grep -qvxF any; then
| sort -u
)
); then
- printf 'There are discrepancies between the _pinned_dependencies and the linked libraries in %s'"'"'s %s:\n' \
+ printf 'There are discrepancies between the _pinned_dependencies and the linked libraries in %s'"'"'s %s():\n' \
"${pkgbase:-${pkgname}}" \
"${FUNCNAME[1]}"
printf '%s\n' "${_errors}" \