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