RFR: 8326583: Remove over-generalized DefineNativeToolchain solution [v4]

Magnus Ihse Bursie ihse at openjdk.org
Sun Mar 3 15:34:54 UTC 2024


On Tue, 27 Feb 2024 11:19:59 GMT, Magnus Ihse Bursie <ihse at openjdk.org> wrote:

>> The idea of setting up general "toolchains" in the native build was good, but it turned out that we really only need a single toolchain, with a single twist: if it should use CC or CPP to link. This is better described by a specific argument to SetupNativeCompilation, LANG := C++ or LANG := C (the default).
>> 
>> There is a single exception to this rule, and that is if we want to compile for the build platform rather than the target platform. (This is only done for adlc) To keep expressing this difference, introduce TARGET_TYPE := BUILD (or TARGET_TYPE := TARGET, the default).
>> 
>> The final odd-case was the hack for building hsdis/bin on mingw. This can be resolved using direct variables to SetupNativeCompilation, instead of first creating a toolchain.
>> 
>> Doing this refactoring will simplify the SetupNativeCompilation code, and make it much clearer if we use the C or C++ linker.
>
> Magnus Ihse Bursie has updated the pull request with a new target base due to a merge or a rebase. The pull request now contains five commits:
> 
>  - Merge branch 'master' into remove-toolchain-define
>  - Rename LANG to LINK_TYPE
>  - Reword "lib" comment to fit in better
>  - Merge branch 'master' into remove-toolchain-define
>  - 8326583: Remove over-generalized DefineNativeToolchain solution

@claudionieder

> One last comment. I just discovered, that if I remove the --enable-ccache from the configure command, then it works also with this commit. Hopefully this helps for fixing the issue.

So what you really saying is that this breaks when compiling capstone hsdis on macOS/aarch64 when you have ccache enabled?

It seems more reasonable that this could be a ccache error than a hsdis-with-capstone error. Can you build any normal JDK targets with ccache?

(Also, why are you using ccache? It is highly unclear if that really adds any performance improvements)

-------------

PR Comment: https://git.openjdk.org/jdk/pull/17986#issuecomment-1975198444


More information about the core-libs-dev mailing list