[jdk11u-dev] RFR: 8343786: [11u] GHA: Bump macOS and Xcode versions to macos-13 and XCode 14.3.1
Antonio Vieiro
duke at openjdk.org
Thu Nov 14 19:00:20 UTC 2024
With [JDK-8340671](https://bugs.openjdk.org/browse/JDK-8340671) the GHA runner was bumped from `macos-11` to `macos-12` with minimum impact.
But the `macos-12` runner image [will be fully retired by December 3rd, 2024](https://github.blog/changelog/2024-08-19-notice-of-upcoming-deprecations-and-breaking-changes-in-github-actions-runners/), so it's now convenient to bump to `macos-13`.
Previous attempts to upgrade to GHA runners to `macos-13` required a long list of backports that proved difficult to review and risky to backport. These were related to the deprecation of `sprintf` (that is replaced with `snprintf` in more modern OpenJDK versions), and to passing arguments to functions without a prototype in AWT native libraries.
Instead of risking to do these backports an alternate solution may be to add specific compilation flags that transform these errors to warnings. This is done by adding `-Wno-deprecated-declarations` (to bypass `sprintf` deprecation) and `-Wno-deprecated-non-prototype` to bypass passing arguments to a function without a prototype to specific parts of the makefiles for the `macosx` platform only.
For easier review the PR is separated in three commits in two pushes.
- First push (to ensure a proper build on `macos-12` with new compilation flags)
- The first commit adds `-Wno-deprecated-declaration` to some makefiles (`macosx` only).
- And the second one adds `-Wno-deprecated-non-prototype` to the affected AWT libraries (again `macosx` only).
- A second push (to ensure a proper build on `macos-13`)
- A third commit that bumps GHA runners to `macos-13` and `xcode 14.3.1`
Tier-1 tests seem to be failing randomly on `macos-13` with either a timeout or an ArrayIndexOutOfBoundsException t in `serviceability/sa/ClhsdbFindPC.java`. This is currently under investigation and may be related to [JDK-8260389](https://bugs.openjdk.org/browse/JDK-8260389) or [JDK-8277079](https://bugs.openjdk.org/browse/JDK-8277079).
Solving this `tier-1` test problem may require a second PR.
-------------
Commit messages:
- Use -Wno-deprecated-non-prototype to bypass passing arguments to a function without a prototype is deprecated in awtlib
- Use -Wno-deprecated-declarations to bypass sprintf deprecation
Changes: https://git.openjdk.org/jdk11u-dev/pull/2965/files
Webrev: https://webrevs.openjdk.org/?repo=jdk11u-dev&pr=2965&range=00
Issue: https://bugs.openjdk.org/browse/JDK-8343786
Stats: 16 lines in 6 files changed: 14 ins; 0 del; 2 mod
Patch: https://git.openjdk.org/jdk11u-dev/pull/2965.diff
Fetch: git fetch https://git.openjdk.org/jdk11u-dev.git pull/2965/head:pull/2965
PR: https://git.openjdk.org/jdk11u-dev/pull/2965
More information about the jdk-updates-dev
mailing list