Skip to content

Commit 25e82ed

Browse files
authored
Upgrade Mac runners (#345)
* Upgrade Mac runners macOS 14 runners are being removed now. Upgraded the label to macOS 15. Also added a linker option to try and keep the compat level at macOS 14, let's see if it works. * Check the minimum macOS version of the native binary
1 parent 36defa8 commit 25e82ed

3 files changed

Lines changed: 14 additions & 3 deletions

File tree

‎.github/workflows/aot-test.yml‎

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@ jobs:
1111
matrix:
1212
# Only test on Mac and Ubuntu – these are the fastest platforms.
1313
# Windows and Linux ARM are built later after the PR is merged.
14-
os: [macos-14, ubuntu-22.04]
14+
os: [macos-15, ubuntu-22.04]
1515
steps:
1616
- uses: actions/checkout@v7
1717

@@ -38,6 +38,13 @@ jobs:
3838
# sbt 2 nests build outputs under target/out/<platform>/<scala version>/<project>/
3939
mv target/out/jvm/scala-*/jelly-cli/graalvm-native-image/jelly-cli jelly-cli
4040
41+
# Make sure the binary still runs on macOS 14 (see graalOptions in build.sbt)
42+
if [ "$RUNNER_OS" == "macOS" ]; then
43+
otool -l jelly-cli | grep -A4 LC_BUILD_VERSION
44+
otool -l jelly-cli | grep -A4 LC_BUILD_VERSION | grep -q "minos 14.0" \
45+
|| exit 1
46+
fi
47+
4148
# See if it runs at all
4249
./jelly-cli version || exit 1
4350

‎.github/workflows/publish.yml‎

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@ jobs:
1010
runs-on: ${{ matrix.os }}
1111
strategy:
1212
matrix:
13-
os: [macos-14, windows-2022, ubuntu-22.04, ubuntu-22.04-arm]
13+
os: [macos-15, windows-2022, ubuntu-22.04, ubuntu-22.04-arm]
1414
steps:
1515
- uses: actions/checkout@v7
1616

@@ -81,7 +81,7 @@ jobs:
8181
- name: Rename binaries
8282
run: |
8383
mv jelly-cli-assembly/jelly-cli.jar jelly-cli.jar
84-
mv jelly-cli-macos-14/jelly-cli jelly-cli-mac-arm64
84+
mv jelly-cli-macos-15/jelly-cli jelly-cli-mac-arm64
8585
mv jelly-cli-ubuntu-22.04/jelly-cli jelly-cli-linux-x86_64
8686
mv jelly-cli-ubuntu-22.04-arm/jelly-cli jelly-cli-linux-arm64
8787
mv jelly-cli-windows-2022/jelly-cli.exe jelly-cli-windows-x86_64.exe

‎build.sbt‎

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -48,6 +48,10 @@ lazy val graalOptions = Seq(
4848
// Include XML error messages
4949
// Issue: https://github.com/Jelly-RDF/cli/issues/217
5050
"-H:IncludeResourceBundles=com.sun.org.apache.xerces.internal.impl.msg.XMLMessages",
51+
) ++ (
52+
// Without this, the minimum macOS version is the one of the build machine.
53+
if (scala.util.Properties.isMac) Seq("-H:NativeLinkerOption=-mmacosx-version-min=14.0")
54+
else Seq()
5155
)
5256

5357
lazy val TestSerial = config("test-serial") extend Test

0 commit comments

Comments
 (0)