@@ -9,7 +9,7 @@ concurrency:
99jobs :
1010 linux :
1111 name : Linux
12- runs-on : ubuntu-latest
12+ runs-on : ubuntu-24.04${{matrix.ARCH == 'arm' && '-arm' || ''}}
1313 container :
1414 image : ${{matrix.OS}}
1515 env :
2121 matrix :
2222 CC : [ gcc, clang ]
2323 OS : [ 'debian:stable', 'debian:testing' ]
24+ ARCH : [ 'intel', 'arm']
2425 steps :
2526 - name : System dependencies
2627 run : |
3132 localedef -i en_US -f UTF-8 en_US.UTF-8
3233 echo "LANG=en_US.UTF-8" >> $GITHUB_ENV
3334 - name : Checkout
34- uses : actions/checkout@v3
35+ uses : actions/checkout@v4
3536 with :
3637 fetch-depth : 100
3738
5657
5758 macos :
5859 name : MacOS
59- runs-on : macos-latest
60+ strategy :
61+ fail-fast : false
62+ matrix :
63+ OS : [ 'macOS-13', 'macOS-14' ]
64+ runs-on : ${{matrix.OS}}
6065 timeout-minutes : 90
6166 env :
6267 PKG_CONFIG_PATH : /opt/X11/lib/pkgconfig
@@ -65,14 +70,34 @@ jobs:
6570 R_TEXI2DVICMD : emulation
6671
6772 steps :
68- - name : System dependencies
73+ - name : Download CRAN system libraries
6974 run : |
70- brew install gcc gettext gmp isl jpeg libmpc libpng mpfr pcre2 pkg-config readline xz texinfo wget
71- echo "FC=/usr/local/opt/gcc/bin/gfortran" >> $GITHUB_ENV
75+ echo "ARCH=$(uname -m)" >> $GITHUB_ENV
76+ curl --retry 3 -fsSL https://github.com/r-universe-org/cranlibs/releases/download/2025-01-05/cranlibs-everything.tar.xz -o libs.tar.xz
77+ sudo tar -xf libs.tar.xz -C / opt
78+ rm -f libs.tar.xz
79+
80+ - name : Remove homebrew
81+ run : |
82+ echo "/opt/R/${ARCH}/bin" >> $GITHUB_PATH
83+ echo "LDFLAGS=-L/opt/R/${ARCH}/lib" >> $GITHUB_ENV
84+ echo "CPPFLAGS=-I/opt/R/${ARCH}/include" >> $GITHUB_ENV
85+ echo "PKG_CONFIG_PATH=/opt/R/${ARCH}/lib/pkgconfig:/opt/R/${ARCH}/share/pkgconfig" >> $GITHUB_ENV
7286 echo "/Library/TeX/texbin" >> $GITHUB_PATH
7387 echo "/usr/local/opt/texinfo/bin" >> $GITHUB_PATH
88+ cp -fv $(which wget) "/opt/R/${ARCH}/bin"
89+ brew unlink $(brew list --formula) || true
90+
91+ - name : Install CRAN fortran build
92+ run : |
93+ curl --retry 3 -fsSLO https://github.com/R-macos/gcc-12-branch/releases/download/12.2-darwin-r0.1/gfortran-12.2-universal.pkg
94+ sudo installer -pkg "gfortran-12.2-universal.pkg" -target /
95+ rm -f gfortran-12.2-universal.pkg
96+ echo "/opt/gfortran/bin" >> $GITHUB_PATH
97+ echo "FC=/opt/gfortran/bin/gfortran" >> $GITHUB_ENV
98+
7499 - name : Checkout
75- uses : actions/checkout@v2
100+ uses : actions/checkout@v4
76101 with :
77102 fetch-depth : 100
78103
@@ -81,16 +106,29 @@ jobs:
81106 sed -i.bak 's|$(GIT) svn info|./.github/scripts/svn-info.sh|' Makefile.in
82107 ./.github/scripts/wget-recommended.sh
83108 ./.github/scripts/svn-info.sh
109+
84110 - name : Configure
85- run : CC=clang ./configure --disable-java --without -cairo --without-tcltk --without-x --with-aqua --with-lapack --with-blas --enable-R-shlib SED=/usr/bin/sed
111+ run : CC=clang ./configure --prefix=/opt/R/${ARCH}/r-devel -- disable-java --with -cairo --without-tcltk --without-x --with-aqua $ACCELERATE --enable-R-shlib SED=/usr/bin/sed
86112 env :
87113 PDFLATEX : ${{github.workspace}}/.github/scripts/dummy
114+ ACCELERATE : ${{ matrix.OS != 'macOS-13' && '--with-lapack --with-blas' || '' }}
88115
89116 - name : Build
90117 run : make
91118 env :
92119 PDFLATEX : ${{github.workspace}}/.github/scripts/dummy
93120
121+ - name : Install
122+ run : |
123+ mkdir -p /opt/R/${ARCH}/r-devel
124+ make install DESTDIR="/opt/R/${ARCH}/r-devel"
125+ (cd /opt/R/${ARCH}/r-devel; tar cfJ "/opt/R/r-devel-${ARCH}.tar.xz" .)
126+
127+ - uses : actions/upload-artifact@v4
128+ with :
129+ name : R-devel-${{ matrix.OS == 'macOS-13' && 'x86_64' || 'arm64' }}
130+ path : /opt/R/r-devel-${{ matrix.OS == 'macOS-13' && 'x86_64' || 'arm64' }}.tar.xz
131+
94132 - name : Check
95133 run : make check-all
96134 env :
@@ -121,28 +159,36 @@ jobs:
121159 shell : bash
122160
123161 - name : Checkout
124- uses : actions/checkout@v3
162+ uses : actions/checkout@v4
125163 with :
126164 fetch-depth : 100
127165
128166 - uses : msys2/setup-msys2@v2
129167 with :
130168 msystem : MSYS
131- install : git make perl curl texinfo texinfo-tex rsync unzip diffutils
169+ install : git make perl curl texinfo texinfo-tex rsync zip unzip diffutils
132170
133- - name : " Download rtools43 toolchain"
171+ - name : " Download rtools44 toolchain"
134172 run : |
135- url="https://github.com/r-windows/files /releases/download/5550/rtools43 -toolchain-libs-base-5550 .tar.zst"
173+ url="https://github.com/r-windows/rtools-chocolatey /releases/download/6104/rtools44 -toolchain-libs-base-6104 .tar.zst"
136174 curl -sSL $url | tar x --zstd -C /c/ || true
137- #echo "RTOOLS43_HOME =c:" >> $GITHUB_ENV
175+ #echo "RTOOLS44_HOME =c:" >> $GITHUB_ENV
138176 #echo "R_CUSTOM_TOOLS_SOFT=c:/x86_64-w64-mingw32.static.posix" >> $GITHUB_ENV
139177
140- - name : Install Miktex
178+ - name : Set timezone
141179 shell : powershell
180+ run : tzutil /s "GMT Standard Time"
181+
182+ - uses : r-lib/actions/setup-tinytex@v2
183+ env :
184+ TINYTEX_INSTALLER : TinyTeX
185+
186+ - name : Install additional LaTeX packages
142187 run : |
143- Import-Module .\.github\scripts\installers.ps1
144- SetTimezone
145- InstallMiktex -ErrorAction SilentlyContinue;
188+ tlmgr update --self
189+ tlmgr install texinfo
190+ tlmgr list --only-installed
191+ shell : powershell
146192
147193 - name : Build and Check
148194 run : |
@@ -158,7 +204,7 @@ jobs:
158204 if : matrix.script == 'installer'
159205 shell : powershell
160206
161- - uses : actions/upload-artifact@v3
207+ - uses : actions/upload-artifact@v4
162208 with :
163209 name : installer
164210 path : src/gnuwin32/installer/R-devel-win.exe
0 commit comments