# Copyright (c) Microsoft Corporation. # Licensed under the MIT License. # # http://go.microsoft.com/fwlink/?LinkId=248926 name: 'CTest (Windows)' on: push: branches: [ "main" ] pull_request: branches: [ "main" ] paths-ignore: - '*.md' - LICENSE - '.nuget/*' - build/*.cmd - build/*.json - build/*.props - build/*.ps1 - build/*.targets - build/*.yml env: DIRECTXTEX_MEDIA_PATH: ${{ github.workspace }}/Media jobs: build: runs-on: ${{ matrix.os }} timeout-minutes: 60 strategy: fail-fast: false matrix: os: [windows-2019, windows-2022] build_type: [x64-Debug, x64-Release] arch: [amd64] include: - os: windows-2019 build_type: x86-Debug arch: amd64_x86 - os: windows-2019 build_type: x86-Release arch: amd64_x86 - os: windows-2022 build_type: x86-Debug arch: amd64_x86 - os: windows-2022 build_type: x86-Release arch: amd64_x86 - os: windows-2022 build_type: x64-Debug-Clang arch: amd64 - os: windows-2022 build_type: x64-Release-Clang arch: amd64 - os: windows-2022 build_type: x86-Debug-Clang arch: amd64_x86 - os: windows-2022 build_type: x86-Release-Clang arch: amd64_x86 - os: windows-2022 build_type: arm64-Debug arch: amd64_arm64 - os: windows-2022 build_type: arm64-Release arch: amd64_arm64 - os: windows-2022 build_type: arm64ec-Debug arch: amd64_arm64 - os: windows-2022 build_type: arm64ec-Release arch: amd64_arm64 steps: - uses: actions/checkout@v4 - name: Clone test repository uses: actions/checkout@v4 with: repository: walbourn/directxtextest path: Tests ref: main - name: 'Install Ninja' run: choco install ninja - uses: ilammy/msvc-dev-cmd@v1 with: arch: ${{ matrix.arch }} - name: 'Configure CMake' working-directory: ${{ github.workspace }} run: cmake --preset=${{ matrix.build_type }} -DBUILD_TESTING=ON -DBUILD_TOOLS=OFF -DBUILD_SAMPLE=OFF - name: 'Build' working-directory: ${{ github.workspace }} run: cmake --build out\build\${{ matrix.build_type }}