diff options
-rw-r--r-- | pin-dependencies.PKGBUILDpatch | 24 |
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}" \ |