On Fri, 21 Feb 2025 14:24:22 GMT, Aleksey Shipilev <sh...@openjdk.org> wrote:
>> Noticed this when reviewing >> [JDK-8349399](https://bugs.openjdk.org/browse/JDK-8349399), which had to >> kludgy workaround the hunk introduced by `static-libs-bundles` addition >> ([JDK-8337265](https://bugs.openjdk.org/browse/JDK-8337265)). I am somewhat >> surprised we even have `static-libs-bundles` as additional target in what I >> would consider a generic build-linux job! It looks cleaner to yank >> `static-libs-bundles` into a separate build job. >> >> This effectively reverts parts of the original change, and does a few >> modifications: >> - I see no reason to store the bundles, and continuing to do so would >> effectively overwrite `linux-x64-bundles` when we split the static build >> into another job, breaking tests. Not sure why we had to publish those >> bundles, @dougxc? They are not used in current JDK tests, I think? >> - The matrix definition in `build-linux.xml` unconditionally includes >> `debug` configuration to override flags and suffix, I had to redo this with >> inline variables >> >> Named the new job `linux-x64-static`, since I expect @jianglizhou to slide >> https://github.com/openjdk/jdk/pull/23471 just there by adding another >> `make-target` into that job definition. >> >> I did a partial GHA run already, and I expect full run to complete without >> errors. >> >> Testing: >> - [x] GHA > > Aleksey Shipilev has updated the pull request incrementally with one > additional commit since the last revision: > > Rename -static job to -static-libs The point about difference between `static-libs` and `static` JDK is valid. I renamed the job to `-static-libs`, and would expect #23471 to add another job like `build-linux-x64-static` that would build static JDK. Conceptually, I have major reservations about sneaking in `static-libs-bundle` make target in the generic `build-linux` job script. It might have been OK when it was originally done, but it is IMO a hacky solution, which prompts even more hacks to workaround the first hack! See #23471. We are also "lucky" that no other jobs call into `build-linux` script with `release`, so we are not building `static-libs-bundle` in all cross-compilation, no-pch, Zero and other jobs that only ask for `hotspot`, for example. If we want to build `static-libs-bundle` only for Linux x64 release, the clean way to do this is to explicitly define it as separate job. At some point in the future -- once build system catches up -- we _may_ consider adding `static-libs-bundles` into default make target list in `build-linux` / `build-windows` / etc. scripts. This would also be clean. But before that happens, the non-standard build targets have IMO no business being spliced into the generic scripts. ------------- PR Comment: https://git.openjdk.org/jdk/pull/23715#issuecomment-2674707774