Skip to content

Commit fc33acb

Browse files
committed
GHA: enable macOS-{14,15}
Make sure to download a custom OpenMP runtime compatible with the Xcode toolchain on macOS 15.
1 parent 6f225f3 commit fc33acb

File tree

1 file changed

+22
-2
lines changed

1 file changed

+22
-2
lines changed

.github/workflows/R-CMD-check.yaml

Lines changed: 22 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@ name: R-CMD-check
1010

1111
concurrency:
1212
group: ${{ github.event.pull_request.number || github.run_id }}
13-
cancel-in-progress: true
13+
cancel-in-progress: false
1414

1515
jobs:
1616
R-CMD-check:
@@ -29,6 +29,8 @@ jobs:
2929
# - {os: macOS-latest, r: 'release'} # test-coverage.yaml uses macOS
3030
# TODO(remotes>2.5.0): Use 24.04[noble?]
3131
- {os: ubuntu-22.04, r: 'release', rspm: "https://packagemanager.rstudio.com/cran/__linux__/jammy/latest"}
32+
- {os: macos-14, r: 'release'}
33+
- {os: macos-15, r: 'release'}
3234
# - {os: ubuntu-22.04, r: 'devel', rspm: "https://packagemanager.rstudio.com/cran/__linux__/jammy/latest", http-user-agent: "R/4.1.0 (ubuntu-22.04) R (4.1.0 x86_64-pc-linux-gnu x86_64 linux-gnu) on GitHub Actions" }
3335
# GLCI covers R-devel; no need to delay contributors in dev due to changes in R-devel in recent days
3436

@@ -60,14 +62,31 @@ jobs:
6062
key: ${{ runner.os }}-${{ hashFiles('.github/R-version') }}-1-${{ hashFiles('.github/depends.Rds') }}
6163
restore-keys: ${{ runner.os }}-${{ hashFiles('.github/R-version') }}-1-
6264

63-
- name: Install system dependencies
65+
- name: Install GNU/Linux dependencies
6466
if: runner.os == 'Linux'
6567
run: |
6668
while read -r cmd
6769
do
6870
eval sudo $cmd
6971
done < <(Rscript -e 'writeLines(remotes::system_requirements("ubuntu", "22.04"))')
7072
73+
- name: Install R Package Build Dependencies on MacOS
74+
if: runner.os == 'macOS'
75+
uses: r-hub/actions/setup-r-sysreqs@v1
76+
with:
77+
type: 'minimal'
78+
79+
- name: Intall and configure OpenMP runtime
80+
if: runner.os == 'macOS'
81+
run: |
82+
if clang --version | grep 'clang version 17'; then
83+
curl -O https://mac.r-project.org/openmp/openmp-19.1.0-darwin20-Release.tar.gz
84+
sudo tar fvvxz openmp-19.1.0-darwin20-Release.tar.gz -C /
85+
echo 'PKG_CFLAGS=-Xclang -fopenmp' >> $GITHUB_ENV
86+
# Not the R-bundled -lomp, but our custom file installed just now
87+
echo 'PKG_LIBS=/usr/local/lib/libomp.dylib' >> $GITHUB_ENV
88+
fi # otherwise R-bundled runtime is fine
89+
7190
- name: Install dependencies
7291
run: |
7392
remotes::install_deps(dependencies = TRUE)
@@ -79,6 +98,7 @@ jobs:
7998
_R_CHECK_CRAN_INCOMING_REMOTE_: false
8099
run: |
81100
options(crayon.enabled = TRUE)
101+
pkgbuild::check_build_tools(debug = TRUE)
82102
rcmdcheck::rcmdcheck(args = c("--no-manual", "--as-cran"), error_on = "warning", check_dir = "check")
83103
shell: Rscript {0}
84104

0 commit comments

Comments
 (0)