Skip to content

Commit 99bf779

Browse files
committed
GitHub Actions using Windows on ARM64 native
1 parent 9544446 commit 99bf779

File tree

5 files changed

+135
-12
lines changed

5 files changed

+135
-12
lines changed

.github/linters/actionlint.yml

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,4 @@
1+
self-hosted-runner:
2+
# Workaround until linter is updated
3+
labels:
4+
- windows-11-arm

.github/workflows/arm64.yml

Lines changed: 62 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,62 @@
1+
# Copyright (c) Microsoft Corporation.
2+
# Licensed under the MIT License.
3+
#
4+
# http://go.microsoft.com/fwlink/?LinkID=615560
5+
6+
name: 'CMake (Windows on ARM64)'
7+
8+
on:
9+
push:
10+
branches: "main"
11+
paths-ignore:
12+
- '*.md'
13+
- LICENSE
14+
- '.azuredevops/**'
15+
- '.nuget/*'
16+
- build/*.ps1
17+
pull_request:
18+
branches: "main"
19+
paths-ignore:
20+
- '*.md'
21+
- LICENSE
22+
- '.azuredevops/**'
23+
- '.nuget/*'
24+
- build/*.ps1
25+
26+
permissions:
27+
contents: read
28+
29+
jobs:
30+
build:
31+
runs-on: windows-11-arm
32+
33+
strategy:
34+
fail-fast: false
35+
36+
matrix:
37+
build_type: [arm64-Debug, arm64-Release]
38+
39+
steps:
40+
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
41+
42+
- name: Clone test repository
43+
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
44+
with:
45+
repository: walbourn/directxmathtest
46+
path: Tests
47+
ref: main
48+
49+
- name: 'Install Ninja'
50+
run: choco install ninja
51+
52+
- uses: ilammy/msvc-dev-cmd@0b201ec74fa43914dc39ae48a89fd1d8cb592756 # v1.13.0
53+
with:
54+
arch: arm64
55+
56+
- name: 'Configure CMake'
57+
working-directory: ${{ github.workspace }}
58+
run: cmake --preset=${{ matrix.build_type }}
59+
60+
- name: 'Build'
61+
working-directory: ${{ github.workspace }}
62+
run: cmake --build out/build/${{ matrix.build_type }}

.github/workflows/arm64test.yml

Lines changed: 68 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,68 @@
1+
# Copyright (c) Microsoft Corporation.
2+
# Licensed under the MIT License.
3+
#
4+
# http://go.microsoft.com/fwlink/?LinkID=615560
5+
6+
name: 'CTest (arm64)'
7+
8+
on:
9+
push:
10+
branches: "main"
11+
paths-ignore:
12+
- '*.md'
13+
- LICENSE
14+
- '.azuredevops/**'
15+
- '.nuget/*'
16+
- build/*.ps1
17+
pull_request:
18+
branches: "main"
19+
paths-ignore:
20+
- '*.md'
21+
- LICENSE
22+
- '.azuredevops/**'
23+
- '.nuget/*'
24+
- build/*.ps1
25+
26+
permissions:
27+
contents: read
28+
29+
jobs:
30+
build:
31+
runs-on: windows-11-arm
32+
timeout-minutes: 20
33+
34+
strategy:
35+
fail-fast: false
36+
37+
matrix:
38+
build_type: [arm64-Debug, arm64-Release]
39+
40+
steps:
41+
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
42+
43+
- name: Clone test repository
44+
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
45+
with:
46+
repository: walbourn/directxmathtest
47+
path: Tests
48+
ref: main
49+
50+
- name: 'Install Ninja'
51+
run: choco install ninja
52+
53+
- uses: ilammy/msvc-dev-cmd@0b201ec74fa43914dc39ae48a89fd1d8cb592756 # v1.13.0
54+
with:
55+
arch: arm64
56+
57+
- name: 'Configure CMake'
58+
working-directory: ${{ github.workspace }}
59+
run: cmake --preset=${{ matrix.build_type }} -DBUILD_TESTING=ON
60+
61+
- name: 'Build'
62+
working-directory: ${{ github.workspace }}
63+
run: cmake --build out/build/${{ matrix.build_type }}
64+
65+
- timeout-minutes: 10
66+
name: 'Test'
67+
working-directory: ${{ github.workspace }}
68+
run: ctest --preset=${{ matrix.build_type }} --output-on-failure

.github/workflows/test.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
#
44
# http://go.microsoft.com/fwlink/?LinkID=615560
55

6-
name: 'CTest (Windows)'
6+
name: 'CTest (x64)'
77

88
on:
99
push:

CMakePresets.json

Lines changed: 0 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -29,15 +29,6 @@
2929
"cacheVariables": { "DXMATH_ARCHITECTURE": "x86" },
3030
"hidden": true
3131
},
32-
{
33-
"name": "ARM",
34-
"architecture": {
35-
"value": "arm",
36-
"strategy": "external"
37-
},
38-
"cacheVariables": { "DXMATH_ARCHITECTURE": "arm" },
39-
"hidden": true
40-
},
4132
{
4233
"name": "ARM64",
4334
"architecture": {
@@ -188,8 +179,6 @@
188179
{ "name": "x64-Release" , "description": "MSVC for x64 (Release) - SSE/SSE2", "inherits": [ "base", "x64", "Release", "MSVC" ] },
189180
{ "name": "x86-Debug" , "description": "MSVC for x86 (Debug) - SSE/SSE2", "inherits": [ "base", "x86", "Debug", "MSVC" ] },
190181
{ "name": "x86-Release" , "description": "MSVC for x86 (Release) - SSE/SSE2", "inherits": [ "base", "x86", "Release", "MSVC" ] },
191-
{ "name": "arm-Debug" , "description": "MSVC for ARM (Debug) - ARM-NEON", "inherits": [ "base", "ARM", "Debug", "MSVC" ] },
192-
{ "name": "arm-Release" , "description": "MSVC for ARM (Release) - ARM-NEON", "inherits": [ "base", "ARM", "Release", "MSVC" ] },
193182
{ "name": "arm64-Debug" , "description": "MSVC for ARM64 (Debug) - ARM-NEON", "inherits": [ "base", "ARM64", "Debug", "MSVC" ] },
194183
{ "name": "arm64-Release" , "description": "MSVC for ARM64 (Release) - ARM-NEON", "inherits": [ "base", "ARM64", "Release", "MSVC" ] },
195184
{ "name": "arm64ec-Debug" , "description": "MSVC for ARM64EC (Debug) - ARM-NEON", "inherits": [ "base", "ARM64EC", "Debug", "MSVC" ] },

0 commit comments

Comments
 (0)