RFR: 8343883: Cannot resolve user specified toolchain-path for lld after JDK-8338304 [v2]
Magnus Ihse Bursie
ihse at openjdk.org
Tue Nov 12 16:14:36 UTC 2024
On Tue, 12 Nov 2024 15:38:41 GMT, SendaoYan <syan at openjdk.org> wrote:
>> Hi all,
>> After [JDK-8338304](https://bugs.openjdk.org/browse/JDK-8338304), below configure command will generate failure `error: Could not find required tool for LLD`. The lld linker located in path which config with option `--with-toolchain-path`, but the check `UTIL_REQUIRE_PROGS(LLD, lld)` introduced by [JDK-8338304](https://bugs.openjdk.org/browse/JDK-8338304) was unable to find the lld. This PR add the condition to deal with user specidied `--with-toolchain-path` to find the correct lld fullpath. The change has beeen verified locally, trivial fix, the risk is low.
>>
>>
>> bash configure --with-jobs=128 --with-debug-level=release --enable-unlimited-crypto --with-jvm-variants=server --with-version-opt=f4008968 --with-zlib=system --with-toolchain-type=clang --with-toolchain-path=/home/yansendao/software/acc/x86_64/bin
>
> SendaoYan has updated the pull request incrementally with one additional commit since the last revision:
>
> lookup $TOOLCHAIN_PATH:$PATH
make/autoconf/flags-ldflags.m4 line 77:
> 75: BASIC_LDFLAGS="-fuse-ld=lld -Wl,--exclude-libs,ALL"
> 76: if test "x$CXX_IS_USER_SUPPLIED" = xfalse && test "x$CC_IS_USER_SUPPLIED" = xfalse; then
> 77: UTIL_REQUIRE_PROGS(LLD, lld, $TOOLCHAIN_PATH:$PATH)
Actually, I am not 100% sure that this will work if $TOOLCHAIN_PATH is empty. You need to check that. If not, this should probably be fixed in UTIL_CHECK_PROGS instead to allow for that, since this is a more elegant solution if empty path values are allowed.
-------------
PR Review Comment: https://git.openjdk.org/jdk/pull/21999#discussion_r1838379285
More information about the build-dev
mailing list