diff options
author | Erich Eckner <git@eckner.net> | 2020-06-04 14:13:33 +0200 |
---|---|---|
committer | Erich Eckner <git@eckner.net> | 2020-06-04 14:13:33 +0200 |
commit | 0f71188c1705df69ea03eb61cd6138205adb3725 (patch) | |
tree | c336b23a7aff9aa14cc927462208e69d29be1b19 | |
parent | f4eaa7c4725923c282d5cc9cd27b145855b44d10 (diff) | |
download | archlinuxewe-0f71188c1705df69ea03eb61cd6138205adb3725.tar.xz |
pin-dependencies.PKGBUILDpatch: do not complain about supposedly-missing library dependencies if the package itself provides them
-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}" \ |