File tree Expand file tree Collapse file tree 4 files changed +50
-5
lines changed Expand file tree Collapse file tree 4 files changed +50
-5
lines changed Original file line number Diff line number Diff line change @@ -152,6 +152,9 @@ jobs:
152152      - name : show the current environment 
153153        run : src/ci/scripts/dump-environment.sh 
154154
155+       - name : install rust 
156+         run : src/ci/scripts/install-rust.sh 
157+ 
155158      - name : install awscli 
156159        run : src/ci/scripts/install-awscli.sh 
157160
Original file line number Diff line number Diff line change @@ -46,6 +46,10 @@ runners:
4646    os : windows-2025-8core-32gb 
4747    << : *base-job 
4848
49+   - &job-windows-aarch64 
50+     os : windows-11-arm 
51+     << : *base-job 
52+ 
4953  - &job-aarch64-linux 
5054    #  Free some disk space to avoid running out of space during the build.
5155    free_disk : true 
@@ -561,6 +565,19 @@ auto:
561565      SCRIPT : make ci-msvc-ps1 
562566    << : *job-windows 
563567
568+   #  aarch64-msvc is split into two jobs to run tests in parallel.
569+   - name : aarch64-msvc-1 
570+     env :
571+       RUST_CONFIGURE_ARGS : --build=aarch64-pc-windows-msvc 
572+       SCRIPT : make ci-msvc-py 
573+     << : *job-windows-aarch64 
574+ 
575+   - name : aarch64-msvc-2 
576+     env :
577+       RUST_CONFIGURE_ARGS : --build=aarch64-pc-windows-msvc 
578+       SCRIPT : make ci-msvc-ps1 
579+     << : *job-windows-aarch64 
580+ 
564581  #  x86_64-msvc-ext is split into multiple jobs to run tests in parallel.
565582  - name : x86_64-msvc-ext1 
566583    env :
@@ -656,14 +673,14 @@ auto:
656673  - name : dist-aarch64-msvc 
657674    env :
658675      RUST_CONFIGURE_ARGS : >- 
659-         --build=x86_64 -pc-windows-msvc 
676+         --build=aarch64 -pc-windows-msvc 
660677        --host=aarch64-pc-windows-msvc 
661678        --target=aarch64-pc-windows-msvc,arm64ec-pc-windows-msvc 
662679        --enable-full-tools 
663680        --enable-profiler 
664681SCRIPT : python x.py dist bootstrap --include-default-paths 
665682      DIST_REQUIRE_ALL_TOOLS : 1 
666-     << : *job-windows 
683+     << : *job-windows-aarch64  
667684
668685  - name : dist-i686-mingw 
669686    env :
Original file line number Diff line number Diff line change @@ -56,9 +56,19 @@ elif isWindows && ! isKnownToBeMingwBuild; then
5656
5757    mkdir -p citools/clang-rust
5858    cd  citools
59-     retry curl -f " ${MIRRORS_BASE} /LLVM-${LLVM_VERSION} -win64.exe" 
60-         -o " LLVM-${LLVM_VERSION} -win64.exe" 
61-     7z x -oclang-rust/ " LLVM-${LLVM_VERSION} -win64.exe" 
59+ 
60+     if  [[ " ${CI_JOB_NAME} " =  * aarch64*  ]];  then 
61+         suffix=woa64
62+ 
63+         #  On Arm64, the Ring crate requires that Clang be on the PATH.
64+         #  https://github.com/briansmith/ring/blob/main/BUILDING.md
65+         ciCommandAddPath " $( cygpath -m " $( pwd) " ) " 
66+     else 
67+         suffix=win64
68+     fi 
69+     retry curl -f " ${MIRRORS_BASE} /LLVM-${LLVM_VERSION} -${suffix} .exe" 
70+         -o " LLVM-${LLVM_VERSION} -${suffix} .exe" 
71+     7z x -oclang-rust/ " LLVM-${LLVM_VERSION} -${suffix} .exe" 
6272    ciCommandSetEnv RUST_CONFIGURE_ARGS \
6373        " ${RUST_CONFIGURE_ARGS}  --set llvm.clang-cl=$( pwd) " 
6474
Original file line number Diff line number Diff line change 1+ #! /bin/bash
2+ 
3+ #  The Arm64 Windows Runner does not have Rust already installed
4+ #  https://github.com/actions/partner-runner-images/issues/77
5+ 
6+ set  -euo pipefail
7+ IFS=$' \n\t ' 
8+ 
9+ source  " $( cd " $( dirname " $0 " ) " &&  pwd) " 
10+ 
11+ if  [[ " ${CI_JOB_NAME} " =  * aarch64*  ]] &&  isWindows;  then 
12+     curl --proto ' =https' |  \
13+     sh -s -- -y -q --default-host aarch64-pc-windows-msvc
14+     ciCommandAddPath " ${USERPROFILE} /.cargo/bin" 
15+ fi 
 
 
   
 
     
   
   
          
    
    
     
    
      
     
     
    You can’t perform that action at this time.
  
 
    
  
    
      
        
     
       
      
     
   
 
    
    
  
 
  
 
     
    
0 commit comments