Skip to content

Commit f90e091

Browse files
committed
fix(ci): use aarch64-pc-windows-gnullvm for aarch64-mingw-ucrt
The stable Rust toolchain does not support aarch64-pc-windows-gnu. The correct Tier 2 target for MinGW-w64 on AArch64 is aarch64-pc-windows-gnullvm. This commit updates the toolchain configuration and derived files to use the correct target.
1 parent 73430d9 commit f90e091

File tree

5 files changed

+12
-12
lines changed

5 files changed

+12
-12
lines changed

data/derived/github-actions-matrix.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,7 @@
2222
},
2323
{
2424
"ruby-platform": "aarch64-mingw-ucrt",
25-
"rust-target": "aarch64-pc-windows-gnu"
25+
"rust-target": "aarch64-pc-windows-gnullvm"
2626
},
2727
{
2828
"ruby-platform": "x64-mingw32",

data/derived/ruby-to-rust.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44
"aarch64-linux-musl": "aarch64-unknown-linux-musl",
55
"arm64-darwin": "aarch64-apple-darwin",
66
"x64-mingw-ucrt": "x86_64-pc-windows-gnu",
7-
"aarch64-mingw-ucrt": "aarch64-pc-windows-gnu",
7+
"aarch64-mingw-ucrt": "aarch64-pc-windows-gnullvm",
88
"x64-mingw32": "x86_64-pc-windows-gnu",
99
"x86-linux": "i686-unknown-linux-gnu",
1010
"x86-mingw32": "i686-pc-windows-gnu",

data/toolchains.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -57,7 +57,7 @@
5757
},
5858
{
5959
"ruby-platform": "aarch64-mingw-ucrt",
60-
"rust-target": "aarch64-pc-windows-gnu",
60+
"rust-target": "aarch64-pc-windows-gnullvm",
6161
"dockerfile": "docker/Dockerfile.aarch64-mingw-ucrt",
6262
"rake-compiler-dock": {
6363
"cc": "aarch64-w64-mingw32-clang"

docker/Dockerfile.aarch64-mingw-ucrt

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -2,20 +2,20 @@
22
FROM ghcr.io/rake-compiler/rake-compiler-dock-image:1.10.0-mri-aarch64-mingw-ucrt
33

44
ENV RUBY_TARGET="aarch64-mingw-ucrt" \
5-
RUST_TARGET="aarch64-pc-windows-gnu" \
5+
RUST_TARGET="aarch64-pc-windows-gnullvm" \
66
RUSTUP_DEFAULT_TOOLCHAIN="stable" \
77
PKG_CONFIG_ALLOW_CROSS="1" \
88
RUSTUP_HOME="/usr/local/rustup" \
99
CARGO_HOME="/usr/local/cargo" \
1010
PATH="/usr/local/cargo/bin:/llvm-mingw/bin:$PATH" \
1111
LIBCLANG_PATH="/llvm-mingw/lib" \
12-
CC_aarch64_pc_windows_gnu="aarch64-w64-mingw32-clang" \
13-
CXX_aarch64_pc_windows_gnu="aarch64-w64-mingw32-clang++" \
14-
AR_aarch64_pc_windows_gnu="aarch64-w64-mingw32-ar" \
15-
BINDGEN_EXTRA_CLANG_ARGS_aarch64_pc_windows_gnu="--target=aarch64-w64-mingw32 --sysroot=/llvm-mingw/aarch64-w64-mingw32" \
16-
PKG_CONFIG_PATH_aarch64_pc_windows_gnu="/llvm-mingw/aarch64-w64-mingw32/lib/pkgconfig" \
17-
CARGO_TARGET_AARCH64_PC_WINDOWS_GNU_LINKER="aarch64-w64-mingw32-clang" \
18-
CMAKE_aarch64_pc_windows_gnu="/opt/cmake/bin/cmake"
12+
CC_aarch64_pc_windows_gnullvm="aarch64-w64-mingw32-clang" \
13+
CXX_aarch64_pc_windows_gnullvm="aarch64-w64-mingw32-clang++" \
14+
AR_aarch64_pc_windows_gnullvm="aarch64-w64-mingw32-ar" \
15+
BINDGEN_EXTRA_CLANG_ARGS_aarch64_pc_windows_gnullvm="--target=aarch64-w64-mingw32 --sysroot=/llvm-mingw/aarch64-w64-mingw32" \
16+
PKG_CONFIG_PATH_aarch64_pc_windows_gnullvm="/llvm-mingw/aarch64-w64-mingw32/lib/pkgconfig" \
17+
CARGO_TARGET_AARCH64_PC_WINDOWS_GNULLVM_LINKER="aarch64-w64-mingw32-clang" \
18+
CMAKE_aarch64_pc_windows_gnullvm="/opt/cmake/bin/cmake"
1919

2020
COPY setup/lib.sh setup/rustup.sh setup/rubygems.sh setup/cmake.sh setup/rubybashrc.sh setup/rb-sys-dock.sh setup/delete-unused-files.sh /
2121

gem/lib/rb_sys/toolchain_info/data.rb

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,6 @@
55
module RbSys
66
class ToolchainInfo
77
# @private
8-
DATA = {"arm-linux" => {"rust-target" => "arm-unknown-linux-gnueabihf", "rake-compiler-dock" => {"cc" => "arm-linux-gnueabihf-gcc"}, "docker-platform" => "linux/arm/v7", "supported" => true}, "aarch64-linux" => {"aliases" => ["aarch64-linux-gnu", "aarch64-unknown-linux-gnu"], "rust-target" => "aarch64-unknown-linux-gnu", "rake-compiler-dock" => {"cc" => "aarch64-linux-gnu-gcc"}, "docker-platform" => "linux/arm64/v8", "supported" => true}, "aarch64-linux-musl" => {"rust-target" => "aarch64-unknown-linux-musl", "rake-compiler-dock" => {"cc" => "aarch64-linux-musl-gcc"}, "docker-platform" => "linux/arm64/v8", "supported" => true}, "arm64-darwin" => {"rust-target" => "aarch64-apple-darwin", "rake-compiler-dock" => {"cc" => "aarch64-apple-darwin-clang"}, "docker-platform" => "linux/arm64/v8", "supported" => true}, "x64-mingw-ucrt" => {"rust-target" => "x86_64-pc-windows-gnu", "rake-compiler-dock" => {"cc" => "x86_64-windows-gnu-gcc"}, "docker-platform" => "linux/amd64", "supported" => true}, "aarch64-mingw-ucrt" => {"rust-target" => "aarch64-pc-windows-gnu", "rake-compiler-dock" => {"cc" => "aarch64-w64-mingw32-clang"}, "docker-platform" => "linux/amd64", "supported" => true}, "x64-mingw32" => {"rust-target" => "x86_64-pc-windows-gnu", "rake-compiler-dock" => {"cc" => "x86_64-windows-gnu-gcc"}, "docker-platform" => "linux/amd64", "supported" => true}, "x86-linux" => {"rust-target" => "i686-unknown-linux-gnu", "rake-compiler-dock" => {"cc" => "i686-redhat-linux-gcc"}, "docker-platform" => "linux/i386", "supported" => false}, "x86-mingw32" => {"rust-target" => "i686-pc-windows-gnu", "rake-compiler-dock" => {"cc" => "i686-w64-mingw32-gcc"}, "docker-platform" => "linux/i386", "supported" => false}, "x86_64-darwin" => {"rust-target" => "x86_64-apple-darwin", "rake-compiler-dock" => {"cc" => "x86_64-apple-darwin-clang"}, "docker-platform" => "linux/amd64", "supported" => true}, "x86_64-linux" => {"aliases" => ["x86_64-linux-gnu", "x86_64-unknown-linux-gnu"], "rust-target" => "x86_64-unknown-linux-gnu", "rake-compiler-dock" => {"cc" => "x86_64-redhat-linux-gcc"}, "docker-platform" => "linux/amd64", "supported" => true}, "x86_64-linux-musl" => {"rust-target" => "x86_64-unknown-linux-musl", "rake-compiler-dock" => {"cc" => "x86_64-unknown-linux-musl-gcc"}, "docker-platform" => "linux/amd64", "supported" => true}}
8+
DATA = {"arm-linux" => {"rust-target" => "arm-unknown-linux-gnueabihf", "rake-compiler-dock" => {"cc" => "arm-linux-gnueabihf-gcc"}, "docker-platform" => "linux/arm/v7", "supported" => true}, "aarch64-linux" => {"aliases" => ["aarch64-linux-gnu", "aarch64-unknown-linux-gnu"], "rust-target" => "aarch64-unknown-linux-gnu", "rake-compiler-dock" => {"cc" => "aarch64-linux-gnu-gcc"}, "docker-platform" => "linux/arm64/v8", "supported" => true}, "aarch64-linux-musl" => {"rust-target" => "aarch64-unknown-linux-musl", "rake-compiler-dock" => {"cc" => "aarch64-linux-musl-gcc"}, "docker-platform" => "linux/arm64/v8", "supported" => true}, "arm64-darwin" => {"rust-target" => "aarch64-apple-darwin", "rake-compiler-dock" => {"cc" => "aarch64-apple-darwin-clang"}, "docker-platform" => "linux/arm64/v8", "supported" => true}, "x64-mingw-ucrt" => {"rust-target" => "x86_64-pc-windows-gnu", "rake-compiler-dock" => {"cc" => "x86_64-windows-gnu-gcc"}, "docker-platform" => "linux/amd64", "supported" => true}, "aarch64-mingw-ucrt" => {"rust-target" => "aarch64-pc-windows-gnullvm", "rake-compiler-dock" => {"cc" => "aarch64-w64-mingw32-clang"}, "docker-platform" => "linux/amd64", "supported" => true}, "x64-mingw32" => {"rust-target" => "x86_64-pc-windows-gnu", "rake-compiler-dock" => {"cc" => "x86_64-windows-gnu-gcc"}, "docker-platform" => "linux/amd64", "supported" => true}, "x86-linux" => {"rust-target" => "i686-unknown-linux-gnu", "rake-compiler-dock" => {"cc" => "i686-redhat-linux-gcc"}, "docker-platform" => "linux/i386", "supported" => false}, "x86-mingw32" => {"rust-target" => "i686-pc-windows-gnu", "rake-compiler-dock" => {"cc" => "i686-w64-mingw32-gcc"}, "docker-platform" => "linux/i386", "supported" => false}, "x86_64-darwin" => {"rust-target" => "x86_64-apple-darwin", "rake-compiler-dock" => {"cc" => "x86_64-apple-darwin-clang"}, "docker-platform" => "linux/amd64", "supported" => true}, "x86_64-linux" => {"aliases" => ["x86_64-linux-gnu", "x86_64-unknown-linux-gnu"], "rust-target" => "x86_64-unknown-linux-gnu", "rake-compiler-dock" => {"cc" => "x86_64-redhat-linux-gcc"}, "docker-platform" => "linux/amd64", "supported" => true}, "x86_64-linux-musl" => {"rust-target" => "x86_64-unknown-linux-musl", "rake-compiler-dock" => {"cc" => "x86_64-unknown-linux-musl-gcc"}, "docker-platform" => "linux/amd64", "supported" => true}}
99
end
1010
end

0 commit comments

Comments
 (0)