From 60a73dae9c463602d2e58a58886db4704a8a81f1 Mon Sep 17 00:00:00 2001 From: walbourn Date: Tue, 7 Jul 2026 19:15:56 -0700 Subject: [PATCH 1/3] MinGW update and pipeline updates --- .../DirectXMath-GitHub-CMake-Dev17.yml | 347 ------------------ .../pipelines/DirectXMath-GitHub-CMake.yml | 96 ----- .../pipelines/DirectXMath-GitHub-MinGW.yml | 321 ---------------- .../pipelines/DirectXMath-GitHub-WSL-11.yml | 88 ----- .../pipelines/DirectXMath-GitHub-WSL-13.yml | 88 ----- .github/workflows/mingw.yml | 61 +++ 6 files changed, 61 insertions(+), 940 deletions(-) delete mode 100644 .azuredevops/pipelines/DirectXMath-GitHub-CMake-Dev17.yml delete mode 100644 .azuredevops/pipelines/DirectXMath-GitHub-CMake.yml delete mode 100644 .azuredevops/pipelines/DirectXMath-GitHub-MinGW.yml delete mode 100644 .azuredevops/pipelines/DirectXMath-GitHub-WSL-11.yml delete mode 100644 .azuredevops/pipelines/DirectXMath-GitHub-WSL-13.yml create mode 100644 .github/workflows/mingw.yml diff --git a/.azuredevops/pipelines/DirectXMath-GitHub-CMake-Dev17.yml b/.azuredevops/pipelines/DirectXMath-GitHub-CMake-Dev17.yml deleted file mode 100644 index b8e86684..00000000 --- a/.azuredevops/pipelines/DirectXMath-GitHub-CMake-Dev17.yml +++ /dev/null @@ -1,347 +0,0 @@ -# Copyright (c) Microsoft Corporation. -# Licensed under the MIT License. -# -# http://go.microsoft.com/fwlink/?LinkID=615560 - -# Builds the library and test suite using CMake using VS Generator (GitHub Actions covers Ninja) - -schedules: - - cron: "0 0 * * *" - displayName: 'Nightly build' - branches: - include: - - main - -trigger: none - -pr: - branches: - include: - - main - paths: - include: - - '.azuredevops/pipelines/DirectXMath-GitHub-CMake-Dev17.yml' - - CMake* - - build/*.cmake - - build/*.in - -resources: - repositories: - - repository: self - type: git - ref: refs/heads/main - - repository: testRepo - name: walbourn/directxmathtest - type: github - endpoint: microsoft - ref: refs/heads/main - -name: $(Year:yyyy).$(Month).$(DayOfMonth)$(Rev:.r) - -variables: - Codeql.Enabled: false - VS_GENERATOR: 'Visual Studio 17 2022' - WIN10_SDK: '10.0.19041.0' - WIN11_SDK: '10.0.26100.0' - -pool: - vmImage: windows-2022 - -jobs: - - job: CMAKE_BUILD - displayName: CMake using VS Generator BUILD_TESTING=ON - cancelTimeoutInMinutes: 1 - steps: - - checkout: self - clean: true - fetchTags: false - fetchDepth: 1 - path: 's' - - checkout: testRepo - displayName: Fetch Tests - clean: true - fetchTags: false - fetchDepth: 1 - path: 's/Tests' - - task: CMake@1 - displayName: 'CMake (MSVC): Config x64' - inputs: - cwd: '$(Build.SourcesDirectory)' - cmakeArgs: > - -G "$(VS_GENERATOR)" -A x64 -B out -DCMAKE_SYSTEM_VERSION=$(WIN10_SDK) - - task: CMake@1 - displayName: 'CMake (MSVC): Build x64 Debug' - inputs: - cwd: '$(Build.SourcesDirectory)' - cmakeArgs: --build out -v --config Debug - - task: CMake@1 - displayName: 'CMake (MSVC): Build x64 Release' - inputs: - cwd: '$(Build.SourcesDirectory)' - cmakeArgs: --build out -v --config RelWithDebInfo - - task: CMake@1 - displayName: 'CMake (MSVC): Config x86' - inputs: - cwd: '$(Build.SourcesDirectory)' - cmakeArgs: > - -G "$(VS_GENERATOR)" -A Win32 -B out2 -DCMAKE_SYSTEM_VERSION=$(WIN10_SDK) - - task: CMake@1 - displayName: 'CMake (MSVC): Build x86 Debug' - inputs: - cwd: '$(Build.SourcesDirectory)' - cmakeArgs: --build out2 -v --config Debug - - task: CMake@1 - displayName: 'CMake (MSVC): Build x86 Release' - inputs: - cwd: '$(Build.SourcesDirectory)' - cmakeArgs: --build out2 -v --config RelWithDebInfo - - task: CMake@1 - displayName: 'CMake (MSVC): Config ARM64' - inputs: - cwd: '$(Build.SourcesDirectory)' - cmakeArgs: > - -G "$(VS_GENERATOR)" -A ARM64 -B out3 -DCMAKE_SYSTEM_VERSION=$(WIN11_SDK) - - task: CMake@1 - displayName: 'CMake (MSVC): Build ARM64 Debug' - inputs: - cwd: '$(Build.SourcesDirectory)' - cmakeArgs: --build out3 -v --config Debug - - task: CMake@1 - displayName: 'CMake (MSVC): Build ARM64 Release' - inputs: - cwd: '$(Build.SourcesDirectory)' - cmakeArgs: --build out3 -v --config RelWithDebInfo - - task: CMake@1 - displayName: 'CMake (ClangCl): Config x64' - inputs: - cwd: '$(Build.SourcesDirectory)' - cmakeArgs: > - -G "$(VS_GENERATOR)" -A x64 -T clangcl -B out4 -DCMAKE_SYSTEM_VERSION=$(WIN10_SDK) - - task: CMake@1 - displayName: 'CMake (ClangCl): Build x64 Debug' - inputs: - cwd: '$(Build.SourcesDirectory)' - cmakeArgs: --build out4 -v --config Debug - - task: CMake@1 - displayName: 'CMake (ClangCl): Build x64 Release' - inputs: - cwd: '$(Build.SourcesDirectory)' - cmakeArgs: --build out4 -v --config RelWithDebInfo - - task: CMake@1 - displayName: 'CMake (ClangCl): Config ARM64' - inputs: - cwd: '$(Build.SourcesDirectory)' - cmakeArgs: > - -G "$(VS_GENERATOR)" -A ARM64 -T clangcl -B out5 -DCMAKE_SYSTEM_VERSION=$(WIN11_SDK) - - task: CMake@1 - displayName: 'CMake (ClangCl): Build ARM64 Debug' - inputs: - cwd: '$(Build.SourcesDirectory)' - cmakeArgs: --build out5 -v --config Debug - - task: CMake@1 - displayName: 'CMake (ClangCl): Build ARM64 Release' - inputs: - cwd: '$(Build.SourcesDirectory)' - cmakeArgs: --build out5 -v --config RelWithDebInfo - - - job: CMAKE_BUILD_XDSP - displayName: CMake using VS Generator BUILD_XDSP=ON - cancelTimeoutInMinutes: 1 - steps: - - checkout: self - clean: true - fetchTags: false - fetchDepth: 1 - path: 's' - - checkout: testRepo - displayName: Fetch Tests - clean: true - fetchTags: false - fetchDepth: 1 - path: 's/Tests' - - task: CMake@1 - displayName: 'CMake (MSVC): Config x64' - inputs: - cwd: '$(Build.SourcesDirectory)' - cmakeArgs: > - -G "$(VS_GENERATOR)" -A x64 -B out -DCMAKE_SYSTEM_VERSION=$(WIN10_SDK) - -DBUILD_XDSP=ON - - task: CMake@1 - displayName: 'CMake (MSVC): Build x64 Debug' - inputs: - cwd: '$(Build.SourcesDirectory)' - cmakeArgs: --build out -v --config Debug - - task: CMake@1 - displayName: 'CMake (MSVC): Build x64 Release' - inputs: - cwd: '$(Build.SourcesDirectory)' - cmakeArgs: --build out -v --config RelWithDebInfo - - task: CMake@1 - displayName: 'CMake (MSVC): Config x86' - inputs: - cwd: '$(Build.SourcesDirectory)' - cmakeArgs: > - -G "$(VS_GENERATOR)" -A Win32 -B out2 -DCMAKE_SYSTEM_VERSION=$(WIN10_SDK) - -DBUILD_XDSP=ON - - task: CMake@1 - displayName: 'CMake (MSVC): Build x86 Debug' - inputs: - cwd: '$(Build.SourcesDirectory)' - cmakeArgs: --build out2 -v --config Debug - - task: CMake@1 - displayName: 'CMake (MSVC): Build x86 Release' - inputs: - cwd: '$(Build.SourcesDirectory)' - cmakeArgs: --build out2 -v --config RelWithDebInfo - - task: CMake@1 - displayName: 'CMake (MSVC): Config ARM64' - inputs: - cwd: '$(Build.SourcesDirectory)' - cmakeArgs: > - -G "$(VS_GENERATOR)" -A ARM64 -B out3 -DCMAKE_SYSTEM_VERSION=$(WIN11_SDK) - -DBUILD_XDSP=ON - - task: CMake@1 - displayName: 'CMake (MSVC): Build ARM64 Debug' - inputs: - cwd: '$(Build.SourcesDirectory)' - cmakeArgs: --build out3 -v --config Debug - - task: CMake@1 - displayName: 'CMake (MSVC): Build ARM64 Release' - inputs: - cwd: '$(Build.SourcesDirectory)' - cmakeArgs: --build out3 -v --config RelWithDebInfo - - task: CMake@1 - displayName: 'CMake (ClangCl): Config x64' - inputs: - cwd: '$(Build.SourcesDirectory)' - cmakeArgs: > - -G "$(VS_GENERATOR)" -A x64 -T clangcl -B out4 -DCMAKE_SYSTEM_VERSION=$(WIN10_SDK) - -DBUILD_XDSP=ON - - task: CMake@1 - displayName: 'CMake (ClangCl): Build x64 Debug' - inputs: - cwd: '$(Build.SourcesDirectory)' - cmakeArgs: --build out4 -v --config Debug - - task: CMake@1 - displayName: 'CMake (ClangCl): Build x64 Release' - inputs: - cwd: '$(Build.SourcesDirectory)' - cmakeArgs: --build out4 -v --config RelWithDebInfo - - task: CMake@1 - displayName: 'CMake (ClangCl): Config ARM64' - inputs: - cwd: '$(Build.SourcesDirectory)' - cmakeArgs: > - -G "$(VS_GENERATOR)" -A ARM64 -T clangcl -B out5 -DCMAKE_SYSTEM_VERSION=$(WIN11_SDK) - -DBUILD_XDSP=ON - - task: CMake@1 - displayName: 'CMake (ClangCl): Build ARM64 Debug' - inputs: - cwd: '$(Build.SourcesDirectory)' - cmakeArgs: --build out5 -v --config Debug - - task: CMake@1 - displayName: 'CMake (ClangCl): Build ARM64 Release' - inputs: - cwd: '$(Build.SourcesDirectory)' - cmakeArgs: --build out5 -v --config RelWithDebInfo - - - job: CMAKE_BUILD_SHMATH - displayName: CMake using VS Generator BUILD_SHMATH=ON - cancelTimeoutInMinutes: 1 - steps: - - checkout: self - clean: true - fetchTags: false - fetchDepth: 1 - path: 's' - - checkout: testRepo - displayName: Fetch Tests - clean: true - fetchTags: false - fetchDepth: 1 - path: 's/Tests' - - task: CMake@1 - displayName: 'CMake (MSVC): Config x64' - inputs: - cwd: '$(Build.SourcesDirectory)' - cmakeArgs: > - -G "$(VS_GENERATOR)" -A x64 -B out -DCMAKE_SYSTEM_VERSION=$(WIN10_SDK) - -DBUILD_SHMATH=ON -DBUILD_DX11=ON -DBUILD_DX12=ON - - task: CMake@1 - displayName: 'CMake (MSVC): Build x64 Debug' - inputs: - cwd: '$(Build.SourcesDirectory)' - cmakeArgs: --build out -v --config Debug - - task: CMake@1 - displayName: 'CMake (MSVC): Build x64 Release' - inputs: - cwd: '$(Build.SourcesDirectory)' - cmakeArgs: --build out -v --config RelWithDebInfo - - task: CMake@1 - displayName: 'CMake (MSVC): Config x86' - inputs: - cwd: '$(Build.SourcesDirectory)' - cmakeArgs: > - -G "$(VS_GENERATOR)" -A Win32 -B out2 -DCMAKE_SYSTEM_VERSION=$(WIN10_SDK) - -DBUILD_SHMATH=ON -DBUILD_DX11=ON -DBUILD_DX12=ON - - task: CMake@1 - displayName: 'CMake (MSVC): Build x86 Debug' - inputs: - cwd: '$(Build.SourcesDirectory)' - cmakeArgs: --build out2 -v --config Debug - - task: CMake@1 - displayName: 'CMake (MSVC): Build x86 Release' - inputs: - cwd: '$(Build.SourcesDirectory)' - cmakeArgs: --build out2 -v --config RelWithDebInfo - - task: CMake@1 - displayName: 'CMake (MSVC): Config ARM64' - inputs: - cwd: '$(Build.SourcesDirectory)' - cmakeArgs: > - -G "$(VS_GENERATOR)" -A ARM64 -B out3 -DCMAKE_SYSTEM_VERSION=$(WIN11_SDK) - -DBUILD_SHMATH=ON -DBUILD_DX11=ON -DBUILD_DX12=ON - - task: CMake@1 - displayName: 'CMake (MSVC): Build ARM64 Debug' - inputs: - cwd: '$(Build.SourcesDirectory)' - cmakeArgs: --build out3 -v --config Debug - - task: CMake@1 - displayName: 'CMake (MSVC): Build ARM64 Release' - inputs: - cwd: '$(Build.SourcesDirectory)' - cmakeArgs: --build out3 -v --config RelWithDebInfo - - task: CMake@1 - displayName: 'CMake (ClangCl): Config x64' - inputs: - cwd: '$(Build.SourcesDirectory)' - cmakeArgs: > - -G "$(VS_GENERATOR)" -A x64 -T clangcl -B out4 -DCMAKE_SYSTEM_VERSION=$(WIN10_SDK) - -DBUILD_SHMATH=ON -DBUILD_DX11=ON -DBUILD_DX12=ON - - task: CMake@1 - displayName: 'CMake (ClangCl): Build x64 Debug' - inputs: - cwd: '$(Build.SourcesDirectory)' - cmakeArgs: --build out4 -v --config Debug - - task: CMake@1 - displayName: 'CMake (ClangCl): Build x64 Release' - inputs: - cwd: '$(Build.SourcesDirectory)' - cmakeArgs: --build out4 -v --config RelWithDebInfo - - task: CMake@1 - displayName: 'CMake (ClangCl): Config ARM64' - inputs: - cwd: '$(Build.SourcesDirectory)' - cmakeArgs: > - -G "$(VS_GENERATOR)" -A ARM64 -T clangcl -B out5 -DCMAKE_SYSTEM_VERSION=$(WIN11_SDK) - -DBUILD_SHMATH=ON -DBUILD_DX11=ON -DBUILD_DX12=ON - - task: CMake@1 - displayName: 'CMake (ClangCl): Build ARM64 Debug' - inputs: - cwd: '$(Build.SourcesDirectory)' - cmakeArgs: --build out5 -v --config Debug - - task: CMake@1 - displayName: 'CMake (ClangCl): Build ARM64 Release' - inputs: - cwd: '$(Build.SourcesDirectory)' - cmakeArgs: --build out5 -v --config RelWithDebInfo diff --git a/.azuredevops/pipelines/DirectXMath-GitHub-CMake.yml b/.azuredevops/pipelines/DirectXMath-GitHub-CMake.yml deleted file mode 100644 index 2e7c210c..00000000 --- a/.azuredevops/pipelines/DirectXMath-GitHub-CMake.yml +++ /dev/null @@ -1,96 +0,0 @@ -# Copyright (c) Microsoft Corporation. -# Licensed under the MIT License. -# -# http://go.microsoft.com/fwlink/?LinkID=615560 - -# Builds the library and test suite using CMake using VS Generator (GitHub Actions covers Ninja). - -schedules: - - cron: "0 0 * * *" - displayName: 'Nightly build' - branches: - include: - - main - -trigger: - branches: - include: - - main - paths: - exclude: - - '*.md' - - LICENSE - - '.github/**' - - '.nuget/*' - - build/*.ps1 - -pr: - branches: - include: - - main - paths: - exclude: - - '*.md' - - LICENSE - - '.github/**' - - '.nuget/*' - -resources: - repositories: - - repository: self - type: git - ref: refs/heads/main - - repository: testRepo - name: walbourn/directxmathtest - type: github - endpoint: microsoft - ref: refs/heads/main - -name: $(Year:yyyy).$(Month).$(DayOfMonth)$(Rev:.r) - -variables: - Codeql.Enabled: false - VS_GENERATOR: 'Visual Studio 17 2022' - WIN10_SDK: '10.0.19041.0' - -pool: - vmImage: windows-2022 - -jobs: - - job: CMAKE_BUILD - displayName: CMake using VS Generator - cancelTimeoutInMinutes: 1 - steps: - - checkout: self - clean: true - fetchTags: false - fetchDepth: 1 - path: 's' - - checkout: testRepo - displayName: Fetch Tests - clean: true - fetchTags: false - fetchDepth: 1 - path: 's/Tests' - - task: CMake@1 - displayName: CMake (MSVC x64) - inputs: - cwd: '$(Build.SourcesDirectory)' - cmakeArgs: > - -G "$(VS_GENERATOR)" -T v142 -A x64 -B out -DCMAKE_SYSTEM_VERSION=$(WIN10_SDK) - - task: CMake@1 - displayName: CMake (Build x64) - inputs: - cwd: '$(Build.SourcesDirectory)' - cmakeArgs: --build out -v - - task: CMake@1 - displayName: CMake Test (MSVC x64) - inputs: - cwd: Tests - cmakeArgs: > - -G "$(VS_GENERATOR)" -T v142 -A x64 -B out -DCMAKE_SYSTEM_VERSION=$(WIN10_SDK) - - task: CMake@1 - displayName: CMake Test (Build x64) - inputs: - cwd: Tests - cmakeArgs: --build out -v diff --git a/.azuredevops/pipelines/DirectXMath-GitHub-MinGW.yml b/.azuredevops/pipelines/DirectXMath-GitHub-MinGW.yml deleted file mode 100644 index b3718dd2..00000000 --- a/.azuredevops/pipelines/DirectXMath-GitHub-MinGW.yml +++ /dev/null @@ -1,321 +0,0 @@ -# Copyright (c) Microsoft Corporation. -# Licensed under the MIT License. -# -# http://go.microsoft.com/fwlink/?LinkID=615560 - -# Builds the library and test suite using the MinGW compiler. - -schedules: - - cron: "0 0 * * *" - displayName: 'Nightly build' - branches: - include: - - main - -trigger: - branches: - include: - - main - paths: - exclude: - - '*.md' - - LICENSE - - '.github/**' - - '.nuget/*' - - build/*.ps1 - -pr: - branches: - include: - - main - paths: - exclude: - - '*.md' - - LICENSE - - '.github/**' - - '.nuget/*' - drafts: false - -resources: - repositories: - - repository: self - type: git - ref: refs/heads/main - - repository: vcpkgRepo - name: Microsoft/vcpkg - type: github - endpoint: microsoft - ref: refs/tags/$(VCPKG_TAG) - - repository: testRepo - name: walbourn/directxmathtest - type: github - endpoint: microsoft - ref: refs/heads/main - -name: $(Year:yyyy).$(Month).$(DayOfMonth)$(Rev:.r) - -pool: - vmImage: windows-2022 - -variables: - Codeql.Enabled: false - VCPKG_ROOT: $(Build.SourcesDirectory)/vcpkg - VCPKG_CMAKE_DIR: $(Build.SourcesDirectory)/vcpkg/scripts/buildsystems/vcpkg.cmake - VCPKG_MANIFEST_DIR: $(Build.SourcesDirectory)/build - BASE_URL: https://github.com/brechtsanders/winlibs_mingw/releases/download - URL_MINGW32: $(BASE_URL)/12.2.0-14.0.6-10.0.0-ucrt-r2/winlibs-i686-posix-dwarf-gcc-12.2.0-llvm-14.0.6-mingw-w64ucrt-10.0.0-r2.zip - HASH_MINGW32: 'fcd1e11b896190da01c83d5b5fb0d37b7c61585e53446c2dab0009debc3915e757213882c35e35396329338de6f0222ba012e23a5af86932db45186a225d1272' - -jobs: - - job: MINGW32_BUILD - displayName: 'Minimalist GNU for Windows (MinGW32)' - steps: - - checkout: self - clean: true - fetchTags: false - fetchDepth: 1 - path: 's' - - checkout: vcpkgRepo - displayName: Fetch VCPKG - clean: true - fetchTags: false - fetchDepth: 1 - path: 's/vcpkg' - - checkout: testRepo - displayName: Fetch Tests - clean: true - fetchTags: false - fetchDepth: 1 - path: 's/Tests' - - task: CmdLine@2 - displayName: VCPKG Bootstrap - inputs: - script: | - call bootstrap-vcpkg.bat - echo ##vso[task.setvariable variable=VCPKG_DEFAULT_TRIPLET;]x86-mingw-static - echo ##vso[task.setvariable variable=VCPKG_DEFAULT_HOST_TRIPLET;]x86-mingw-static - - workingDirectory: $(Build.SourcesDirectory)\vcpkg - - task: PowerShell@2 - displayName: Install MinGW32 - inputs: - targetType: inline - script: | - $ProgressPreference = 'SilentlyContinue' - Write-Host "Downloading winlibs..." - Invoke-WebRequest -Uri "$(URL_MINGW32)" -OutFile "gw32.zip" - Write-Host "Downloaded." - $fileHash = Get-FileHash -Algorithm SHA512 gw32.zip | ForEach { $_.Hash} | Out-String - $filehash = $fileHash.Trim() - Write-Host "##[debug]SHA512: " $fileHash - if ($fileHash -ne '$(HASH_MINGW32)') { - Write-Error -Message "##[error]Computed hash does not match!" -ErrorAction Stop - } - Write-Host "Extracting winlibs..." - Expand-Archive -LiteralPath 'gw32.zip' - Write-Host "Extracted." - Write-Host "Added to path: $env:BUILD_SOURCESDIRECTORY\gw32\mingw32\bin" - Write-Host "##vso[task.prependpath]$env:BUILD_SOURCESDIRECTORY\gw32\mingw32\bin" - - workingDirectory: $(Build.SourcesDirectory) - - task: CmdLine@2 - displayName: GCC version - inputs: - script: g++ --version - - task: CMake@1 - displayName: CMake (MinGW32) Dbg - inputs: - cwd: . - cmakeArgs: > - -B out -DCMAKE_BUILD_TYPE="Debug" -DDXMATH_ARCHITECTURE=x86 - -DCMAKE_CXX_COMPILER="g++.exe" -G "MinGW Makefiles" - - task: CMake@1 - displayName: CMake (MinGW32) Build Dbg - inputs: - cwd: . - cmakeArgs: --build out - - task: CMake@1 - displayName: CMake (MinGW32) Rel - inputs: - cwd: . - cmakeArgs: > - -B out2 -DCMAKE_BUILD_TYPE="RelWithDebInfo" -DDXMATH_ARCHITECTURE=x86 - -DCMAKE_CXX_COMPILER="g++.exe" -G "MinGW Makefiles" - - task: CMake@1 - displayName: CMake (MinGW32) Build Rel - inputs: - cwd: . - cmakeArgs: --build out2 - - task: CMake@1 - displayName: CMake (MinGW32) Dbg NI - inputs: - cwd: . - cmakeArgs: > - -B out3 -DCMAKE_BUILD_TYPE="Debug" -DDXMATH_ARCHITECTURE=x86 - -DCMAKE_CXX_COMPILER="g++.exe" -G "MinGW Makefiles" - -DBUILD_NO_INTRINSICS=ON - - task: CMake@1 - displayName: CMake (MinGW32) Build Dbg NI - inputs: - cwd: . - cmakeArgs: --build out3 - - task: CMake@1 - displayName: CMake (MinGW32; XDSP) Dbg - inputs: - cwd: . - cmakeArgs: > - -B out4 -DCMAKE_BUILD_TYPE="Debug" -DDXMATH_ARCHITECTURE=x86 - -DCMAKE_CXX_COMPILER="g++.exe" -G "MinGW Makefiles" - -DBUILD_XDSP=ON - - task: CMake@1 - displayName: CMake (MinGW32; XDSP) Build Dbg - inputs: - cwd: . - cmakeArgs: --build out4 - - task: CMake@1 - displayName: CMake (MinGW32; SH DX11) Dbg - inputs: - cwd: . - cmakeArgs: > - -B out5 -DCMAKE_BUILD_TYPE="Debug" -DDXMATH_ARCHITECTURE=x86 - -DCMAKE_CXX_COMPILER="g++.exe" -G "MinGW Makefiles" - -DBUILD_SHMATH=ON -DBUILD_DX11=ON - - task: CMake@1 - displayName: CMake (MinGW32; SH DX11) Build Dbg - inputs: - cwd: . - cmakeArgs: --build out5 - - task: CmdLine@2 - displayName: VCPKG install packages - inputs: - script: call vcpkg install --x-manifest-root=$(VCPKG_MANIFEST_DIR) --triplet=x86-mingw-static - workingDirectory: $(VCPKG_ROOT) - - task: CMake@1 - displayName: CMake (MinGW32; SH DX12) Dbg - inputs: - cwd: . - cmakeArgs: > - -B out6 -DCMAKE_BUILD_TYPE="Debug" -DDXMATH_ARCHITECTURE=x86 -DCMAKE_CXX_COMPILER="g++.exe" -G "MinGW Makefiles" - -DBUILD_SHMATH=ON -DBUILD_DX12=ON - -DCMAKE_TOOLCHAIN_FILE="$(VCPKG_CMAKE_DIR)" -DVCPKG_MANIFEST_DIR="$(VCPKG_MANIFEST_DIR)" -DVCPKG_TARGET_TRIPLET=x86-mingw-static - - task: CMake@1 - displayName: CMake (MinGW32; SH DX12) Build Dbg - inputs: - cwd: . - cmakeArgs: --build out6 - - - job: MINGW64_BUILD - displayName: 'Minimalist GNU for Windows (MinGW-W64)' - steps: - - checkout: self - clean: true - fetchTags: false - fetchDepth: 1 - path: 's' - - checkout: vcpkgRepo - displayName: Fetch VCPKG - clean: true - fetchTags: false - fetchDepth: 1 - path: 's/vcpkg' - - checkout: testRepo - displayName: Fetch Tests - clean: true - fetchTags: false - fetchDepth: 1 - path: 's/Tests' - - task: CmdLine@2 - displayName: VCPKG Bootstrap - inputs: - script: | - call bootstrap-vcpkg.bat - echo ##vso[task.setvariable variable=VCPKG_DEFAULT_TRIPLET;]x64-mingw-static - echo ##vso[task.setvariable variable=VCPKG_DEFAULT_HOST_TRIPLET;]x64-mingw-static - - workingDirectory: $(Build.SourcesDirectory)\vcpkg - - task: CmdLine@2 - displayName: GCC version - inputs: - script: g++ --version - - task: CMake@1 - displayName: CMake (MinGW-W64) Dbg - inputs: - cwd: . - cmakeArgs: > - -B out -DCMAKE_BUILD_TYPE="Debug" -DDXMATH_ARCHITECTURE=x64 - -DCMAKE_CXX_COMPILER="g++.exe" -G "MinGW Makefiles" - - task: CMake@1 - displayName: CMake (MinGW-W64) Build Dbg - inputs: - cwd: . - cmakeArgs: --build out - - task: CMake@1 - displayName: CMake (MinGW-W64) Rel - inputs: - cwd: . - cmakeArgs: > - -B out2 -DCMAKE_BUILD_TYPE="RelWithDebInfo" -DDXMATH_ARCHITECTURE=x64 - -DCMAKE_CXX_COMPILER="g++.exe" -G "MinGW Makefiles" - - task: CMake@1 - displayName: CMake (MinGW-W64) Build Rel - inputs: - cwd: . - cmakeArgs: --build out2 - - task: CMake@1 - displayName: CMake (MinGW-W64) Dbg NI - inputs: - cwd: . - cmakeArgs: > - -B out3 -DCMAKE_BUILD_TYPE="Debug" -DDXMATH_ARCHITECTURE=x64 - -DCMAKE_CXX_COMPILER="g++.exe" -G "MinGW Makefiles" - -DBUILD_NO_INTRINSICS=ON - - task: CMake@1 - displayName: CMake (MinGW-W64) Build Dbg NI - inputs: - cwd: . - cmakeArgs: --build out3 - - task: CMake@1 - displayName: CMake (MinGW-W64; XDSP) Dbg - inputs: - cwd: . - cmakeArgs: > - -B out4 -DCMAKE_BUILD_TYPE="Debug" -DDXMATH_ARCHITECTURE=x64 - -DCMAKE_CXX_COMPILER="g++.exe" -G "MinGW Makefiles" - -DBUILD_XDSP=ON - - task: CMake@1 - displayName: CMake (MinGW-W64; XDSP) Build Dbg - inputs: - cwd: . - cmakeArgs: --build out4 - - task: CMake@1 - displayName: CMake (MinGW-W64; SH DX11) Dbg - inputs: - cwd: . - cmakeArgs: > - -B out5 -DCMAKE_BUILD_TYPE="Debug" -DDXMATH_ARCHITECTURE=x64 - -DCMAKE_CXX_COMPILER="g++.exe" -G "MinGW Makefiles" - -DBUILD_SHMATH=ON -DBUILD_DX11=ON - - task: CMake@1 - displayName: CMake (MinGW-W64; SH DX11) Build Dbg - inputs: - cwd: . - cmakeArgs: --build out5 - - task: CmdLine@2 - displayName: VCPKG install packages - inputs: - script: call vcpkg install --x-manifest-root=$(VCPKG_MANIFEST_DIR) --triplet=x64-mingw-static - workingDirectory: $(VCPKG_ROOT) - - task: CMake@1 - displayName: CMake (MinGW-W64; SH DX12) Dbg - inputs: - cwd: . - cmakeArgs: > - -B out6 -DCMAKE_BUILD_TYPE="Debug" -DDXMATH_ARCHITECTURE=x64 - -DCMAKE_CXX_COMPILER="g++.exe" -G "MinGW Makefiles" - -DBUILD_SHMATH=ON -DBUILD_DX12=ON - -DCMAKE_TOOLCHAIN_FILE="$(VCPKG_CMAKE_DIR)" -DVCPKG_MANIFEST_DIR="$(VCPKG_MANIFEST_DIR)" -DVCPKG_TARGET_TRIPLET=x64-mingw-static - - task: CMake@1 - displayName: CMake (MinGW-W64; SH DX12) Build Dbg - inputs: - cwd: . - cmakeArgs: --build out6 diff --git a/.azuredevops/pipelines/DirectXMath-GitHub-WSL-11.yml b/.azuredevops/pipelines/DirectXMath-GitHub-WSL-11.yml deleted file mode 100644 index 30f11cd5..00000000 --- a/.azuredevops/pipelines/DirectXMath-GitHub-WSL-11.yml +++ /dev/null @@ -1,88 +0,0 @@ -# Copyright (c) Microsoft Corporation. -# Licensed under the MIT License. -# -# http://go.microsoft.com/fwlink/?LinkID=615560 - -# Builds the math3 test suite for Windows Subsystem for Linux (WSL) - -schedules: - - cron: "0 3 * * *" - displayName: 'Nightly build' - branches: - include: - - main - -trigger: none - -pr: - branches: - include: - - main - paths: - include: - - '.azuredevops/pipelines/DirectXMath-GitHub-WSL-11.yml' - - CMake* - - build/*.cmake - - build/*.in - -resources: - repositories: - - repository: self - type: git - ref: refs/heads/main - trigger: none - - repository: testRepo - name: walbourn/directxmathtest - type: github - endpoint: microsoft - ref: refs/heads/main - -name: $(Year:yyyy).$(Month).$(DayOfMonth)$(Rev:.r) - -pool: - vmImage: ubuntu-22.04 - -variables: - Codeql.Enabled: false - SAL_URL: https://raw.githubusercontent.com/dotnet/runtime/v8.0.1/src/coreclr/pal/inc/rt/sal.h - SAL_HASH: 0f5a80b97564217db2ba3e4624cc9eb308e19cc9911dae21d983c4ab37003f4756473297ba81b386c498514cedc1ef5a3553d7002edc09aeb6a1335df973095f - -jobs: - - job: BUILD_WSL - displayName: 'Windows Subsystem for Linux (WSL)' - steps: - - checkout: self - clean: true - fetchTags: false - fetchDepth: 1 - path: 's' - - checkout: testRepo - displayName: Fetch Tests - clean: true - fetchTags: false - fetchDepth: 1 - path: 's/Tests' - - task: CMake@1 - displayName: DirectXMath Tests - inputs: - cwd: . - cmakeArgs: -B out -DBUILD_XDSP=ON -DBUILD_SHMATH=ON - - task: PowerShell@2 - displayName: Fetch SAL.H - inputs: - targetType: inline - script: | - $ProgressPreference = 'SilentlyContinue' - Invoke-WebRequest -Uri "$(SAL_URL)" -OutFile $(Build.SourcesDirectory)/Inc/sal.h - $fileHash = Get-FileHash -Algorithm SHA512 $(Build.SourcesDirectory)/Inc/sal.h | ForEach { $_.Hash} | Out-String - $filehash = $fileHash.Trim() - Write-Host "##[debug]SHA512: " $filehash - if ($fileHash -ne "$(SAL_HASH)") { - Write-Error -Message "##[error]Computed hash does not match!" -ErrorAction Stop - } - - - task: CMake@1 - displayName: DirectXMath Tests Build - inputs: - cwd: . - cmakeArgs: --build out -v diff --git a/.azuredevops/pipelines/DirectXMath-GitHub-WSL-13.yml b/.azuredevops/pipelines/DirectXMath-GitHub-WSL-13.yml deleted file mode 100644 index f00600c6..00000000 --- a/.azuredevops/pipelines/DirectXMath-GitHub-WSL-13.yml +++ /dev/null @@ -1,88 +0,0 @@ -# Copyright (c) Microsoft Corporation. -# Licensed under the MIT License. -# -# http://go.microsoft.com/fwlink/?LinkID=615560 - -# Builds the math3 test suite for Windows Subsystem for Linux (WSL) - -schedules: - - cron: "0 3 * * *" - displayName: 'Nightly build' - branches: - include: - - main - -trigger: none - -pr: - branches: - include: - - main - paths: - include: - - '.azuredevops/pipelines/DirectXMath-GitHub-WSL-13.yml' - - CMake* - - build/*.cmake - - build/*.in - -resources: - repositories: - - repository: self - type: git - ref: refs/heads/main - trigger: none - - repository: testRepo - name: walbourn/directxmathtest - type: github - endpoint: microsoft - ref: refs/heads/main - -name: $(Year:yyyy).$(Month).$(DayOfMonth)$(Rev:.r) - -pool: - vmImage: ubuntu-24.04 - -variables: - Codeql.Enabled: false - SAL_URL: https://raw.githubusercontent.com/dotnet/runtime/v8.0.1/src/coreclr/pal/inc/rt/sal.h - SAL_HASH: 0f5a80b97564217db2ba3e4624cc9eb308e19cc9911dae21d983c4ab37003f4756473297ba81b386c498514cedc1ef5a3553d7002edc09aeb6a1335df973095f - -jobs: - - job: BUILD_WSL - displayName: 'Windows Subsystem for Linux (WSL)' - steps: - - checkout: self - clean: true - fetchTags: false - fetchDepth: 1 - path: 's' - - checkout: testRepo - displayName: Fetch Tests - clean: true - fetchTags: false - fetchDepth: 1 - path: 's/Tests' - - task: CMake@1 - displayName: DirectXMath Tests - inputs: - cwd: . - cmakeArgs: -B out -DBUILD_XDSP=ON -DBUILD_SHMATH=ON - - task: PowerShell@2 - displayName: Fetch SAL.H - inputs: - targetType: inline - script: | - $ProgressPreference = 'SilentlyContinue' - Invoke-WebRequest -Uri "$(SAL_URL)" -OutFile $(Build.SourcesDirectory)/Inc/sal.h - $fileHash = Get-FileHash -Algorithm SHA512 $(Build.SourcesDirectory)/Inc/sal.h | ForEach { $_.Hash} | Out-String - $filehash = $fileHash.Trim() - Write-Host "##[debug]SHA512: " $filehash - if ($fileHash -ne "$(SAL_HASH)") { - Write-Error -Message "##[error]Computed hash does not match!" -ErrorAction Stop - } - - - task: CMake@1 - displayName: DirectXMath Tests Build - inputs: - cwd: . - cmakeArgs: --build out -v diff --git a/.github/workflows/mingw.yml b/.github/workflows/mingw.yml new file mode 100644 index 00000000..10117cc0 --- /dev/null +++ b/.github/workflows/mingw.yml @@ -0,0 +1,61 @@ +# Copyright (c) Microsoft Corporation. +# Licensed under the MIT License. +# +# http://go.microsoft.com/fwlink/?LinkID=615560 + +name: 'CMake (MinGW)' + +on: + push: + branches: "main" + paths-ignore: + - '*.md' + - LICENSE + - '.azuredevops/**' + - '.github/*.md' + - '.nuget/*' + - build/*.ps1 + pull_request: + branches: "main" + paths-ignore: + - '*.md' + - LICENSE + - '.azuredevops/**' + - '.github/*.md' + - '.nuget/*' + - build/*.ps1 + +permissions: + contents: read + +jobs: + build: + runs-on: windows-2022 + timeout-minutes: 20 + + strategy: + fail-fast: false + + matrix: + build_type: [x64-Debug-MinGW, x64-Release-MinGW] + + steps: + - uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0 + + - name: Clone test repository + uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0 + with: + repository: walbourn/directxmathtest + path: Tests + ref: main + + - name: 'Install Ninja' + run: choco install ninja + + - 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 }} From 4c77b800f99581603c0a2c9edd926bb3e030168c Mon Sep 17 00:00:00 2001 From: Chuck Walbourn Date: Thu, 9 Jul 2026 10:11:30 -0700 Subject: [PATCH 2/3] update preset --- CMakePresets.json | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/CMakePresets.json b/CMakePresets.json index 56eaceb8..9c913754 100644 --- a/CMakePresets.json +++ b/CMakePresets.json @@ -175,14 +175,14 @@ "name": "MinGW32", "hidden": true, "environment": { - "PATH": "$penv{PATH};c:/mingw32/bin;c:/mingw32/libexec/gcc/i686-w64-mingw32/12.2.0" + "PATH": "$penv{PATH};c:/mingw32/bin;c:/mingw32/libexec/gcc/i686-w64-mingw32/16.1.0" } }, { "name": "MinGW64", "hidden": true, "environment": { - "PATH": "$penv{PATH};c:/mingw64/bin;c:/mingw64/libexec/gcc/x86_64-w64-mingw32/12.2.0" + "PATH": "$penv{PATH};c:/mingw64/bin;c:/mingw64/libexec/gcc/x86_64-w64-mingw32/16.1.0" } }, { From 1314fcdd487223ab98d0e95537a3281493cdac0f Mon Sep 17 00:00:00 2001 From: Chuck Walbourn Date: Mon, 13 Jul 2026 20:59:02 -0700 Subject: [PATCH 3/3] Trim more redundant pipelines --- .../pipelines/DirectXMath-GitHub-Dev17.yml | 352 ------------------ .azuredevops/pipelines/DirectXMath-GitHub.yml | 160 -------- 2 files changed, 512 deletions(-) delete mode 100644 .azuredevops/pipelines/DirectXMath-GitHub-Dev17.yml delete mode 100644 .azuredevops/pipelines/DirectXMath-GitHub.yml diff --git a/.azuredevops/pipelines/DirectXMath-GitHub-Dev17.yml b/.azuredevops/pipelines/DirectXMath-GitHub-Dev17.yml deleted file mode 100644 index 2bc76667..00000000 --- a/.azuredevops/pipelines/DirectXMath-GitHub-Dev17.yml +++ /dev/null @@ -1,352 +0,0 @@ -# Copyright (c) Microsoft Corporation. -# Licensed under the MIT License. -# -# http://go.microsoft.com/fwlink/?LinkID=615560 - -# Builds the math3 test suite for DirectXMath. - -schedules: - - cron: "0 0 * * *" - displayName: 'Nightly build' - branches: - include: - - main - -# GitHub Actions handles MSBuild for CI/PR -trigger: none -pr: - branches: - include: - - main - paths: - include: - - '.azuredevops/pipelines/DirectXMath-GitHub-Dev17.yml' - -resources: - repositories: - - repository: self - type: git - ref: refs/heads/main - - repository: testRepo - name: walbourn/directxmathtest - type: github - endpoint: microsoft - ref: refs/heads/main - -name: $(Year:yyyy).$(Month).$(DayOfMonth)$(Rev:.r) - -pool: - vmImage: windows-2022 - -variables: - Codeql.Enabled: false - VC_PATH: 'C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC' - -jobs: - - job: BUILD_DEV17 - displayName: 'Visual Studio 2022 (v143)' - cancelTimeoutInMinutes: 1 - strategy: - maxParallel: 6 - matrix: - Release_arm64: - BuildPlatform: ARM64 - BuildConfiguration: Release - Debug_arm64: - BuildPlatform: ARM64 - BuildConfiguration: Debug - Release_x64: - BuildPlatform: x64 - BuildConfiguration: Release - Debug_x64: - BuildPlatform: x64 - BuildConfiguration: Debug - Release_x86: - BuildPlatform: x86 - BuildConfiguration: Release - Debug_x86: - BuildPlatform: x86 - BuildConfiguration: Debug - steps: - - checkout: self - clean: true - fetchTags: false - fetchDepth: 1 - path: 's' - - checkout: testRepo - displayName: Fetch Tests - clean: true - fetchTags: false - fetchDepth: 1 - path: 's/Tests' - - task: VSBuild@1 - displayName: Build solution math3_2022.sln - inputs: - solution: Tests/math3/math3_2022.sln - platform: '$(BuildPlatform)' - configuration: '$(BuildConfiguration)' - msbuildArchitecture: x64 - - task: VSBuild@1 - displayName: Build solution math3_2022.sln no-intrinsics - inputs: - solution: Tests/math3/math3_2022.sln - platform: '$(BuildPlatform)' - configuration: 'NI $(BuildConfiguration)' - msbuildArchitecture: x64 - - task: VSBuild@1 - displayName: Build solution math3_2022.sln SSE3 - inputs: - solution: Tests/math3/math3_2022.sln - platform: '$(BuildPlatform)' - configuration: 'SSE3 $(BuildConfiguration)' - msbuildArchitecture: x64 - condition: ne(variables['BuildPlatform'], 'ARM64') - - task: VSBuild@1 - displayName: Build solution math3_2022.sln SSE4 - inputs: - solution: Tests/math3/math3_2022.sln - platform: '$(BuildPlatform)' - configuration: 'SSE4 $(BuildConfiguration)' - msbuildArchitecture: x64 - condition: ne(variables['BuildPlatform'], 'ARM64') - - task: VSBuild@1 - displayName: Build solution math3_2022.sln AVX - inputs: - solution: Tests/math3/math3_2022.sln - platform: '$(BuildPlatform)' - configuration: 'AVX $(BuildConfiguration)' - msbuildArchitecture: x64 - condition: ne(variables['BuildPlatform'], 'ARM64') - - task: VSBuild@1 - displayName: Build solution math3_2022.sln AVX2 - inputs: - solution: Tests/math3/math3_2022.sln - platform: '$(BuildPlatform)' - configuration: 'AVX2 $(BuildConfiguration)' - msbuildArchitecture: x64 - condition: ne(variables['BuildPlatform'], 'ARM64') - - task: VSBuild@1 - displayName: Build solution math3_2022.sln x87 - inputs: - solution: Tests/math3/math3_2022.sln - platform: '$(BuildPlatform)' - configuration: 'x87 $(BuildConfiguration)' - msbuildArchitecture: x64 - condition: eq(variables['BuildPlatform'], 'x86') - - - job: BUILD_EXTS - displayName: 'Visual Studio 2022 (v143) SHMath and XDSP' - cancelTimeoutInMinutes: 1 - strategy: - maxParallel: 2 - matrix: - Release_arm64: - BuildPlatform: ARM64 - BuildConfiguration: Release - Debug_arm64: - BuildPlatform: ARM64 - BuildConfiguration: Debug - Release_x64: - BuildPlatform: x64 - BuildConfiguration: Release - Debug_x64: - BuildPlatform: x64 - BuildConfiguration: Debug - Release_x86: - BuildPlatform: x86 - BuildConfiguration: Release - Debug_x86: - BuildPlatform: x86 - BuildConfiguration: Debug - steps: - - checkout: self - clean: true - fetchTags: false - fetchDepth: 1 - path: 's' - - checkout: testRepo - displayName: Fetch Tests - clean: true - fetchTags: false - fetchDepth: 1 - path: 's/Tests' - - task: VSBuild@1 - displayName: Build solution shmath_2022.sln - inputs: - solution: Tests/shmath/shmath_2022.sln - platform: '$(BuildPlatform)' - configuration: '$(BuildConfiguration)' - msbuildArchitecture: x64 - - task: VSBuild@1 - displayName: Build solution XDSPTest_2022 - inputs: - solution: Tests/xdsp/XDSPTest_2022.sln - platform: '$(BuildPlatform)' - configuration: '$(BuildConfiguration)' - msbuildArchitecture: x64 - - - job: CMAKE_BUILD_X64 - displayName: 'CMake for X64 BUILD_TESTING=ON' - timeoutInMinutes: 60 - workspace: - clean: all - steps: - - checkout: self - clean: true - fetchTags: false - fetchDepth: 1 - path: 's' - - checkout: testRepo - displayName: Fetch Tests - clean: true - fetchTags: false - fetchDepth: 1 - path: 's/Tests' - - task: CmdLine@2 - displayName: Setup environment for CMake to use VS - inputs: - script: | - call "$(VC_PATH)\Auxiliary\Build\vcvars64.bat" - echo ##vso[task.setvariable variable=WindowsSdkVerBinPath;]%WindowsSdkVerBinPath% - echo ##vso[task.prependpath]%VSINSTALLDIR%Common7\IDE\CommonExtensions\Microsoft\CMake\Ninja - echo ##vso[task.prependpath]%VCINSTALLDIR%Tools\Llvm\x64\bin - echo ##vso[task.prependpath]%WindowsSdkBinPath%x64 - echo ##vso[task.prependpath]%WindowsSdkVerBinPath%x64 - echo ##vso[task.prependpath]%VCToolsInstallDir%bin\Hostx64\x64 - echo ##vso[task.setvariable variable=EXTERNAL_INCLUDE;]%EXTERNAL_INCLUDE% - echo ##vso[task.setvariable variable=INCLUDE;]%INCLUDE% - echo ##vso[task.setvariable variable=LIB;]%LIB% - - - task: CMake@1 - displayName: CMake (MSVC; x64-Debug) Config - inputs: - cwd: '$(Build.SourcesDirectory)' - cmakeArgs: --preset=x64-Debug - - task: CMake@1 - displayName: CMake (MSVC; x64-Debug) Build - inputs: - cwd: '$(Build.SourcesDirectory)' - cmakeArgs: --build out/build/x64-Debug -v - - task: CMake@1 - displayName: CMake (MSVC; x64-Release) Config - inputs: - cwd: '$(Build.SourcesDirectory)' - cmakeArgs: --preset=x64-Release - - task: CMake@1 - displayName: CMake (MSVC; x64-Release) Build - inputs: - cwd: '$(Build.SourcesDirectory)' - cmakeArgs: --build out/build/x64-Release -v - - task: CMake@1 - displayName: CMake (clang/LLVM; x64-Debug) Config - inputs: - cwd: '$(Build.SourcesDirectory)' - cmakeArgs: --preset=x64-Debug-Clang - - task: CMake@1 - displayName: CMake (clang/LLVM; x64-Debug) Build - inputs: - cwd: '$(Build.SourcesDirectory)' - cmakeArgs: --build out/build/x64-Debug-Clang -v - - task: CMake@1 - displayName: CMake (clang/LLVM; x64-Release) Config - inputs: - cwd: '$(Build.SourcesDirectory)' - cmakeArgs: --preset=x64-Release-Clang - - task: CMake@1 - displayName: CMake (clang/LLVM; x64-Release) Build - inputs: - cwd: '$(Build.SourcesDirectory)' - cmakeArgs: --build out/build/x64-Release-Clang -v - - - job: CMAKE_BUILD_ARM64 - displayName: 'CMake for ARM64 BUILD_TESTING=ON' - timeoutInMinutes: 60 - workspace: - clean: all - steps: - - checkout: self - clean: true - fetchTags: false - fetchDepth: 1 - path: 's' - - checkout: testRepo - displayName: Fetch Tests - clean: true - fetchTags: false - fetchDepth: 1 - path: 's/Tests' - - task: CmdLine@2 - displayName: Setup environment for CMake to use VS - inputs: - script: | - call "$(VC_PATH)\Auxiliary\Build\vcvarsamd64_arm64.bat" - echo ##vso[task.setvariable variable=WindowsSdkVerBinPath;]%WindowsSdkVerBinPath% - echo ##vso[task.prependpath]%VSINSTALLDIR%Common7\IDE\CommonExtensions\Microsoft\CMake\Ninja - echo ##vso[task.prependpath]%VCINSTALLDIR%Tools\Llvm\x64\bin - echo ##vso[task.prependpath]%WindowsSdkBinPath%x64 - echo ##vso[task.prependpath]%WindowsSdkVerBinPath%x64 - echo ##vso[task.prependpath]%VCToolsInstallDir%bin\Hostx64\arm64 - echo ##vso[task.setvariable variable=EXTERNAL_INCLUDE;]%EXTERNAL_INCLUDE% - echo ##vso[task.setvariable variable=INCLUDE;]%INCLUDE% - echo ##vso[task.setvariable variable=LIB;]%LIB% - - - task: CMake@1 - displayName: CMake (MSVC; arm64-Debug) Config - inputs: - cwd: '$(Build.SourcesDirectory)' - cmakeArgs: --preset=arm64-Debug - - task: CMake@1 - displayName: CMake (MSVC; arm64-Debug) Build - inputs: - cwd: '$(Build.SourcesDirectory)' - cmakeArgs: --build out/build/arm64-Debug -v - - task: CMake@1 - displayName: CMake (MSVC; arm64-Release) Config - inputs: - cwd: '$(Build.SourcesDirectory)' - cmakeArgs: --preset=arm64-Release - - task: CMake@1 - displayName: CMake (MSVC; arm64-Release) Build - inputs: - cwd: '$(Build.SourcesDirectory)' - cmakeArgs: --build out/build/arm64-Release -v - - task: CMake@1 - displayName: CMake (clang/LLVM; arm64-Debug) Config - inputs: - cwd: '$(Build.SourcesDirectory)' - cmakeArgs: --preset=arm64-Debug-Clang - - task: CMake@1 - displayName: CMake (clang/LLVM; arm64-Debug) Build - inputs: - cwd: '$(Build.SourcesDirectory)' - cmakeArgs: --build out/build/arm64-Debug-Clang -v - - task: CMake@1 - displayName: CMake (clang/LLVM; arm64-Release) Config - inputs: - cwd: '$(Build.SourcesDirectory)' - cmakeArgs: --preset=arm64-Release-Clang - - task: CMake@1 - displayName: CMake (clang/LLVM; arm64-Release) Build - inputs: - cwd: '$(Build.SourcesDirectory)' - cmakeArgs: --build out/build/arm64-Release-Clang -v - - task: CMake@1 - displayName: CMake (MSVC; arm64ec-Debug) Config - inputs: - cwd: '$(Build.SourcesDirectory)' - cmakeArgs: --preset=arm64ec-Debug - - task: CMake@1 - displayName: CMake (MSVC; arm64ec-Debug) Build - inputs: - cwd: '$(Build.SourcesDirectory)' - cmakeArgs: --build out/build/arm64ec-Debug -v - - task: CMake@1 - displayName: CMake (MSVC; arm64ec-Release) Config - inputs: - cwd: '$(Build.SourcesDirectory)' - cmakeArgs: --preset=arm64ec-Release - - task: CMake@1 - displayName: CMake (MSVC; arm64ec-Release) Build - inputs: - cwd: '$(Build.SourcesDirectory)' - cmakeArgs: --build out/build/arm64ec-Release -v diff --git a/.azuredevops/pipelines/DirectXMath-GitHub.yml b/.azuredevops/pipelines/DirectXMath-GitHub.yml deleted file mode 100644 index 217b54c8..00000000 --- a/.azuredevops/pipelines/DirectXMath-GitHub.yml +++ /dev/null @@ -1,160 +0,0 @@ -# Copyright (c) Microsoft Corporation. -# Licensed under the MIT License. -# -# http://go.microsoft.com/fwlink/?LinkID=615560 - -# Builds the math3 test suite for DirectXMath. - -schedules: - - cron: "0 0 * * *" - displayName: 'Nightly build' - branches: - include: - - main - -# GitHub Actions handles MSBuild for CI/PR -trigger: none -pr: - branches: - include: - - main - paths: - include: - - '.azuredevops/pipelines/DirectXMath-GitHub.yml' - -resources: - repositories: - - repository: self - type: git - ref: refs/heads/main - - repository: testRepo - name: walbourn/directxmathtest - type: github - endpoint: microsoft - ref: refs/heads/main - -name: $(Year:yyyy).$(Month).$(DayOfMonth)$(Rev:.r) - -pool: - vmImage: windows-2022 - -variables: - Codeql.Enabled: true - -jobs: - - job: BUILD_DEV16 - displayName: 'Visual Studio 2019 (v142)' - cancelTimeoutInMinutes: 1 - strategy: - maxParallel: 4 - matrix: - Release_x64: - BuildPlatform: x64 - BuildConfiguration: Release - Debug_x64: - BuildPlatform: x64 - BuildConfiguration: Debug - Release_x86: - BuildPlatform: x86 - BuildConfiguration: Release - Debug_x86: - BuildPlatform: x86 - BuildConfiguration: Debug - steps: - - checkout: self - clean: true - fetchTags: false - fetchDepth: 1 - path: 's' - - checkout: testRepo - displayName: Fetch Tests - clean: true - fetchTags: false - fetchDepth: 1 - path: 's/Tests' - - task: VSBuild@1 - displayName: Build solution math3_2019.sln - inputs: - solution: Tests/math3/math3_2019.sln - platform: '$(BuildPlatform)' - configuration: '$(BuildConfiguration)' - - task: VSBuild@1 - displayName: Build solution math3_2019.sln no-intrinsics - inputs: - solution: Tests/math3/math3_2019.sln - platform: '$(BuildPlatform)' - configuration: 'NI $(BuildConfiguration)' - - task: VSBuild@1 - displayName: Build solution math3_2019.sln SSE3 - inputs: - solution: Tests/math3/math3_2019.sln - platform: '$(BuildPlatform)' - configuration: 'SSE3 $(BuildConfiguration)' - - task: VSBuild@1 - displayName: Build solution math3_2019.sln SSE4 - inputs: - solution: Tests/math3/math3_2019.sln - platform: '$(BuildPlatform)' - configuration: 'SSE4 $(BuildConfiguration)' - - task: VSBuild@1 - displayName: Build solution math3_2019.sln AVX - inputs: - solution: Tests/math3/math3_2019.sln - platform: '$(BuildPlatform)' - configuration: 'AVX $(BuildConfiguration)' - - task: VSBuild@1 - displayName: Build solution math3_2019.sln AVX2 - inputs: - solution: Tests/math3/math3_2019.sln - platform: '$(BuildPlatform)' - configuration: 'AVX2 $(BuildConfiguration)' - - task: VSBuild@1 - displayName: Build solution math3_2019.sln x87 - inputs: - solution: Tests/math3/math3_2019.sln - platform: '$(BuildPlatform)' - configuration: 'x87 $(BuildConfiguration)' - condition: eq(variables['BuildPlatform'], 'x86') - - - job: BUILD_EXTS - displayName: 'Visual Studio 2019 (v142) SHMath and XDSP' - cancelTimeoutInMinutes: 1 - strategy: - maxParallel: 1 - matrix: - Release_x64: - BuildPlatform: x64 - BuildConfiguration: Release - Debug_x64: - BuildPlatform: x64 - BuildConfiguration: Debug - Release_x86: - BuildPlatform: x86 - BuildConfiguration: Release - Debug_x86: - BuildPlatform: x86 - BuildConfiguration: Debug - steps: - - checkout: self - clean: true - fetchTags: false - fetchDepth: 1 - path: 's' - - checkout: testRepo - displayName: Fetch Tests - clean: true - fetchTags: false - fetchDepth: 1 - path: 's/Tests' - - task: VSBuild@1 - displayName: Build solution shmath_2019.sln - inputs: - solution: Tests/shmath/shmath_2019.sln - platform: '$(BuildPlatform)' - configuration: '$(BuildConfiguration)' - - task: VSBuild@1 - displayName: Build solution XDSPTest_2019 - inputs: - solution: Tests/xdsp/XDSPTest_2019.sln - platform: '$(BuildPlatform)' - configuration: '$(BuildConfiguration)'