RFR: 8339480: Build static-jdk image with a statically linked launcher [v17]
Magnus Ihse Bursie
ihse at openjdk.org
Tue Nov 26 15:39:55 UTC 2024
On Tue, 19 Nov 2024 20:28:18 GMT, Erik Joelsson <erikj at openjdk.org> wrote:
>> Magnus Ihse Bursie has updated the pull request incrementally with one additional commit since the last revision:
>>
>> Copy debuginfo
>
> make/common/JdkNativeCompilation.gmk line 313:
>
>> 311: # created libraries, and is read by ModuleWrapper.
>> 312: ifneq ($$($1_EXCLUDE_FROM_STATIC_LIBS), true)
>> 313: $$(MODULE)_JDK_LIBS += $$($1_NAME)
>
> This variable is used to track libraries that should be included in static libs. Perhaps the name should include the word "static" to make this clearer? Otherwise it doesn't make sense to exclude libraries like this from this list.
I think it's more the name EXCLUDE_FROM_STATIC_LIBS that is bad. What I am really trying to express here is whether a library is supposed to be used by the Java classes in this module, or if it is provided as a special library for external parties to link with.
Like you said about the windowsaccessbridge stuff above. These too should be flagged as "do not implement necessary native functionality for the java classes in the module".
Maybe call it ONLY_EXPORTED? NOT_INTERNALLY_USED? Or maybe turn the boolean the other way around and call it USED_BY_MODULE, and set it fo `false` for those special cases?
-------------
PR Review Comment: https://git.openjdk.org/jdk/pull/20837#discussion_r1858771219
More information about the core-libs-dev
mailing list