On Thu, 3 Jul 2025 10:55:50 GMT, Magnus Ihse Bursie <i...@openjdk.org> wrote:

> A recent run in the Oracle CI produced the following:
> 
> Creating ct.sym classes
> /bin/bash: $WS/build/linux-aarch64-open/jdk/bin/java: No such file or 
> directory
> modules/jdk.compiler/Gendata.gmk:72: recipe for target 
> '$WS/build/linux-aarch64-open/support/symbols/ct.sym' failed
> make[3]: *** [$WS/build/linux-aarch64-open/support/symbols/ct.sym] Error 127
> make[2]: *** [jdk.compiler-gendata] Error 2
> make[2]: *** Waiting for unfinished jobs....
> make/Main.gmk:136: recipe for target 'jdk.compiler-gendata' failed 
> 
> 
> `jdk.compiler/Gendata.gmk` calls `$(BUILD_JAVA_SMALL)`, which is created by 
> java.base-launchers (unless cross-compiling). This dependency is not 
> recorded, and it has just worked due to pure luck since jdk/bin/java is 
> usually produced much earlier in the build process.

I did check jdk.javadoc/Gendata.gmk, and it only relies on the boot JDK. 
`jdk-compiler-launchers` is for creating `javac`, and it has not much to do 
with the current situation. We don't need to rely on having created the `java` 
launcher for that, and it is also the gendata step is performed before building 
launchers, so even if we put a dependency to the java.base-launcher there, 
there would still be a missing dependency for the gendata phase.

(The launchers do need libjli, but I am pretty sure this dependency is already 
covered. They do not need any other launcher, they are all independent.)

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

PR Comment: https://git.openjdk.org/jdk/pull/26113#issuecomment-3032504486

Reply via email to