aboutsummaryrefslogtreecommitdiffstats
path: root/packaging/macosx
diff options
context:
space:
mode:
authorGuy Harris <guy@alum.mit.edu>2015-07-12 20:21:32 -0700
committerGuy Harris <guy@alum.mit.edu>2015-07-13 03:21:54 +0000
commit0571d849dfdf54bc7253daf5d36bab9527892b8a (patch)
treeba64a246820f9bf51896aeb4ca6bfb38bfabf749 /packaging/macosx
parentc6aa2b5b2c687f855d0c0a5a1fa7ea53f4b89415 (diff)
Handle both @rpath/ and absolute paths in Qt framework install names.
When looking for Qt framework dependencies, look for dependencies that begin either with @rpath or with the Qt framework directory. Then, first transform @rpath/ to a path relative to the Qt framework directory, and then strip off everything past the framework directory, to get the absolute path of the framework directory (not of the framework binary - we want to copy the whole framework). In the loop looking for dependencies on things *other* than Qt frameworks, exclude Qt framework references with absolute paths from the dependencies we find; they get processed later. (We already excluded those with @rpath paths.) Change-Id: I1e345a5fb82c758d5c1541693b46cb36d2677fab Reviewed-on: https://code.wireshark.org/review/9614 Reviewed-by: Guy Harris <guy@alum.mit.edu>
Diffstat (limited to 'packaging/macosx')
-rwxr-xr-xpackaging/macosx/osx-app.sh10
1 files changed, 5 insertions, 5 deletions
diff --git a/packaging/macosx/osx-app.sh b/packaging/macosx/osx-app.sh
index 936cf0e07b..00408af52f 100755
--- a/packaging/macosx/osx-app.sh
+++ b/packaging/macosx/osx-app.sh
@@ -468,7 +468,7 @@ while $endl; do
otool -L $lib_dep_search_list 2>/dev/null \
| fgrep compatibility \
| cut -d\( -f1 \
- | egrep -v "$exclude_prefixes" \
+ | egrep -v "$exclude_prefixes|$qt_frameworks_dir" \
| sort \
| uniq \
`"
@@ -483,17 +483,17 @@ while $endl; do
otool -L $lib_dep_search_list 2>/dev/null \
| fgrep compatibility \
| cut -d\( -f1 \
- | egrep '@rpath/Qt[a-zA-Z0-9_]*\.framework/' \
+ | egrep "(@rpath|$qt_frameworks_dir)/Qt[a-zA-Z0-9_]*\.framework/" \
| sort \
| uniq \
`"
for lib in $libs
do
if [ ! -d "$pkglib/$lib" ] ; then
- libfrompath=`echo "$lib" | sed -n "s;@rpath/Qt\([a-zA-Z0-9_]*\)\.framework/.*;$qt_frameworks_dir/Qt\1.framework;p"`
- libbinarypath=`echo "$lib" | sed -n "s;@rpath/Qt\([a-zA-Z0-9_]*\)\.framework/.*;$pkglib/Qt\1.framework/Versions/*/Qt\1;p"`
+ libfrompath=`echo "$lib" | sed -e "s;@rpath/Qt\([a-zA-Z0-9_]*\)\.framework/;$qt_frameworks_dir/Qt\1.framework;" -e "s;$qt_frameworks_dir/Qt\([a-zA-Z0-9_]*\)\.framework/.*;$qt_frameworks_dir/Qt\1.framework;"`
+ libbinarypath=`echo "$lib" | sed "s;@rpath/Qt\([a-zA-Z0-9_]*\)\.framework/.*;$pkglib/Qt\1.framework/Versions/*/Qt\1;p"`
echo "$libfrompath -> $pkglib"
- cp -vnR $libfrompath "$pkglib"
+ cp -nR $libfrompath "$pkglib"
lib_dep_search_list="
$lib_dep_search_list
$libbinarypath"