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. Looks okay, but I also wonder if `jdk.javadoc-gendata` needs to depend on `java.base-launchers` too? I guess it only needs `bin/javadoc`, and that's why it works? Alternatively, maybe we make `jdk.compiler-launchers` depend on `java.base-launchers`? IMO sounds reasonable that component-specific launcher depends on the "base" launcher like this. ------------- Marked as reviewed by shade (Reviewer). PR Review: https://git.openjdk.org/jdk/pull/26113#pullrequestreview-2983266065