On Tue, 29 Oct 2024 20:43:16 GMT, Magnus Ihse Bursie <i...@openjdk.org> wrote:
>> As a prerequisite for Hermetic Java, we need a statically linked `java` >> launcher. It should behave like the normal, dynamically linked `java` >> launcher, except that all JDK native libraries should be statically, not >> dynamically, linked. >> >> This patch is the first step towards this goal. It will generate a >> `static-jdk` image with a statically linked launcher. This launcher is >> missing several native libs, however, and does therefore not behave like a >> proper dynamic java. One of the reasons for this is that local symbol hiding >> in static libraries are not implemented yet, which causes symbol clashes >> when linking all static libraries together. This will be addressed in an >> upcoming patch. >> >> All changes in the `src` directory are copied from, or inspired by, changes >> made in [the hermetic-java-runtime branch in Project >> Leyden](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: > > Fix bug in filtering out -Wl,--exclude-libs,ALL My (private) criteria here have been to get a fix to the build system that can run "hello world" -- I realize that the initial implementation of a static java launcher is likely to have additional bugs that needs fixing before it can pass a similar set of JTreg tests as the normal launcher (let alone the JCK). So running HelloWorld.class perhaps *technically* passes this barrier, but I think that if not the source code launching works, then it is almost as bad as if not HelloWorld.class works, so I would still consider that an integration blocker for this PR. ------------- PR Comment: https://git.openjdk.org/jdk/pull/20837#issuecomment-2452144818