pkgsrc-Changes-HG archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

[pkgsrc/trunk]: pkgsrc/mk/check check-shlibs-macho.awk: fix support for check...



details:   https://anonhg.NetBSD.org/pkgsrc/rev/5311e51fed4a
branches:  trunk
changeset: 381432:5311e51fed4a
user:      dbj <dbj%pkgsrc.org@localhost>
date:      Thu Jun 07 04:58:46 2018 +0000

description:
check-shlibs-macho.awk: fix support for checking modules

Allow the dylib install_name to be just the library basename

diffstat:

 mk/check/check-shlibs-macho.awk |  11 ++++++++++-
 1 files changed, 10 insertions(+), 1 deletions(-)

diffs (28 lines):

diff -r f8dff814e1d6 -r 5311e51fed4a mk/check/check-shlibs-macho.awk
--- a/mk/check/check-shlibs-macho.awk   Thu Jun 07 00:59:07 2018 +0000
+++ b/mk/check/check-shlibs-macho.awk   Thu Jun 07 04:58:46 2018 +0000
@@ -1,4 +1,4 @@
-# $NetBSD: check-shlibs-macho.awk,v 1.5 2018/05/25 10:57:28 jperkin Exp $
+# $NetBSD: check-shlibs-macho.awk,v 1.6 2018/06/07 04:58:46 dbj Exp $
 
 #
 # Read a list of potential Mach-O binaries from stdin.
@@ -70,9 +70,18 @@
 
 function checkshlib(DSO,       needed, found) {
        cmd = "otool -XL " shquote(DSO) " 2>/dev/null"
+       libno = 0
        while ((cmd | getline) > 0) {
                if ($0 !~ /^\t/)
                        continue
+               #
+               # The first lib is the "install_name".  Allow it to
+               # be just the library basename name to support modules.
+               #
+               if (libno++ == 0 &&
+                   $1 == parts[split(DSO, parts, "/")]) {
+                       continue
+               }
                needed[$1] = ""
        }
        close(cmd)



Home | Main Index | Thread Index | Old Index