diff --git a/ShellB3/shallbethree.sh b/ShellB3/shallbethree.sh index 217d4cd724b1b7a91087de2f91db0372c0ec2c7b..86e1fa968d12be0764eb5be902b5e2f272f3b799 100755 --- a/ShellB3/shallbethree.sh +++ b/ShellB3/shallbethree.sh @@ -12291,6 +12291,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"