diff --git a/.github/workflows/ci.yaml b/.github/workflows/ci.yaml index 397ecda51c..c1bd64b1f4 100644 --- a/.github/workflows/ci.yaml +++ b/.github/workflows/ci.yaml @@ -25,6 +25,9 @@ jobs: env: RUSTFLAGS: -Ctarget-feature=+crt-static RUST_MIN_STACK: 16777216 + # Below is a workaround in order to generate the right bindings for `aws-lc-sys`. + # See https://github.com/aws/aws-lc-rs/issues/919 for more details. + AWS_LC_SYS_EFFECTIVE_TARGET_aarch64_pc_windows_gnullvm: aarch64-pc-windows-gnu permissions: id-token: write contents: read @@ -38,6 +41,7 @@ jobs: - x86_64-pc-windows-msvc - aarch64-pc-windows-msvc - x86_64-pc-windows-gnu + - aarch64-pc-windows-gnullvm include: - target: x86_64-pc-windows-msvc run_tests: YES @@ -50,6 +54,10 @@ jobs: rustup_arch: aarch64 os: windows-11-arm run_tests: YES + - target: aarch64-pc-windows-gnullvm + rustup_arch: aarch64 + os: windows-11-arm + run_tests: YES steps: - uses: actions/checkout@v5 # v2 defaults to a shallow checkout, but we need at least to the previous tag @@ -197,6 +205,9 @@ jobs: env: RUSTFLAGS: -Ctarget-feature=+crt-static RUST_MIN_STACK: 16777216 + # Below is a workaround in order to generate the right bindings for `aws-lc-sys`. + # See https://github.com/aws/aws-lc-rs/issues/919 for more details. + AWS_LC_SYS_EFFECTIVE_TARGET_aarch64_pc_windows_gnullvm: aarch64-pc-windows-gnu permissions: id-token: write contents: read @@ -210,6 +221,7 @@ jobs: - x86_64-pc-windows-msvc - aarch64-pc-windows-msvc - x86_64-pc-windows-gnu + - aarch64-pc-windows-gnullvm include: - target: x86_64-pc-windows-msvc run_tests: YES @@ -222,6 +234,10 @@ jobs: rustup_arch: aarch64 os: windows-11-arm run_tests: YES + - target: aarch64-pc-windows-gnullvm + rustup_arch: aarch64 + os: windows-11-arm + run_tests: YES steps: - uses: actions/checkout@v5 # v2 defaults to a shallow checkout, but we need at least to the previous tag @@ -369,6 +385,9 @@ jobs: env: RUSTFLAGS: -Ctarget-feature=+crt-static RUST_MIN_STACK: 16777216 + # Below is a workaround in order to generate the right bindings for `aws-lc-sys`. + # See https://github.com/aws/aws-lc-rs/issues/919 for more details. + AWS_LC_SYS_EFFECTIVE_TARGET_aarch64_pc_windows_gnullvm: aarch64-pc-windows-gnu permissions: id-token: write contents: read @@ -384,6 +403,7 @@ jobs: - aarch64-pc-windows-msvc - x86_64-pc-windows-gnu - i686-pc-windows-gnu # skip-pr skip-main + - aarch64-pc-windows-gnullvm include: - target: x86_64-pc-windows-msvc run_tests: YES @@ -396,6 +416,10 @@ jobs: rustup_arch: aarch64 os: windows-11-arm run_tests: YES + - target: aarch64-pc-windows-gnullvm + rustup_arch: aarch64 + os: windows-11-arm + run_tests: YES - target: i686-pc-windows-gnu # skip-pr skip-main arch: i686 # skip-pr skip-main mingwdir: mingw32 # skip-pr skip-main diff --git a/ci/actions-templates/windows-builds-template.yaml b/ci/actions-templates/windows-builds-template.yaml index 151001ebd9..4f07135fb1 100644 --- a/ci/actions-templates/windows-builds-template.yaml +++ b/ci/actions-templates/windows-builds-template.yaml @@ -12,6 +12,9 @@ jobs: # skip-main skip-pr skip-stable env: RUSTFLAGS: -Ctarget-feature=+crt-static RUST_MIN_STACK: 16777216 + # Below is a workaround in order to generate the right bindings for `aws-lc-sys`. + # See https://github.com/aws/aws-lc-rs/issues/919 for more details. + AWS_LC_SYS_EFFECTIVE_TARGET_aarch64_pc_windows_gnullvm: aarch64-pc-windows-gnu permissions: id-token: write contents: read @@ -27,6 +30,7 @@ jobs: # skip-main skip-pr skip-stable - aarch64-pc-windows-msvc - x86_64-pc-windows-gnu - i686-pc-windows-gnu # skip-pr skip-main + - aarch64-pc-windows-gnullvm include: - target: x86_64-pc-windows-msvc run_tests: YES @@ -39,6 +43,10 @@ jobs: # skip-main skip-pr skip-stable rustup_arch: aarch64 os: windows-11-arm run_tests: YES + - target: aarch64-pc-windows-gnullvm + rustup_arch: aarch64 + os: windows-11-arm + run_tests: YES - target: i686-pc-windows-gnu # skip-pr skip-main arch: i686 # skip-pr skip-main mingwdir: mingw32 # skip-pr skip-main diff --git a/ci/cloudfront-invalidation.txt b/ci/cloudfront-invalidation.txt index 557404da6c..7e5e77293c 100644 --- a/ci/cloudfront-invalidation.txt +++ b/ci/cloudfront-invalidation.txt @@ -5,6 +5,8 @@ rustup/dist/aarch64-apple-darwin/rustup-init rustup/dist/aarch64-apple-darwin/rustup-init.sha256 rustup/dist/aarch64-linux-android/rustup-init rustup/dist/aarch64-linux-android/rustup-init.sha256 +rustup/dist/aarch64-pc-windows-gnullvm/rustup-init.exe +rustup/dist/aarch64-pc-windows-gnullvm/rustup-init.exe.sha256 rustup/dist/aarch64-pc-windows-msvc/rustup-init.exe rustup/dist/aarch64-pc-windows-msvc/rustup-init.exe.sha256 rustup/dist/aarch64-unknown-linux-gnu/rustup-init diff --git a/rustup-init.sh b/rustup-init.sh index 6a50beacb5..e486a5497c 100755 --- a/rustup-init.sh +++ b/rustup-init.sh @@ -466,6 +466,10 @@ get_architecture() { aarch64 | arm64) _cputype=aarch64 + # Windows aarch64 uses gnullvm instead of gnu + if [ "$_ostype" = "pc-windows-gnu" ]; then + _ostype=pc-windows-gnullvm + fi ;; x86_64 | x86-64 | x64 | amd64)