diff options
-rwxr-xr-x | bin/build-packages | 29 |
1 files changed, 21 insertions, 8 deletions
diff --git a/bin/build-packages b/bin/build-packages index 138d894..dd733eb 100755 --- a/bin/build-packages +++ b/bin/build-packages @@ -576,12 +576,18 @@ while [ "${count}" -ne 0 ] && \ -exec objdump -x '{}' \; 2>/dev/null | \ sed ' /^architecture:.* i386:x86-64, /,/^architecture:.* i386:x86-32, / d - ' | \ - grep -w 'NEEDED' | \ - awk '{print $2}' | \ - sed ' - /\.c32$/d - s,^.*/,, + /NEEDED/ { + s/^\s*\S\+\s\+\(\S\+\)\(\s.*\)\?$/\1/ + /\.c32$/d + s,^.*/,, + t + } + /^Version References:$/,/^$/ { + /^\s*required from/ d + s/^\s*\(0x[0-9a-fA-F]\+\)\s\+0x[0-9a-fA-F]\+\s\+[0-9]\+\s\+\(\S\+\)$/\2=\1/ + t + } + d ' | \ sort -u > \ "${pkgfile}.so.needs" @@ -600,9 +606,16 @@ while [ "${count}" -ne 0 ] && \ -exec objdump -x '{}' \; 2>/dev/null | \ sed ' /^architecture:.* i386:x86-64, /,/^architecture:.* i386:x86-32, / d + /SONAME/ { + s/^\s*\S\+\s\+\(\S\+\)\s.*$/\1/ + t + } + /^Version definitions:$/,/^$/ { + s/^[0-9]\+\s\+0x[0-9a-fA-F]\+\s\+\(0x[0-9a-fA-F]\+\)\s\+\(\S\+\)$/\2=\1/ + t + } + d ' | \ - grep -w 'SONAME' | \ - awk '{print $2}' | \ sort -u >> \ "${pkgfile}.so.provides" find "${package_content_dir:?}/${pkgfile##*/}" -xdev -exec chmod 777 '{}' \; |