Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions .github/linters/actionlint.yml
Original file line number Diff line number Diff line change
Expand Up @@ -2,3 +2,4 @@ self-hosted-runner:
# Workaround until linter is updated
labels:
- windows-11-arm
- windows-2025-vs2026
128 changes: 128 additions & 0 deletions .github/workflows/clangcl.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,128 @@
# Copyright (c) Microsoft Corporation.
# Licensed under the MIT License.
#
# http://go.microsoft.com/fwlink/?LinkID=615560

name: 'CMake (clang-cl)'

on:
push:
branches: "main"
paths-ignore:
- '*.md'
- LICENSE
- '.azuredevops/**'
- '.nuget/*'
- build/*.ps1
pull_request:
branches: "main"
paths-ignore:
- '*.md'
- LICENSE
- '.azuredevops/**'
- '.nuget/*'
- build/*.ps1

permissions:
contents: read

jobs:
build:
runs-on: windows-2022

strategy:
fail-fast: false

matrix:
build_type: [x64-Debug-Clang, x64-Release-Clang]
arch: [amd64]
include:
- build_type: x86-Debug-Clang
arch: amd64_x86
- build_type: x86-Release-Clang
arch: amd64_x86
- build_type: arm64-Debug-Clang
arch: amd64_arm64
- build_type: arm64-Release-Clang
arch: amd64_arm64

steps:
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2

- name: Clone test repository
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
with:
repository: walbourn/directxmathtest
path: Tests
ref: main

- name: 'Install Ninja'
run: choco install ninja

- uses: ilammy/msvc-dev-cmd@0b201ec74fa43914dc39ae48a89fd1d8cb592756 # v1.13.0
with:
arch: ${{ matrix.arch }}

- name: 'Configure CMake'
working-directory: ${{ github.workspace }}
run: cmake --preset=${{ matrix.build_type }} -DBUILD_TESTING=ON

- name: 'Build'
working-directory: ${{ github.workspace }}
run: cmake --build out/build/${{ matrix.build_type }}

- if: (matrix.build_type == 'x64-Release-Clang') || (matrix.build_type == 'x86-Release-Clang')
timeout-minutes: 10
name: 'Test'
working-directory: ${{ github.workspace }}
run: ctest --preset=${{ matrix.build_type }} --output-on-failure

build2026:
runs-on: windows-2025-vs2026

strategy:
fail-fast: false

matrix:
build_type: [x64-Debug-Clang, x64-Release-Clang]
arch: [amd64]
include:
- build_type: x86-Debug-Clang
arch: amd64_x86
- build_type: x86-Release-Clang
arch: amd64_x86
- build_type: arm64-Debug-Clang
arch: amd64_arm64
- build_type: arm64-Release-Clang
arch: amd64_arm64

steps:
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2

- name: Clone test repository
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
with:
repository: walbourn/directxmathtest
path: Tests
ref: main

- name: 'Install Ninja'
run: choco install ninja

- uses: ilammy/msvc-dev-cmd@0b201ec74fa43914dc39ae48a89fd1d8cb592756 # v1.13.0
with:
arch: ${{ matrix.arch }}

- name: 'Configure CMake'
working-directory: ${{ github.workspace }}
run: cmake --preset=${{ matrix.build_type }} -DBUILD_TESTING=ON

- name: 'Build'
working-directory: ${{ github.workspace }}
run: cmake --build out/build/${{ matrix.build_type }}

- if: (matrix.build_type == 'x64-Release-Clang') || (matrix.build_type == 'x86-Release-Clang')
timeout-minutes: 10
name: 'Test'
working-directory: ${{ github.workspace }}
run: ctest --preset=${{ matrix.build_type }} --output-on-failure
65 changes: 50 additions & 15 deletions .github/workflows/main.yml
Original file line number Diff line number Diff line change
Expand Up @@ -35,15 +35,12 @@ jobs:

matrix:
toolver: ['14.29', '14']
build_type: [x64-Debug, x64-Release, x64-Debug-Clang, x64-Release-Clang]
build_type: [x64-Debug, x64-Release]
arch: [amd64]
include:
- toolver: '14.29'
build_type: x86-Debug
arch: amd64_x86
- toolver: '14.29'
build_type: x86-Debug-Clang
arch: amd64_x86
- toolver: '14'
build_type: x86-Debug
arch: amd64_x86
Expand All @@ -62,24 +59,63 @@ jobs:
- toolver: '14'
build_type: arm64ec-Release
arch: amd64_arm64
- toolver: '14'
build_type: x86-Debug-Clang

steps:
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2

- name: Clone test repository
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
with:
repository: walbourn/directxmathtest
path: Tests
ref: main

- name: 'Install Ninja'
run: choco install ninja

- uses: ilammy/msvc-dev-cmd@0b201ec74fa43914dc39ae48a89fd1d8cb592756 # v1.13.0
with:
arch: ${{ matrix.arch }}
toolset: ${{ matrix.toolver }}

- name: 'Configure CMake'
working-directory: ${{ github.workspace }}
run: cmake --preset=${{ matrix.build_type }}

- name: 'Build'
working-directory: ${{ github.workspace }}
run: cmake --build out/build/${{ matrix.build_type }}

build2026:
runs-on: windows-2025-vs2026

strategy:
fail-fast: false

matrix:
build_type: [x64-Debug, x64-Release]
arch: [amd64]
include:
- build_type: x86-Debug
arch: amd64_x86
- toolver: '14'
build_type: x86-Release-Clang
- build_type: x86-Debug
arch: amd64_x86
- toolver: '14'
build_type: arm64-Debug-Clang
- build_type: x86-Release
arch: amd64_x86
- build_type: arm64-Debug
arch: amd64_arm64
- toolver: '14'
build_type: arm64-Release-Clang
- build_type: arm64-Release
arch: amd64_arm64
- build_type: arm64ec-Debug
arch: amd64_arm64
- build_type: arm64ec-Release
arch: amd64_arm64

steps:
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2

- name: Clone test repository
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
with:
repository: walbourn/directxmathtest
path: Tests
Expand All @@ -91,7 +127,6 @@ jobs:
- uses: ilammy/msvc-dev-cmd@0b201ec74fa43914dc39ae48a89fd1d8cb592756 # v1.13.0
with:
arch: ${{ matrix.arch }}
toolset: ${{ matrix.toolver }}

- name: 'Configure CMake'
working-directory: ${{ github.workspace }}
Expand Down
67 changes: 52 additions & 15 deletions .github/workflows/shmath.yml
Original file line number Diff line number Diff line change
Expand Up @@ -35,15 +35,12 @@ jobs:

matrix:
toolver: ['14.29', '14']
build_type: [x64-Debug, x64-Release, x64-Debug-Clang, x64-Release-Clang]
build_type: [x64-Debug, x64-Release]
arch: [amd64]
include:
- toolver: '14.29'
build_type: x86-Debug
arch: amd64_x86
- toolver: '14.29'
build_type: x86-Debug-Clang
arch: amd64_x86
- toolver: '14'
build_type: x86-Debug
arch: amd64_x86
Expand All @@ -62,24 +59,65 @@ jobs:
- toolver: '14'
build_type: arm64ec-Release
arch: amd64_arm64
- toolver: '14'
build_type: x86-Debug-Clang

steps:
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2

- name: Clone test repository
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
with:
repository: walbourn/directxmathtest
path: Tests
ref: main

- name: 'Install Ninja'
run: choco install ninja

- uses: ilammy/msvc-dev-cmd@0b201ec74fa43914dc39ae48a89fd1d8cb592756 # v1.13.0
with:
arch: ${{ matrix.arch }}
toolset: ${{ matrix.toolver }}

- name: 'Configure CMake'
working-directory: ${{ github.workspace }}
run: >
cmake --preset=${{ matrix.build_type }}
-DBUILD_SHMATH=ON -DBUILD_DX11=ON -DBUILD_DX12=ON

- name: 'Build'
working-directory: ${{ github.workspace }}
run: cmake --build out/build/${{ matrix.build_type }}

build2026:
runs-on: windows-2025-vs2026

strategy:
fail-fast: false

matrix:
build_type: [x64-Debug, x64-Release]
arch: [amd64]
include:
- build_type: x86-Debug
arch: amd64_x86
- toolver: '14'
build_type: x86-Release-Clang
- build_type: x86-Debug
arch: amd64_x86
- toolver: '14'
build_type: arm64-Debug-Clang
- build_type: x86-Release
arch: amd64_x86
- build_type: arm64-Debug
arch: amd64_arm64
- toolver: '14'
build_type: arm64-Release-Clang
- build_type: arm64-Release
arch: amd64_arm64
- build_type: arm64ec-Debug
arch: amd64_arm64
- build_type: arm64ec-Release
arch: amd64_arm64

steps:
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2

- name: Clone test repository
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
with:
repository: walbourn/directxmathtest
path: Tests
Expand All @@ -91,7 +129,6 @@ jobs:
- uses: ilammy/msvc-dev-cmd@0b201ec74fa43914dc39ae48a89fd1d8cb592756 # v1.13.0
with:
arch: ${{ matrix.arch }}
toolset: ${{ matrix.toolver }}

- name: 'Configure CMake'
working-directory: ${{ github.workspace }}
Expand Down
Loading
Loading