On Wed, 19 Jun 2024 15:15:43 GMT, Magnus Ihse Bursie <i...@openjdk.org> wrote:

>> This patch contains a set of changes to improve static builds. They will 
>> pave the way for implementing a full static-only java launcher. The changes 
>> here will:
>> 
>> 1) Make sure non-exported symbols are made local in the static libraries. 
>> This means that the risk of symbol conflict is the same for static libraries 
>> as for dynamic libraries (i.e. in practice zero, as long as a consistent 
>> naming scheme is used for exported functions).
>> 
>> 2) Remove the work-arounds to exclude duplicated symbols.
>> 
>> 3) Fix some code in hotspot and the JDK libraries that did not work properly 
>> with a static java launcher.
>> 
>> The latter fixes are copied from or inspired by the work done by 
>> @jianglizhou and her team as part of the Project Leyden [Hermetic 
>> Java](https://github.com/openjdk/leyden/tree/hermetic-java-runtime).
>
> Magnus Ihse Bursie has updated the pull request incrementally with one 
> additional commit since the last revision:
> 
>   Add dummy implementation of os::lookup_function for Windows

I've looked through all JDK and VM changes and left comments in various places. 
All the rest changes in PR look good. Thanks again for extracting these changes 
from the leyden/hermeticJava branch and integrating with mainline!

My other main question is why the `javastatic` linking work is not included in 
the PR together with these runtime changes. 

IIUC from our meetings and mailing list discussions, the initial integration PR 
needs to include the part for statically linking the `javastatic`. That's a 
minimum requirement for testing/verifying the runtime changes when integrating 
into the mainline, which is also the reason why we haven't starting integrating 
any of the runtime changes so far. Has that been changed?

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

PR Review: https://git.openjdk.org/jdk/pull/19478#pullrequestreview-2133328296

Reply via email to