> The clang compiler which we use since jdk21 pollutes the burned-in library > search paths of the generated executables. > e.g. a dump -X64 -H ... /jdk-23.0.1+11-jre/lib/libnio.so > > amongst others produces the following lines > > ***Import File Strings*** > INDEX PATH BASE MEMBER > 0 > /opt/IBM/openxlC/17.1.1/../../../../usr/lpp/xlC/lib:/opt/IBM/openxlC/17.1.1/lib:/opt/IBM/openxlC/17.1.1/bin/../../../../../usr/lpp/xlC/lib:/usr/opt/zlibNX/lib:/opt/freeware/lib/pthread:/opt/freeware/lib:/usr/lib > > The long string is the burned in library search path which will be used after > searching with LIBPATH envvar. > You see there are some compiler paths which customers will not have; also > /opt/freeware is unwanted. > A proper executable should only have the burned in default search path > /usr/lib:lib > > To ensure this we want to call the linker with the flag > -fuse-ld=our-wrapper-script-cleaning-LIBPATH- > and-calling-original-ld-afterwards > This script we want to deliver in make/scripts/aix/ld.sh > just containing > #!/bin/bash > unset LIBPATH > exec /usr/bin/ld "$@" > return $?
Joachim Kern has updated the pull request incrementally with one additional commit since the last revision: following Magnus proposals ------------- Changes: - all: https://git.openjdk.org/jdk/pull/23313/files - new: https://git.openjdk.org/jdk/pull/23313/files/d63cdb8e..b5d402ff Webrevs: - full: https://webrevs.openjdk.org/?repo=jdk&pr=23313&range=01 - incr: https://webrevs.openjdk.org/?repo=jdk&pr=23313&range=00-01 Stats: 11 lines in 3 files changed: 7 ins; 3 del; 1 mod Patch: https://git.openjdk.org/jdk/pull/23313.diff Fetch: git fetch https://git.openjdk.org/jdk.git pull/23313/head:pull/23313 PR: https://git.openjdk.org/jdk/pull/23313