@@ -433,9 +433,9 @@ if otool -L "${natron_binary}" | grep -F -q "@rpath/libc++"; then
433
433
fi
434
434
fi
435
435
if [ " ${COPY_LIBCXX} " = 1 ]; then
436
- echo " * Will copy lib ++ from ${COPY_LIBCXX_FROM} "
436
+ echo " * Will copy libc ++ from ${COPY_LIBCXX_FROM} "
437
437
else
438
- echo " * Will not copy lib ++"
438
+ echo " * Will not copy libc ++"
439
439
fi
440
440
441
441
if [ -f " ${pkglib} /libc++.1.dylib" ] || [ -f " ${pkglib} /libc++abi.1.dylib" ]; then
@@ -808,21 +808,33 @@ popd
808
808
809
809
# ############################################################################
810
810
# Other binaries
811
- echo " *** Fixing sonames in other binaries and dynamic libraries..."
811
+ echo " *** Fixing sonames in binaries and dynamic libraries..."
812
812
pushd " ${package} /Contents"
813
813
# We also check dynamic libraries, because we've seen issues, e.g. with libavdevice.*.dylib, which is a dependency of ffmpeg and ffprobe
814
- bins=( " ${otherbins[@]/#/ MacOS/ } " )
814
+ bins=( " ${natronbins[@] /#/ MacOS / } " " ${ otherbins[@]/#/ MacOS/ }" )
815
815
while [ ${# bins[@]} -gt 0 ]; do
816
816
more_bins=( )
817
- for bin in " ${bins[@]} " ; do
817
+ for binary in " ${bins[@]} " ; do
818
+ if [ ! -e " ${binary} " ]; then
819
+ continue
820
+ fi
821
+ # Fix Qt libs
822
+ for f in " ${qt_libs[@]} " ; do
823
+ install_name_tool -change " ${qt_frameworks_dir} /${f} .framework/Versions/${QT_VERSION_MAJOR} /${f} " " @executable_path/../Frameworks/${f} .framework/Versions/${QT_VERSION_MAJOR} /${f} " " ${binary} "
824
+ done
825
+ for l in pyside${pypart} .${SBKVER} shiboken${pypart} .${SBKVER} ; do
826
+ dylib=" lib${l} .dylib"
827
+ install_name_tool -change " ${SDK_HOME} /lib/${dylib} " " @executable_path/../Frameworks/${dylib} " " ${binary} "
828
+ done
829
+
818
830
# fix macports libs
819
- MPLIBS0=" $( otool -L " ${bin } " | grep -F " ${SDK_HOME} /lib" | grep -F -v ' :' | sort| uniq | awk ' {print $1}' ) "
831
+ MPLIBS0=" $( otool -L " ${binary } " | grep -F " ${SDK_HOME} /lib" | grep -F -v ' :' | sort| uniq | awk ' {print $1}' ) "
820
832
# also add first-level and second-level dependencies
821
833
MPLIBS1=" $( for i in ${MPLIBS0} ; do echo " $i " ; otool -L " $i " | grep -F " ${SDK_HOME} /lib" | grep -F -v ' :' ; done | sort| uniq | awk ' {print $1}' ) "
822
834
MPLIBS=" $( for i in ${MPLIBS1} ; do echo " $i " ; otool -L " $i " | grep -F " ${SDK_HOME} /lib" | grep -F -v ' :' ; done | sort| uniq | awk ' {print $1}' ) "
823
835
for mplib in ${MPLIBS} ; do
824
836
if [ ! -f " ${mplib} " ]; then
825
- echo " Error: missing ${bin } depend ${mplib} "
837
+ echo " Error: missing ${binary } depend ${mplib} "
826
838
exit 1
827
839
fi
828
840
lib=" $( echo " ${mplib} " | awk -F / ' {print $NF}' ) "
@@ -837,30 +849,30 @@ while [ ${#bins[@]} -gt 0 ]; do
837
849
install_name_tool -id " @executable_path/../Frameworks/${lib} " " ${pkglib} /${lib} "
838
850
more_bins+=( " ${pkglib} /${lib} " )
839
851
fi
840
- install_name_tool -change " ${mplib} " " @executable_path/../Frameworks/${lib} " " ${bin } "
852
+ install_name_tool -change " ${mplib} " " @executable_path/../Frameworks/${lib} " " ${binary } "
841
853
done
842
854
# Fix rpath
843
- if [ ! -x " ${bin } " ]; then
855
+ if [ ! -x " ${binary } " ]; then
844
856
continue
845
857
fi
846
858
if [ " ${LIBGCC} " = " 1" ]; then
847
859
for l in ${gcclibs} ; do
848
860
lib=" lib${l} .dylib"
849
- install_name_tool -change " ${SDK_HOME} /lib/libgcc/${lib} " " @executable_path/../Frameworks/${lib} " " ${bin } " || true
861
+ install_name_tool -change " ${SDK_HOME} /lib/libgcc/${lib} " " @executable_path/../Frameworks/${lib} " " ${binary } " || true
850
862
done
851
863
fi
852
864
if [ " ${COMPILER} " = " clang-omp" ]; then
853
865
for l in ${omplibs} ; do
854
866
lib=" lib${l} .dylib"
855
- install_name_tool -change " ${SDK_HOME} /lib/libomp/${lib} " " @executable_path/../Frameworks/${lib} " " ${bin } " || true
867
+ install_name_tool -change " ${SDK_HOME} /lib/libomp/${lib} " " @executable_path/../Frameworks/${lib} " " ${binary } " || true
856
868
done
857
869
fi
858
870
for f in Python; do
859
- install_name_tool -change " ${SDK_HOME} /Library/Frameworks/${f} .framework/Versions/${PYVER} /${f} " " @executable_path/../Frameworks/${f} .framework/Versions/${PYVER} /${f} " " ${bin } " || true
871
+ install_name_tool -change " ${SDK_HOME} /Library/Frameworks/${f} .framework/Versions/${PYVER} /${f} " " @executable_path/../Frameworks/${f} .framework/Versions/${PYVER} /${f} " " ${binary } " || true
860
872
done
861
873
if [ " ${QT_VERSION_MAJOR} " -ge 5 ]; then
862
- install_name_tool -rpath " ${SDK_HOME} /Library/Frameworks/${PYSHIBOKEN} " " @executable_path/../Frameworks/${PYSHIBOKEN} " " ${bin } " || true
863
- install_name_tool -rpath " ${SDK_HOME} /Library/Frameworks/${PYSIDE} " " @executable_path/../Frameworks/${PYSIDE} " " ${bin } " || true
874
+ install_name_tool -rpath " ${SDK_HOME} /Library/Frameworks/${PYSHIBOKEN} " " @executable_path/../Frameworks/${PYSHIBOKEN} " " ${binary } " || true
875
+ install_name_tool -rpath " ${SDK_HOME} /Library/Frameworks/${PYSIDE} " " @executable_path/../Frameworks/${PYSIDE} " " ${binary } " || true
864
876
fi
865
877
done
866
878
if [ ${# more_bins[@]} -gt 0 ]; then
0 commit comments