diff --git a/ShellB3/shallbethree.sh b/ShellB3/shallbethree.sh index 0bf303db2f3fc6a40de12db9baa9b2745ed585bc..c6a8925be796097001e24c16fd4f7454d0ca9833 100755 --- a/ShellB3/shallbethree.sh +++ b/ShellB3/shallbethree.sh @@ -10931,6 +10931,15 @@ bundle_elfs() { for elf in $(${PYTHON} sb3bin/thosewhohuntelfs.py --patchelf=${PATCHELF}/patchelf --hunt bin); do _pydling $elf requires done + #relink binaries relatively + for fa in $( find bin -type l | sed 's, ,@@@@,g' ) ; do + export f="$(echo $fa | sed 's,@@@@, ,g')" + echo Checking $f 1>&2 + if [ -L "$f" -a -n "$(readlink "$f" | grep "${BASE}" )" ] ; then + echo Repairing link "$f" from $(readlink "$f") 1>&2 + relative_link "$( readlink "$f" )" "$f" + fi + done # fix RPATHs on ELF binaries, excluding libstdc++ and libgfortran ${PYTHON} sb3bin/thosewhohuntelfs.py . lib $( is64Bit && echo lib64 ) "$@" --patchelf=${PATCHELF}/patchelf \ --exclude='(?:.*?build/.*)|(?:.*?lib/libgfort.*)|(?:.*?lib/libstdc.*)' || oops "could not make binary bundle relocatable"