Skip to content

Commit d62355f

Browse files
committed
Add Windows-arm64 to the matrix
1 parent 9e7df18 commit d62355f

File tree

3 files changed

+35
-18
lines changed

3 files changed

+35
-18
lines changed

.github/scripts/win-check.sh

Lines changed: 13 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -4,14 +4,23 @@ set -e
44
set -x
55

66
# Put pdflatex on the path (needed only for CMD check)
7+
if [ "$( uname -s | grep ARM)" ]; then
8+
export PATH="/c/aarch64-w64-mingw32.static.posix/bin:$PATH:/c/Users/$USER/AppData/Roaming/TinyTeX/bin/windows:$HOME/AppData/Local/Programs/MiKTeX/miktex/bin/x64:/c/progra~1/MiKTeX/miktex/bin/x64:/c/progra~1/MiKTeX 2.9/miktex/bin/x64"
9+
tcltk="https://github.com/r-windows/rtools-chocolatey/releases/download/6536/tcltk-aarch64-6536-6492.zip"
10+
echo "USE_LLVM = 1" >> src/gnuwin32/MkRules.local
11+
clang --version
12+
else
713
export PATH="/c/x86_64-w64-mingw32.static.posix/bin:$PATH:/c/Users/$USER/AppData/Roaming/TinyTeX/bin/windows:$HOME/AppData/Local/Programs/MiKTeX/miktex/bin/x64:/c/progra~1/MiKTeX/miktex/bin/x64:/c/progra~1/MiKTeX 2.9/miktex/bin/x64"
14+
tcltk="https://github.com/r-windows/rtools-chocolatey/releases/download/6536/tcltk-6536-6492.zip"
15+
gcc --version
16+
fi
17+
818
echo "PATH: $PATH"
919
pdflatex --version
1020
texindex --version
1121
texi2any --version
1222
make --version
1323
perl --version
14-
gcc --version
1524

1625
# Extra steps to prepare SVN build (rather than official tarball)
1726
cd "$(cygpath ${GITHUB_WORKSPACE})"
@@ -22,11 +31,11 @@ curl -sSL https://curl.se/ca/cacert.pem > etc/curl-ca-bundle.crt
2231
./.github/scripts/svn-info.sh
2332

2433
# Download the TCL bundle required by tcltk package
25-
curl -OL https://github.com/r-windows/rtools-chocolatey/releases/download/6104/tcltk-6104-6025.zip
26-
unzip tcltk-6104-6025.zip
34+
curl -o tcltk.zip -L $tcltk
35+
unzip -q tcltk.zip
2736

2837
# Add custom flags to MkRules.local
29-
cp .github/scripts/MkRules.local src/gnuwin32/
38+
#cp .github/scripts/MkRules.local src/gnuwin32/
3039
cd src/gnuwin32
3140

3241
# Build just the core pieces (no installer)

.github/scripts/win-installer.sh

Lines changed: 13 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -4,14 +4,23 @@ set -e
44
set -x
55

66
# Put pdflatex on the path (needed only for CMD check)
7+
if [ "$( uname -s | grep ARM)" ]; then
8+
export PATH="/c/aarch64-w64-mingw32.static.posix/bin:$PATH:/c/Users/$USER/AppData/Roaming/TinyTeX/bin/windows:$HOME/AppData/Local/Programs/MiKTeX/miktex/bin/x64:/c/progra~1/MiKTeX/miktex/bin/x64:/c/progra~1/MiKTeX 2.9/miktex/bin/x64"
9+
tcltk="https://github.com/r-windows/rtools-chocolatey/releases/download/6536/tcltk-aarch64-6536-6492.zip"
10+
echo "USE_LLVM = 1" >> src/gnuwin32/MkRules.local
11+
clang --version
12+
else
713
export PATH="/c/x86_64-w64-mingw32.static.posix/bin:$PATH:/c/Users/$USER/AppData/Roaming/TinyTeX/bin/windows:$HOME/AppData/Local/Programs/MiKTeX/miktex/bin/x64:/c/progra~1/MiKTeX/miktex/bin/x64:/c/progra~1/MiKTeX 2.9/miktex/bin/x64"
14+
tcltk="https://github.com/r-windows/rtools-chocolatey/releases/download/6536/tcltk-6536-6492.zip"
15+
gcc --version
16+
fi
17+
818
echo "PATH: $PATH"
919
pdflatex --version
1020
texindex --version
1121
texi2any --version
1222
make --version
1323
perl --version
14-
gcc --version
1524

1625
# Extra steps to prepare SVN build (rather than official tarball)
1726
cd "$(cygpath ${GITHUB_WORKSPACE})"
@@ -22,12 +31,11 @@ curl -sSL https://curl.se/ca/cacert.pem > etc/curl-ca-bundle.crt
2231
./.github/scripts/svn-info.sh
2332

2433
# Download the TCL bundle required by tcltk package
25-
#curl -OL https://cran.r-project.org/bin/windows/Rtools/rtools43/files/tcltk-5493-5412.zip
26-
curl -OL https://github.com/r-windows/rtools-chocolatey/releases/download/5948/Tcl-5948-5877.zip
27-
unzip Tcl-5948-5877.zip
34+
curl -o tcltk.zip -L $tcltk
35+
unzip -q tcltk.zip
2836

2937
# Add custom flags to MkRules.local
30-
cp .github/scripts/MkRules.local src/gnuwin32/
38+
#cp .github/scripts/MkRules.local src/gnuwin32/
3139
cd src/gnuwin32
3240

3341
# Build just the installer

.github/workflows/build-svn.yaml

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -140,7 +140,7 @@ jobs:
140140

141141
windows:
142142
name: Windows
143-
runs-on: windows-latest
143+
runs-on: ${{matrix.OS}}
144144
timeout-minutes: 120
145145
env:
146146
R_CRAN_WEB: "https://cran.rstudio.com"
@@ -152,10 +152,12 @@ jobs:
152152
fail-fast: false
153153
matrix:
154154
script: [ 'check', 'installer' ]
155+
OS: [ 'windows-latest', 'windows-11-arm']
155156
steps:
156-
157157
- name: Prepare git
158-
run: git config --global core.autocrlf false
158+
run: |
159+
git config --global core.autocrlf false
160+
echo "archfix=${{ matrix.OS == 'windows-11-arm' && '-aarch64' || '' }}" >> $GITHUB_ENV
159161
shell: bash
160162

161163
- name: Checkout
@@ -168,12 +170,10 @@ jobs:
168170
msystem: MSYS
169171
install: git make perl curl texinfo texinfo-tex rsync zip unzip diffutils
170172

171-
- name: "Download rtools44 toolchain"
173+
- name: "Download rtools45 toolchain"
172174
run: |
173-
url="https://github.com/r-windows/rtools-chocolatey/releases/download/6104/rtools44-toolchain-libs-base-6104.tar.zst"
174-
curl -sSL $url | tar x --zstd -C /c/ || true
175-
#echo "RTOOLS44_HOME=c:" >> $GITHUB_ENV
176-
#echo "R_CUSTOM_TOOLS_SOFT=c:/x86_64-w64-mingw32.static.posix" >> $GITHUB_ENV
175+
url="https://github.com/r-windows/rtools-chocolatey/releases/download/6536/rtools45-toolchain-libs-base${archfix}-6536.tar.zst"
176+
curl -sSL $url | tar x --zstd -C /c/
177177
178178
- name: Set timezone
179179
shell: powershell
@@ -206,6 +206,6 @@ jobs:
206206

207207
- uses: actions/upload-artifact@v4
208208
with:
209-
name: installer
209+
name: installer${{env.archfix}}
210210
path: src/gnuwin32/installer/R-devel-win.exe
211211
if: matrix.script == 'installer'

0 commit comments

Comments
 (0)