aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorGuy Harris <guy@alum.mit.edu>2016-07-07 17:21:48 -0700
committerGuy Harris <guy@alum.mit.edu>2016-07-08 00:25:26 +0000
commitd83ee1db2172ccc58606a2dc251149bac28ed3dd (patch)
treec4dff43c825f264878bfe6928eec2a6b37ffed81
parent853df469929c0d8971ae3dcdf6df95f2cca3770f (diff)
Handle extcap binaries and the libssh upon which some depend.
Search the extcap binaries for shared libraries they require. Treat libssh specially - for some reason, when built by macosx-setup.sh (which just does a standard cmake build of libssh), libssh's shared library has just libssh.4.dylib, not {installation directory}/libssh.4.dylib, as its shared library ID, so we don't find its binary using otool -L. Bug: 12471 Change-Id: I3e5632d7520f1bbeca1a8faae3a012938ef9dee7 Reviewed-on: https://code.wireshark.org/review/16329 Reviewed-by: Guy Harris <guy@alum.mit.edu>
-rwxr-xr-xpackaging/macosx/osx-app.sh8
1 files changed, 8 insertions, 0 deletions
diff --git a/packaging/macosx/osx-app.sh b/packaging/macosx/osx-app.sh
index 90dc44696c..360c84089e 100755
--- a/packaging/macosx/osx-app.sh
+++ b/packaging/macosx/osx-app.sh
@@ -333,15 +333,23 @@ endl=true
lib_dep_search_list="
$pkglib/*
$pkgbin/*-bin
+ $pkgbin/extcap/*
$pkgexec/Wireshark
"
while $endl; do
echo -e "Looking for dependencies. Round" $a
+ #
+ # libssh, for some reason, has its "install name" set to
+ # just libssh.4.dylib, rather than /usr/local/lib/libssh.4.dylib,
+ # when built by macosx-setup.sh. We have to fix that; that's
+ # what the sed command does.
+ #
libs="`\
otool -L $lib_dep_search_list 2>/dev/null \
| fgrep compatibility \
| cut -d\( -f1 \
+ | sed '1,$s;^ libssh; /usr/local/lib/libssh;' \
| egrep -v "$exclude_prefixes" \
| sort \
| uniq \