Skip to content

Commit bfaa359

Browse files
committed
feat: aarch64-mingw-ucrt support
1 parent 285e696 commit bfaa359

File tree

5 files changed

+14
-1
lines changed

5 files changed

+14
-1
lines changed

.github/workflows/ci.yml

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -256,6 +256,7 @@ jobs:
256256
platform:
257257
- aarch64-linux-gnu
258258
- aarch64-linux-musl
259+
- aarch64-mingw-ucrt
259260
- arm-linux-gnu
260261
- arm-linux-musl
261262
- arm64-darwin
@@ -342,6 +343,8 @@ jobs:
342343
platform: arm64-darwin
343344
- os: windows-latest
344345
platform: x64-mingw-ucrt
346+
- os: windows-11-arm
347+
platform: aarch64-mingw-ucrt
345348
runs-on: ${{ matrix.os }}
346349
steps:
347350
- uses: actions/checkout@v5

Gemfile

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ group :test do
88
gem "ruby_memcheck", "3.0.1" if Gem::Platform.local.os == "linux"
99

1010
gem "rake-compiler", "1.3.0"
11-
gem "rake-compiler-dock", "1.9.1"
11+
gem "rake-compiler-dock", "1.10.0"
1212
end
1313

1414
group :development do

INSTALLATION.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,7 @@ In v2.0.0 and later, native (precompiled) gems are available for recent Ruby ver
1111

1212
- `aarch64-linux-gnu` (requires: glibc >= 2.29)
1313
- `aarch64-linux-musl`
14+
- `aarch64-mingw-ucrt`
1415
- `arm-linux-gnu` (requires: glibc >= 2.29)
1516
- `arm-linux-musl`
1617
- `arm64-darwin`

ext/sqlite3/extconf.rb

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -155,6 +155,14 @@ def minimal_recipe
155155
recipe.target = File.join(package_root_dir, "ports")
156156
recipe.patch_files = Dir[File.join(package_root_dir, "patches", "*.patch")].sort
157157
end
158+
159+
# Fix host triplet for Windows ARM64 cross-compilation
160+
if cross_build? && RbConfig::CONFIG["target_os"].match?(/mingw/)
161+
case RbConfig::CONFIG["arch"]
162+
when /aarch64/
163+
recipe.host = "aarch64-w64-mingw32"
164+
end
165+
end
158166
end
159167
end
160168

rakelib/native.rake

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,7 @@ require "yaml"
99
cross_platforms = [
1010
"aarch64-linux-gnu",
1111
"aarch64-linux-musl",
12+
"aarch64-mingw-ucrt",
1213
"arm-linux-gnu",
1314
"arm-linux-musl",
1415
"x86-linux-gnu",

0 commit comments

Comments
 (0)