On Tue, 17 Dec 2024 18:16:55 GMT, Magnus Ihse Bursie <i...@openjdk.org> wrote:

>> All JDK native libraries needs to have a proper `JNI_OnLoad`, set either by 
>> `DEF_STATIC_JNI_OnLoad` or `DEF_JNI_OnLoad`. This is so that in a static 
>> build, the JVM can recognize that the library is already loaded, and does 
>> not try to load a (non-existent) external library.
>> 
>> Our bundled version of freetype is missing such a marker.
>> 
>> This turns out to be a problem just on Windows, since the 
>> `System.loadLibrary("freetype")` code in `FontManagerNativeLibrary` is only 
>> executed on Windows. However, the cost of including this in the bundled 
>> versions on all platforms is very small, and it is a safeguard for any 
>> future changes. In practice, freetype bundling is only enabled on Windows 
>> anyways.
>
> Magnus Ihse Bursie has updated the pull request incrementally with one 
> additional commit since the last revision:
> 
>   Document purpose of java_freetype.c

A bit late but why do we presume that just because this library is bundled that 
it has to be part of the static image?

This static build stuff continues to leave me with a "bad taste in my mouth".

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

PR Comment: https://git.openjdk.org/jdk/pull/22791#issuecomment-2550331028

Reply via email to