[jdk8u-dev] RFR: 8369226: GHA: Switch to MacOS 15
Andrew John Hughes
andrew at openjdk.org
Tue Jan 13 13:30:17 UTC 2026
On Thu, 8 Jan 2026 01:05:50 GMT, Andrew John Hughes <andrew at openjdk.org> wrote:
> This is a backport of [JDK-8369226](https://bugs.openjdk.org/browse/JDK-8369226) from 11u that upgrades from macos-13 to macos-15-intel, and XCode from 14.3.1 to 16.4, as MacOS 13 runners are now unavailable.
>
> Due to the different structure of the GHA support in 8u, and the absence of aarch64 on MacOS, this is a backport in spirit rather than a 1:1 relationship, with the same values being changed in their different locations in the 8u `submit.yml`.
> You may want #736 and #682 integrated first. This version of clang is quite picky...
Yes, that's why this is just a draft at this initial stage, so as to see what is needed.
> See [openjdk/jdk8u#84](https://github.com/openjdk/jdk8u/pull/84) for a proof of concept as to what is needed to get macosx building in GHA again.
Thanks, but that was the intention of this PR as well. I'm not sure why we need two or why yours is against 8u rather than 8u-dev. The libpng change will be merged back into 8u-dev once promoted.
I intend to move this out of draft once we have a chain of fixes which leads to a working build, if not tests as well. As #740 & #741 are generic changes which can be tested by the Linux build, I will leave this as pre-requisites of this change. For Mac-specific changes like #742 I will make them follow this change as they can only be tested by the Mac build running.
Yes, I looked at these bugs briefly a few days ago along with the fix on the PR you created. While I appreciate the merits of https://github.com/openjdk/jdk8u/commit/bacf30605ae1b8eb21010aa8d96b3a21e73ecccf in getting us further in the build, the final fix does need to be a backport of the JNF removals. As with the addition of `std=gnu++98`, we can't really say it builds on MacOS 15 if it only works because of extra build hacks and a Frankenstein build environment. It's not clear to me that the build created with those JNF modules & headers copied would even work if you ran it on another machine.
I intend to post a backport of the saproc fix shortly and then we will see what further fixes are needed in the desktop code. I think this is more potentially lengthy than risky. The changes are limited to MacOS code (unlike the compiler changes which worry me more and I've tested a lot locally) and that MacOS code will only work on MacOS 11, 12 & 13 at present, with JDK-8317970 in the mix. The JNF changes have been in 11u for a long time and are well tested. I think backporting that is more maintainable long-term than keeping a small selection of older MacOS releases running which will soon become unsupported themselves.
Given Apple's aggressive dropping of older platforms, I think we may even need to consider bringing AArch64 to Mac if we want to keep 8u building on MacOS in years to come.
It looks like I have to move the PRs out of draft to get the `pr/<x>` so I'll do so when it is clear the build has progressed, but we can delay integration until we have a working build.
Subsequent PRs:
* https://github.com/openjdk/jdk8u-dev/pull/742 - to fix continued use of `-std=gnu++98` in the HotSpot C code on BSD & Mac OS only
-------------
PR Comment: https://git.openjdk.org/jdk8u-dev/pull/738#issuecomment-3723609162
PR Comment: https://git.openjdk.org/jdk8u-dev/pull/738#issuecomment-3723611577
PR Comment: https://git.openjdk.org/jdk8u-dev/pull/738#issuecomment-3739392951
PR Comment: https://git.openjdk.org/jdk8u-dev/pull/738#issuecomment-3739986723
PR Comment: https://git.openjdk.org/jdk8u-dev/pull/738#issuecomment-3744317236
PR Comment: https://git.openjdk.org/jdk8u-dev/pull/738#issuecomment-3744342549
More information about the jdk8u-dev
mailing list