From c11a09db556dd04597fee497638ea9750d2366c0 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 2 Sep 2025 16:29:34 -0700 Subject: [PATCH] Bump actions/checkout from 4.2.2 to 5.0.0 (#629) --- .github/workflows/arm64.yml | 154 +++++++------- .github/workflows/arm64bvt.yml | 214 +++++++++---------- .github/workflows/bvt.yml | 266 +++++++++++------------ .github/workflows/codeql.yml | 2 +- .github/workflows/lint.yml | 2 +- .github/workflows/main.yml | 288 ++++++++++++------------- .github/workflows/msbuild.yml | 168 +++++++-------- .github/workflows/msvc.yml | 2 +- .github/workflows/test.yml | 376 ++++++++++++++++----------------- .github/workflows/uwp.yml | 192 ++++++++--------- .github/workflows/vcpkg.yml | 322 ++++++++++++++-------------- .github/workflows/wsl.yml | 220 +++++++++---------- 12 files changed, 1103 insertions(+), 1103 deletions(-) diff --git a/.github/workflows/arm64.yml b/.github/workflows/arm64.yml index c5d172c..2fcf2e4 100644 --- a/.github/workflows/arm64.yml +++ b/.github/workflows/arm64.yml @@ -1,77 +1,77 @@ -# Copyright (c) Microsoft Corporation. -# Licensed under the MIT License. -# -# http://go.microsoft.com/fwlink/?LinkId=248926 - -name: 'CMake (Windows on ARM64)' - -on: - push: - branches: "main" - paths-ignore: - - '*.md' - - LICENSE - - '.azuredevops/**' - - '.nuget/*' - - build/*.cmd - - build/*.json - - build/*.props - - build/*.ps1 - - build/*.targets - - build/*.xvd - pull_request: - branches: "main" - paths-ignore: - - '*.md' - - LICENSE - - '.azuredevops/**' - - '.nuget/*' - - build/*.cmd - - build/*.json - - build/*.props - - build/*.ps1 - - build/*.targets - - build/*.xvd - -permissions: - contents: read - -jobs: - build: - runs-on: windows-11-arm - - strategy: - fail-fast: false - - matrix: - build_type: [arm64-Debug, arm64-Release, arm64-Debug-UWP, arm64-Release-UWP] - - steps: - - uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2 - - - name: 'Install Ninja' - run: choco install ninja - - - uses: ilammy/msvc-dev-cmd@0b201ec74fa43914dc39ae48a89fd1d8cb592756 # v1.13.0 - with: - arch: arm64 - - - 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 }} - - - name: 'Clean up' - working-directory: ${{ github.workspace }} - run: Remove-Item -Path out -Recurse -Force - - - name: 'Configure CMake (DLL)' - working-directory: ${{ github.workspace }} - run: cmake --preset=${{ matrix.build_type }} -DBUILD_SHARED_LIBS=ON - - - name: 'Build (DLL)' - working-directory: ${{ github.workspace }} - run: cmake --build out\build\${{ matrix.build_type }} +# Copyright (c) Microsoft Corporation. +# Licensed under the MIT License. +# +# http://go.microsoft.com/fwlink/?LinkId=248926 + +name: 'CMake (Windows on ARM64)' + +on: + push: + branches: "main" + paths-ignore: + - '*.md' + - LICENSE + - '.azuredevops/**' + - '.nuget/*' + - build/*.cmd + - build/*.json + - build/*.props + - build/*.ps1 + - build/*.targets + - build/*.xvd + pull_request: + branches: "main" + paths-ignore: + - '*.md' + - LICENSE + - '.azuredevops/**' + - '.nuget/*' + - build/*.cmd + - build/*.json + - build/*.props + - build/*.ps1 + - build/*.targets + - build/*.xvd + +permissions: + contents: read + +jobs: + build: + runs-on: windows-11-arm + + strategy: + fail-fast: false + + matrix: + build_type: [arm64-Debug, arm64-Release, arm64-Debug-UWP, arm64-Release-UWP] + + steps: + - uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0 + + - name: 'Install Ninja' + run: choco install ninja + + - uses: ilammy/msvc-dev-cmd@0b201ec74fa43914dc39ae48a89fd1d8cb592756 # v1.13.0 + with: + arch: arm64 + + - 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 }} + + - name: 'Clean up' + working-directory: ${{ github.workspace }} + run: Remove-Item -Path out -Recurse -Force + + - name: 'Configure CMake (DLL)' + working-directory: ${{ github.workspace }} + run: cmake --preset=${{ matrix.build_type }} -DBUILD_SHARED_LIBS=ON + + - name: 'Build (DLL)' + working-directory: ${{ github.workspace }} + run: cmake --build out\build\${{ matrix.build_type }} diff --git a/.github/workflows/arm64bvt.yml b/.github/workflows/arm64bvt.yml index 1e51ac8..9459cf5 100644 --- a/.github/workflows/arm64bvt.yml +++ b/.github/workflows/arm64bvt.yml @@ -1,107 +1,107 @@ -# Copyright (c) Microsoft Corporation. -# Licensed under the MIT License. -# -# https://go.microsoft.com/fwlink/?LinkId=248926 - -name: 'BVTs (arm64)' - -on: - push: - branches: "main" - paths-ignore: - - '*.md' - - LICENSE - - '.azuredevops/**' - - '.nuget/*' - - build/*.cmd - - build/*.json - - build/*.props - - build/*.ps1 - - build/*.targets - - build/*.xvd - pull_request: - branches: "main" - paths-ignore: - - '*.md' - - LICENSE - - '.azuredevops/**' - - '.nuget/*' - - build/*.cmd - - build/*.json - - build/*.props - - build/*.ps1 - - build/*.targets - - build/*.xvd - -permissions: - contents: read - -jobs: - build: - runs-on: windows-11-arm - timeout-minutes: 60 - - strategy: - fail-fast: false - - matrix: - build_type: [arm64-Release] - - steps: - - uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2 - - - name: Clone test repository - uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2 - with: - repository: walbourn/directxtextest - path: Tests - ref: main - - - name: 'Install Ninja' - run: choco install ninja - - - uses: ilammy/msvc-dev-cmd@0b201ec74fa43914dc39ae48a89fd1d8cb592756 # v1.13.0 - with: - arch: arm64 - - - name: 'Set triplet' - shell: pwsh - run: echo "VCPKG_DEFAULT_TRIPLET=arm64-windows" >> $env:GITHUB_ENV - - - name: Get vcpkg commit hash - shell: pwsh - run: | - if ($Env:vcpkgRelease) { - echo "Using vcpkg commit from repo variable..." - $VCPKG_COMMIT_ID = $Env:vcpkgRelease - } - else { - echo "Fetching latest vcpkg commit hash..." - $commit = (git ls-remote https://github.com/microsoft/vcpkg.git HEAD | Select-String -Pattern '([a-f0-9]{40})').Matches.Value - $VCPKG_COMMIT_ID = $commit - } - Write-Host "VCPKG_COMMIT_ID=$VCPKG_COMMIT_ID" - echo "VCPKG_COMMIT_ID=$VCPKG_COMMIT_ID" >> $env:GITHUB_ENV - env: - vcpkgRelease: '${{ vars.VCPKG_COMMIT_ID }}' - - - uses: lukka/run-vcpkg@7d259227a1fb6471a0253dd5ab7419835228f7d7 # v11 - with: - runVcpkgInstall: true - vcpkgJsonGlob: '**/build/vcpkg.json' - vcpkgGitCommitId: '${{ env.VCPKG_COMMIT_ID }}' - - - name: 'Configure CMake' - working-directory: ${{ github.workspace }} - run: > - cmake --preset=${{ matrix.build_type }} -DBUILD_TESTING=ON -DBUILD_TOOLS=OFF -DBUILD_SAMPLE=OFF -DBUILD_BVT=ON - -DCMAKE_TOOLCHAIN_FILE="${{ github.workspace }}/vcpkg/scripts/buildsystems/vcpkg.cmake" -DVCPKG_MANIFEST_DIR="${{ github.workspace }}/build" - -DVCPKG_TARGET_TRIPLET="${env:VCPKG_DEFAULT_TRIPLET}" - - - name: 'Build' - working-directory: ${{ github.workspace }} - run: cmake --build out\build\${{ matrix.build_type }} - - - name: 'Run BVTs' - working-directory: ${{ github.workspace }} - run: ctest --preset=${{ matrix.build_type }} --output-on-failure +# Copyright (c) Microsoft Corporation. +# Licensed under the MIT License. +# +# https://go.microsoft.com/fwlink/?LinkId=248926 + +name: 'BVTs (arm64)' + +on: + push: + branches: "main" + paths-ignore: + - '*.md' + - LICENSE + - '.azuredevops/**' + - '.nuget/*' + - build/*.cmd + - build/*.json + - build/*.props + - build/*.ps1 + - build/*.targets + - build/*.xvd + pull_request: + branches: "main" + paths-ignore: + - '*.md' + - LICENSE + - '.azuredevops/**' + - '.nuget/*' + - build/*.cmd + - build/*.json + - build/*.props + - build/*.ps1 + - build/*.targets + - build/*.xvd + +permissions: + contents: read + +jobs: + build: + runs-on: windows-11-arm + timeout-minutes: 60 + + strategy: + fail-fast: false + + matrix: + build_type: [arm64-Release] + + steps: + - uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0 + + - name: Clone test repository + uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0 + with: + repository: walbourn/directxtextest + path: Tests + ref: main + + - name: 'Install Ninja' + run: choco install ninja + + - uses: ilammy/msvc-dev-cmd@0b201ec74fa43914dc39ae48a89fd1d8cb592756 # v1.13.0 + with: + arch: arm64 + + - name: 'Set triplet' + shell: pwsh + run: echo "VCPKG_DEFAULT_TRIPLET=arm64-windows" >> $env:GITHUB_ENV + + - name: Get vcpkg commit hash + shell: pwsh + run: | + if ($Env:vcpkgRelease) { + echo "Using vcpkg commit from repo variable..." + $VCPKG_COMMIT_ID = $Env:vcpkgRelease + } + else { + echo "Fetching latest vcpkg commit hash..." + $commit = (git ls-remote https://github.com/microsoft/vcpkg.git HEAD | Select-String -Pattern '([a-f0-9]{40})').Matches.Value + $VCPKG_COMMIT_ID = $commit + } + Write-Host "VCPKG_COMMIT_ID=$VCPKG_COMMIT_ID" + echo "VCPKG_COMMIT_ID=$VCPKG_COMMIT_ID" >> $env:GITHUB_ENV + env: + vcpkgRelease: '${{ vars.VCPKG_COMMIT_ID }}' + + - uses: lukka/run-vcpkg@7d259227a1fb6471a0253dd5ab7419835228f7d7 # v11 + with: + runVcpkgInstall: true + vcpkgJsonGlob: '**/build/vcpkg.json' + vcpkgGitCommitId: '${{ env.VCPKG_COMMIT_ID }}' + + - name: 'Configure CMake' + working-directory: ${{ github.workspace }} + run: > + cmake --preset=${{ matrix.build_type }} -DBUILD_TESTING=ON -DBUILD_TOOLS=OFF -DBUILD_SAMPLE=OFF -DBUILD_BVT=ON + -DCMAKE_TOOLCHAIN_FILE="${{ github.workspace }}/vcpkg/scripts/buildsystems/vcpkg.cmake" -DVCPKG_MANIFEST_DIR="${{ github.workspace }}/build" + -DVCPKG_TARGET_TRIPLET="${env:VCPKG_DEFAULT_TRIPLET}" + + - name: 'Build' + working-directory: ${{ github.workspace }} + run: cmake --build out\build\${{ matrix.build_type }} + + - name: 'Run BVTs' + working-directory: ${{ github.workspace }} + run: ctest --preset=${{ matrix.build_type }} --output-on-failure diff --git a/.github/workflows/bvt.yml b/.github/workflows/bvt.yml index 350f1ff..51430a5 100644 --- a/.github/workflows/bvt.yml +++ b/.github/workflows/bvt.yml @@ -1,133 +1,133 @@ -# Copyright (c) Microsoft Corporation. -# Licensed under the MIT License. -# -# https://go.microsoft.com/fwlink/?LinkId=248926 - -name: 'BVTs (x64)' - -on: - push: - branches: "main" - paths-ignore: - - '*.md' - - LICENSE - - '.azuredevops/**' - - '.nuget/*' - - build/*.cmd - - build/*.json - - build/*.props - - build/*.ps1 - - build/*.targets - - build/*.xvd - pull_request: - branches: "main" - paths-ignore: - - '*.md' - - LICENSE - - '.azuredevops/**' - - '.nuget/*' - - build/*.cmd - - build/*.json - - build/*.props - - build/*.ps1 - - build/*.targets - - build/*.xvd - -permissions: - contents: read - -jobs: - build: - runs-on: windows-2022 - timeout-minutes: 60 - - strategy: - fail-fast: false - - matrix: - toolver: ['14.29', '14'] - build_type: [x64-Release] - arch: [amd64] - - steps: - - uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2 - - - name: Clone test repository - uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2 - with: - repository: walbourn/directxtextest - 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: 'Set triplet' - shell: pwsh - run: | - if ("${{ matrix.arch }}" -eq "amd64") - { - echo "VCPKG_DEFAULT_TRIPLET=x64-windows" >> $env:GITHUB_ENV - } - elseif ("${{ matrix.arch }}" -eq "amd64_x86") - { - echo "VCPKG_DEFAULT_TRIPLET=x86-windows" >> $env:GITHUB_ENV - } - elseif ("${{ matrix.arch }}" -eq "amd64_arm64") - { - if ("${{ matrix.build_type }}" -match "^arm64ec") - { - echo "VCPKG_DEFAULT_TRIPLET=arm64ec-windows" >> $env:GITHUB_ENV - } - else - { - echo "VCPKG_DEFAULT_TRIPLET=arm64-windows" >> $env:GITHUB_ENV - } - } - else - { - echo "::error Unknown architecture/build-type triplet mapping" - } - - - name: Get vcpkg commit hash - shell: pwsh - run: | - if ($Env:vcpkgRelease) { - echo "Using vcpkg commit from repo variable..." - $VCPKG_COMMIT_ID = $Env:vcpkgRelease - } - else { - echo "Fetching latest vcpkg commit hash..." - $commit = (git ls-remote https://github.com/microsoft/vcpkg.git HEAD | Select-String -Pattern '([a-f0-9]{40})').Matches.Value - $VCPKG_COMMIT_ID = $commit - } - Write-Host "VCPKG_COMMIT_ID=$VCPKG_COMMIT_ID" - echo "VCPKG_COMMIT_ID=$VCPKG_COMMIT_ID" >> $env:GITHUB_ENV - env: - vcpkgRelease: '${{ vars.VCPKG_COMMIT_ID }}' - - - uses: lukka/run-vcpkg@7d259227a1fb6471a0253dd5ab7419835228f7d7 # v11 - with: - runVcpkgInstall: true - vcpkgJsonGlob: '**/build/vcpkg.json' - vcpkgGitCommitId: '${{ env.VCPKG_COMMIT_ID }}' - - - name: 'Configure CMake' - working-directory: ${{ github.workspace }} - run: > - cmake --preset=${{ matrix.build_type }} -DBUILD_TESTING=ON -DBUILD_TOOLS=OFF -DBUILD_SAMPLE=OFF -DBUILD_BVT=ON - -DCMAKE_TOOLCHAIN_FILE="${{ github.workspace }}/vcpkg/scripts/buildsystems/vcpkg.cmake" -DVCPKG_MANIFEST_DIR="${{ github.workspace }}/build" - -DVCPKG_TARGET_TRIPLET="${env:VCPKG_DEFAULT_TRIPLET}" - - - name: 'Build' - working-directory: ${{ github.workspace }} - run: cmake --build out\build\${{ matrix.build_type }} - - - name: 'Run BVTs' - working-directory: ${{ github.workspace }} - run: ctest --preset=${{ matrix.build_type }} --output-on-failure +# Copyright (c) Microsoft Corporation. +# Licensed under the MIT License. +# +# https://go.microsoft.com/fwlink/?LinkId=248926 + +name: 'BVTs (x64)' + +on: + push: + branches: "main" + paths-ignore: + - '*.md' + - LICENSE + - '.azuredevops/**' + - '.nuget/*' + - build/*.cmd + - build/*.json + - build/*.props + - build/*.ps1 + - build/*.targets + - build/*.xvd + pull_request: + branches: "main" + paths-ignore: + - '*.md' + - LICENSE + - '.azuredevops/**' + - '.nuget/*' + - build/*.cmd + - build/*.json + - build/*.props + - build/*.ps1 + - build/*.targets + - build/*.xvd + +permissions: + contents: read + +jobs: + build: + runs-on: windows-2022 + timeout-minutes: 60 + + strategy: + fail-fast: false + + matrix: + toolver: ['14.29', '14'] + build_type: [x64-Release] + arch: [amd64] + + steps: + - uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0 + + - name: Clone test repository + uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0 + with: + repository: walbourn/directxtextest + 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: 'Set triplet' + shell: pwsh + run: | + if ("${{ matrix.arch }}" -eq "amd64") + { + echo "VCPKG_DEFAULT_TRIPLET=x64-windows" >> $env:GITHUB_ENV + } + elseif ("${{ matrix.arch }}" -eq "amd64_x86") + { + echo "VCPKG_DEFAULT_TRIPLET=x86-windows" >> $env:GITHUB_ENV + } + elseif ("${{ matrix.arch }}" -eq "amd64_arm64") + { + if ("${{ matrix.build_type }}" -match "^arm64ec") + { + echo "VCPKG_DEFAULT_TRIPLET=arm64ec-windows" >> $env:GITHUB_ENV + } + else + { + echo "VCPKG_DEFAULT_TRIPLET=arm64-windows" >> $env:GITHUB_ENV + } + } + else + { + echo "::error Unknown architecture/build-type triplet mapping" + } + + - name: Get vcpkg commit hash + shell: pwsh + run: | + if ($Env:vcpkgRelease) { + echo "Using vcpkg commit from repo variable..." + $VCPKG_COMMIT_ID = $Env:vcpkgRelease + } + else { + echo "Fetching latest vcpkg commit hash..." + $commit = (git ls-remote https://github.com/microsoft/vcpkg.git HEAD | Select-String -Pattern '([a-f0-9]{40})').Matches.Value + $VCPKG_COMMIT_ID = $commit + } + Write-Host "VCPKG_COMMIT_ID=$VCPKG_COMMIT_ID" + echo "VCPKG_COMMIT_ID=$VCPKG_COMMIT_ID" >> $env:GITHUB_ENV + env: + vcpkgRelease: '${{ vars.VCPKG_COMMIT_ID }}' + + - uses: lukka/run-vcpkg@7d259227a1fb6471a0253dd5ab7419835228f7d7 # v11 + with: + runVcpkgInstall: true + vcpkgJsonGlob: '**/build/vcpkg.json' + vcpkgGitCommitId: '${{ env.VCPKG_COMMIT_ID }}' + + - name: 'Configure CMake' + working-directory: ${{ github.workspace }} + run: > + cmake --preset=${{ matrix.build_type }} -DBUILD_TESTING=ON -DBUILD_TOOLS=OFF -DBUILD_SAMPLE=OFF -DBUILD_BVT=ON + -DCMAKE_TOOLCHAIN_FILE="${{ github.workspace }}/vcpkg/scripts/buildsystems/vcpkg.cmake" -DVCPKG_MANIFEST_DIR="${{ github.workspace }}/build" + -DVCPKG_TARGET_TRIPLET="${env:VCPKG_DEFAULT_TRIPLET}" + + - name: 'Build' + working-directory: ${{ github.workspace }} + run: cmake --build out\build\${{ matrix.build_type }} + + - name: 'Run BVTs' + working-directory: ${{ github.workspace }} + run: ctest --preset=${{ matrix.build_type }} --output-on-failure diff --git a/.github/workflows/codeql.yml b/.github/workflows/codeql.yml index fed5466..44ec6af 100644 --- a/.github/workflows/codeql.yml +++ b/.github/workflows/codeql.yml @@ -51,7 +51,7 @@ jobs: steps: - name: Checkout repository - uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2 + uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0 - name: 'Install Ninja' run: choco install ninja diff --git a/.github/workflows/lint.yml b/.github/workflows/lint.yml index 36fb664..75d58d2 100644 --- a/.github/workflows/lint.yml +++ b/.github/workflows/lint.yml @@ -25,7 +25,7 @@ jobs: steps: - name: Checkout repository - uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2 + uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0 with: fetch-depth: 0 diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index ba7a127..2bba6fc 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -1,144 +1,144 @@ -# Copyright (c) Microsoft Corporation. -# Licensed under the MIT License. -# -# http://go.microsoft.com/fwlink/?LinkId=248926 - -name: 'CMake (Windows)' - -on: - push: - branches: "main" - paths-ignore: - - '*.md' - - LICENSE - - '.azuredevops/**' - - '.nuget/*' - - build/*.cmd - - build/*.json - - build/*.props - - build/*.ps1 - - build/*.targets - - build/*.xvd - pull_request: - branches: "main" - paths-ignore: - - '*.md' - - LICENSE - - '.azuredevops/**' - - '.nuget/*' - - build/*.cmd - - build/*.json - - build/*.props - - build/*.ps1 - - build/*.targets - - build/*.xvd - -permissions: - contents: read - -jobs: - build: - runs-on: windows-2022 - - strategy: - fail-fast: false - - matrix: - toolver: ['14.29', '14'] - 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-Release - arch: amd64_x86 - - toolver: '14' - build_type: x86-Debug - arch: amd64_x86 - - toolver: '14' - build_type: x86-Release - arch: amd64_x86 - - toolver: '14' - build_type: arm64-Debug - arch: amd64_arm64 - - toolver: '14' - build_type: arm64-Release - arch: amd64_arm64 - - toolver: '14' - build_type: arm64ec-Debug - arch: amd64_arm64 - - toolver: '14' - build_type: arm64ec-Release - arch: amd64_arm64 - - toolver: '14' - build_type: x64-Debug-Win8 - arch: amd64 - - toolver: '14' - build_type: x64-Release-Win8 - arch: amd64 - - toolver: '14' - build_type: x64-Debug-Clang - arch: amd64 - - toolver: '14' - build_type: x64-Release-Clang - arch: amd64 - - toolver: '14' - build_type: x86-Debug-Clang - arch: amd64_x86 - - toolver: '14' - build_type: x86-Release-Clang - arch: amd64_x86 - - toolver: '14' - build_type: arm64-Debug-Clang - arch: amd64_arm64 - - toolver: '14' - build_type: arm64-Release-Clang - arch: amd64_arm64 - - steps: - - uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2 - - - 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 }} - - - name: 'Clean up' - working-directory: ${{ github.workspace }} - run: Remove-Item -Path out -Recurse -Force - - - if: matrix.arch != 'amd64_arm64' - name: 'Configure CMake (Spectre)' - working-directory: ${{ github.workspace }} - run: cmake --preset=${{ matrix.build_type }} -DENABLE_SPECTRE_MITIGATION=ON - - - if: matrix.arch != 'amd64_arm64' - name: 'Build (Spectre)' - working-directory: ${{ github.workspace }} - run: cmake --build out\build\${{ matrix.build_type }} - - - if: matrix.arch != 'amd64_arm64' - name: 'Clean up' - working-directory: ${{ github.workspace }} - run: Remove-Item -Path out -Recurse -Force - - - name: 'Configure CMake (DLL)' - working-directory: ${{ github.workspace }} - run: cmake --preset=${{ matrix.build_type }} -DBUILD_SHARED_LIBS=ON - - - name: 'Build (DLL)' - working-directory: ${{ github.workspace }} - run: cmake --build out\build\${{ matrix.build_type }} +# Copyright (c) Microsoft Corporation. +# Licensed under the MIT License. +# +# http://go.microsoft.com/fwlink/?LinkId=248926 + +name: 'CMake (Windows)' + +on: + push: + branches: "main" + paths-ignore: + - '*.md' + - LICENSE + - '.azuredevops/**' + - '.nuget/*' + - build/*.cmd + - build/*.json + - build/*.props + - build/*.ps1 + - build/*.targets + - build/*.xvd + pull_request: + branches: "main" + paths-ignore: + - '*.md' + - LICENSE + - '.azuredevops/**' + - '.nuget/*' + - build/*.cmd + - build/*.json + - build/*.props + - build/*.ps1 + - build/*.targets + - build/*.xvd + +permissions: + contents: read + +jobs: + build: + runs-on: windows-2022 + + strategy: + fail-fast: false + + matrix: + toolver: ['14.29', '14'] + 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-Release + arch: amd64_x86 + - toolver: '14' + build_type: x86-Debug + arch: amd64_x86 + - toolver: '14' + build_type: x86-Release + arch: amd64_x86 + - toolver: '14' + build_type: arm64-Debug + arch: amd64_arm64 + - toolver: '14' + build_type: arm64-Release + arch: amd64_arm64 + - toolver: '14' + build_type: arm64ec-Debug + arch: amd64_arm64 + - toolver: '14' + build_type: arm64ec-Release + arch: amd64_arm64 + - toolver: '14' + build_type: x64-Debug-Win8 + arch: amd64 + - toolver: '14' + build_type: x64-Release-Win8 + arch: amd64 + - toolver: '14' + build_type: x64-Debug-Clang + arch: amd64 + - toolver: '14' + build_type: x64-Release-Clang + arch: amd64 + - toolver: '14' + build_type: x86-Debug-Clang + arch: amd64_x86 + - toolver: '14' + build_type: x86-Release-Clang + arch: amd64_x86 + - toolver: '14' + build_type: arm64-Debug-Clang + arch: amd64_arm64 + - toolver: '14' + build_type: arm64-Release-Clang + arch: amd64_arm64 + + steps: + - uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0 + + - 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 }} + + - name: 'Clean up' + working-directory: ${{ github.workspace }} + run: Remove-Item -Path out -Recurse -Force + + - if: matrix.arch != 'amd64_arm64' + name: 'Configure CMake (Spectre)' + working-directory: ${{ github.workspace }} + run: cmake --preset=${{ matrix.build_type }} -DENABLE_SPECTRE_MITIGATION=ON + + - if: matrix.arch != 'amd64_arm64' + name: 'Build (Spectre)' + working-directory: ${{ github.workspace }} + run: cmake --build out\build\${{ matrix.build_type }} + + - if: matrix.arch != 'amd64_arm64' + name: 'Clean up' + working-directory: ${{ github.workspace }} + run: Remove-Item -Path out -Recurse -Force + + - name: 'Configure CMake (DLL)' + working-directory: ${{ github.workspace }} + run: cmake --preset=${{ matrix.build_type }} -DBUILD_SHARED_LIBS=ON + + - name: 'Build (DLL)' + working-directory: ${{ github.workspace }} + run: cmake --build out\build\${{ matrix.build_type }} diff --git a/.github/workflows/msbuild.yml b/.github/workflows/msbuild.yml index 16719ae..1b220bf 100644 --- a/.github/workflows/msbuild.yml +++ b/.github/workflows/msbuild.yml @@ -1,84 +1,84 @@ -# Copyright (c) Microsoft Corporation. -# Licensed under the MIT License. -# -# http://go.microsoft.com/fwlink/?LinkId=248926 - -name: MSBuild - -on: - push: - branches: "main" - paths-ignore: - - '*.md' - - LICENSE - - '.azuredevops/**' - - '.nuget/*' - - build/* - pull_request: - branches: "main" - paths-ignore: - - '*.md' - - LICENSE - - '.azuredevops/**' - - '.nuget/*' - - build/* - -permissions: - contents: read - -jobs: - build: - runs-on: windows-2022 # has v142 tools but not v142 spectre libs - - strategy: - fail-fast: false - - matrix: - vs: [2019, 2022] - build_type: [Debug, Release] - platform: [x86, x64, ARM64] - exclude: - - vs: 2019 - platform: ARM64 - - steps: - - uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2 - - - name: Add MSBuild to PATH - uses: microsoft/setup-msbuild@6fb02220983dee41ce7ae257b6f4d8f9bf5ed4ce # v2.0.0 - - - if: matrix.platform != 'ARM64' - name: Build - working-directory: ${{ github.workspace }} - run: > - msbuild /m /p:Configuration=${{ matrix.build_type }} /p:Platform=${{ matrix.platform }} - DirectXTex_Desktop_${{ matrix.vs }}.sln - - - name: 'Build (Windows 10)' - working-directory: ${{ github.workspace }} - run: > - msbuild /m /p:Configuration=${{ matrix.build_type }} /p:Platform=${{ matrix.platform }} - DirectXTex_Desktop_${{ matrix.vs }}_Win10.sln - - - if: matrix.vs == '2022' - name: 'Build (UWP)' - working-directory: ${{ github.workspace }} - run: > - msbuild /m /p:Configuration=${{ matrix.build_type }} /p:Platform=${{ matrix.platform }} - DirectXTex_Windows10_2022.sln - - - if: matrix.platform != 'ARM64' && matrix.vs != '2019' - name: 'Build (Spectre)' - working-directory: ${{ github.workspace }} - run: > - msbuild /m /p:Configuration=${{ matrix.build_type }} /p:Platform=${{ matrix.platform }} - /p:SpectreMitigation=Spectre - DirectXTex_Desktop_${{ matrix.vs }}.sln - - - if: matrix.platform != 'ARM64' && matrix.vs != '2019' - name: 'Build (Spectre Windows 10)' - working-directory: ${{ github.workspace }} - run: > - msbuild /m /p:Configuration=${{ matrix.build_type }} /p:Platform=${{ matrix.platform }} - /p:SpectreMitigation=Spectre - DirectXTex_Desktop_${{ matrix.vs }}_Win10.sln +# Copyright (c) Microsoft Corporation. +# Licensed under the MIT License. +# +# http://go.microsoft.com/fwlink/?LinkId=248926 + +name: MSBuild + +on: + push: + branches: "main" + paths-ignore: + - '*.md' + - LICENSE + - '.azuredevops/**' + - '.nuget/*' + - build/* + pull_request: + branches: "main" + paths-ignore: + - '*.md' + - LICENSE + - '.azuredevops/**' + - '.nuget/*' + - build/* + +permissions: + contents: read + +jobs: + build: + runs-on: windows-2022 # has v142 tools but not v142 spectre libs + + strategy: + fail-fast: false + + matrix: + vs: [2019, 2022] + build_type: [Debug, Release] + platform: [x86, x64, ARM64] + exclude: + - vs: 2019 + platform: ARM64 + + steps: + - uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0 + + - name: Add MSBuild to PATH + uses: microsoft/setup-msbuild@6fb02220983dee41ce7ae257b6f4d8f9bf5ed4ce # v2.0.0 + + - if: matrix.platform != 'ARM64' + name: Build + working-directory: ${{ github.workspace }} + run: > + msbuild /m /p:Configuration=${{ matrix.build_type }} /p:Platform=${{ matrix.platform }} + DirectXTex_Desktop_${{ matrix.vs }}.sln + + - name: 'Build (Windows 10)' + working-directory: ${{ github.workspace }} + run: > + msbuild /m /p:Configuration=${{ matrix.build_type }} /p:Platform=${{ matrix.platform }} + DirectXTex_Desktop_${{ matrix.vs }}_Win10.sln + + - if: matrix.vs == '2022' + name: 'Build (UWP)' + working-directory: ${{ github.workspace }} + run: > + msbuild /m /p:Configuration=${{ matrix.build_type }} /p:Platform=${{ matrix.platform }} + DirectXTex_Windows10_2022.sln + + - if: matrix.platform != 'ARM64' && matrix.vs != '2019' + name: 'Build (Spectre)' + working-directory: ${{ github.workspace }} + run: > + msbuild /m /p:Configuration=${{ matrix.build_type }} /p:Platform=${{ matrix.platform }} + /p:SpectreMitigation=Spectre + DirectXTex_Desktop_${{ matrix.vs }}.sln + + - if: matrix.platform != 'ARM64' && matrix.vs != '2019' + name: 'Build (Spectre Windows 10)' + working-directory: ${{ github.workspace }} + run: > + msbuild /m /p:Configuration=${{ matrix.build_type }} /p:Platform=${{ matrix.platform }} + /p:SpectreMitigation=Spectre + DirectXTex_Desktop_${{ matrix.vs }}_Win10.sln diff --git a/.github/workflows/msvc.yml b/.github/workflows/msvc.yml index 4ea1ecd..e3e2c42 100644 --- a/.github/workflows/msvc.yml +++ b/.github/workflows/msvc.yml @@ -49,7 +49,7 @@ jobs: steps: - name: Checkout repository - uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2 + uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0 - uses: ilammy/msvc-dev-cmd@0b201ec74fa43914dc39ae48a89fd1d8cb592756 # v1.13.0 with: diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index 08c4673..f248021 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -1,188 +1,188 @@ -# Copyright (c) Microsoft Corporation. -# Licensed under the MIT License. -# -# https://go.microsoft.com/fwlink/?LinkId=248926 - -name: 'CTest (Windows)' - -on: - push: - branches: "main" - paths-ignore: - - '*.md' - - LICENSE - - '.azuredevops/**' - - '.nuget/*' - - build/*.cmd - - build/*.json - - build/*.props - - build/*.ps1 - - build/*.targets - - build/*.xvd - pull_request: - branches: "main" - paths-ignore: - - '*.md' - - LICENSE - - '.azuredevops/**' - - '.nuget/*' - - build/*.cmd - - build/*.json - - build/*.props - - build/*.ps1 - - build/*.targets - - build/*.xvd - -env: - DIRECTXTEX_MEDIA_PATH: ${{ github.workspace }}/Media - -permissions: - contents: read - -jobs: - build: - runs-on: windows-2022 - timeout-minutes: 60 - - strategy: - fail-fast: false - - matrix: - toolver: ['14.29', '14'] - 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-Release - arch: amd64_x86 - - toolver: '14' - build_type: x86-Debug - arch: amd64_x86 - - toolver: '14' - build_type: x86-Release - arch: amd64_x86 - - toolver: '14' - build_type: x64-Debug-Clang - arch: amd64 - - toolver: '14' - build_type: x64-Release-Clang - arch: amd64 - - toolver: '14' - build_type: x86-Debug-Clang - arch: amd64_x86 - - toolver: '14' - build_type: x86-Release-Clang - arch: amd64_x86 - - toolver: '14' - build_type: arm64-Debug - arch: amd64_arm64 - - toolver: '14' - build_type: arm64-Release - arch: amd64_arm64 - - toolver: '14' - build_type: arm64ec-Debug - arch: amd64_arm64 - - toolver: '14' - build_type: arm64ec-Release - arch: amd64_arm64 - - steps: - - uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2 - - - name: Clone test repository - uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2 - with: - repository: walbourn/directxtextest - 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: 'Set triplet' - shell: pwsh - run: | - if ("${{ matrix.arch }}" -eq "amd64") - { - echo "VCPKG_DEFAULT_TRIPLET=x64-windows" >> $env:GITHUB_ENV - } - elseif ("${{ matrix.arch }}" -eq "amd64_x86") - { - echo "VCPKG_DEFAULT_TRIPLET=x86-windows" >> $env:GITHUB_ENV - } - elseif ("${{ matrix.arch }}" -eq "amd64_arm64") - { - if ("${{ matrix.build_type }}" -match "^arm64ec") - { - echo "VCPKG_DEFAULT_TRIPLET=arm64ec-windows" >> $env:GITHUB_ENV - } - else - { - echo "VCPKG_DEFAULT_TRIPLET=arm64-windows" >> $env:GITHUB_ENV - } - } - else - { - echo "::error Unknown architecture/build-type triplet mapping" - } - - - name: Get vcpkg commit hash - shell: pwsh - run: | - if ($Env:vcpkgRelease) { - echo "Using vcpkg commit from repo variable..." - $VCPKG_COMMIT_ID = $Env:vcpkgRelease - } - else { - echo "Fetching latest vcpkg commit hash..." - $commit = (git ls-remote https://github.com/microsoft/vcpkg.git HEAD | Select-String -Pattern '([a-f0-9]{40})').Matches.Value - $VCPKG_COMMIT_ID = $commit - } - Write-Host "VCPKG_COMMIT_ID=$VCPKG_COMMIT_ID" - echo "VCPKG_COMMIT_ID=$VCPKG_COMMIT_ID" >> $env:GITHUB_ENV - env: - vcpkgRelease: '${{ vars.VCPKG_COMMIT_ID }}' - - - uses: lukka/run-vcpkg@7d259227a1fb6471a0253dd5ab7419835228f7d7 # v11 - with: - runVcpkgInstall: true - vcpkgJsonGlob: '**/build/vcpkg.json' - vcpkgGitCommitId: '${{ env.VCPKG_COMMIT_ID }}' - - - name: 'Configure CMake' - working-directory: ${{ github.workspace }} - run: > - cmake --preset=${{ matrix.build_type }} -DBUILD_TESTING=ON -DBUILD_TOOLS=OFF -DBUILD_SAMPLE=OFF - -DENABLE_LIBJPEG_SUPPORT=ON -DENABLE_LIBPNG_SUPPORT=ON - -DCMAKE_TOOLCHAIN_FILE="${{ github.workspace }}/vcpkg/scripts/buildsystems/vcpkg.cmake" - -DVCPKG_MANIFEST_DIR="${{ github.workspace }}/build" - -DVCPKG_TARGET_TRIPLET="${env:VCPKG_DEFAULT_TRIPLET}" - - - name: 'Build' - working-directory: ${{ github.workspace }} - run: cmake --build out\build\${{ matrix.build_type }} - - - name: 'Clean up' - working-directory: ${{ github.workspace }} - run: Remove-Item -Path out -Recurse -Force - - - name: 'Configure CMake (DLL)' - working-directory: ${{ github.workspace }} - run: > - cmake --preset=${{ matrix.build_type }} -DBUILD_TESTING=ON -DBUILD_TOOLS=OFF -DBUILD_SAMPLE=OFF - -DENABLE_LIBJPEG_SUPPORT=ON -DENABLE_LIBPNG_SUPPORT=ON - -DCMAKE_TOOLCHAIN_FILE="${{ github.workspace }}/vcpkg/scripts/buildsystems/vcpkg.cmake" - -DVCPKG_MANIFEST_DIR="${{ github.workspace }}/build" - -DVCPKG_TARGET_TRIPLET="${env:VCPKG_DEFAULT_TRIPLET}" -DBUILD_SHARED_LIBS=ON - - - name: 'Build (DLL)' - working-directory: ${{ github.workspace }} - run: cmake --build out\build\${{ matrix.build_type }} +# Copyright (c) Microsoft Corporation. +# Licensed under the MIT License. +# +# https://go.microsoft.com/fwlink/?LinkId=248926 + +name: 'CTest (Windows)' + +on: + push: + branches: "main" + paths-ignore: + - '*.md' + - LICENSE + - '.azuredevops/**' + - '.nuget/*' + - build/*.cmd + - build/*.json + - build/*.props + - build/*.ps1 + - build/*.targets + - build/*.xvd + pull_request: + branches: "main" + paths-ignore: + - '*.md' + - LICENSE + - '.azuredevops/**' + - '.nuget/*' + - build/*.cmd + - build/*.json + - build/*.props + - build/*.ps1 + - build/*.targets + - build/*.xvd + +env: + DIRECTXTEX_MEDIA_PATH: ${{ github.workspace }}/Media + +permissions: + contents: read + +jobs: + build: + runs-on: windows-2022 + timeout-minutes: 60 + + strategy: + fail-fast: false + + matrix: + toolver: ['14.29', '14'] + 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-Release + arch: amd64_x86 + - toolver: '14' + build_type: x86-Debug + arch: amd64_x86 + - toolver: '14' + build_type: x86-Release + arch: amd64_x86 + - toolver: '14' + build_type: x64-Debug-Clang + arch: amd64 + - toolver: '14' + build_type: x64-Release-Clang + arch: amd64 + - toolver: '14' + build_type: x86-Debug-Clang + arch: amd64_x86 + - toolver: '14' + build_type: x86-Release-Clang + arch: amd64_x86 + - toolver: '14' + build_type: arm64-Debug + arch: amd64_arm64 + - toolver: '14' + build_type: arm64-Release + arch: amd64_arm64 + - toolver: '14' + build_type: arm64ec-Debug + arch: amd64_arm64 + - toolver: '14' + build_type: arm64ec-Release + arch: amd64_arm64 + + steps: + - uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0 + + - name: Clone test repository + uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0 + with: + repository: walbourn/directxtextest + 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: 'Set triplet' + shell: pwsh + run: | + if ("${{ matrix.arch }}" -eq "amd64") + { + echo "VCPKG_DEFAULT_TRIPLET=x64-windows" >> $env:GITHUB_ENV + } + elseif ("${{ matrix.arch }}" -eq "amd64_x86") + { + echo "VCPKG_DEFAULT_TRIPLET=x86-windows" >> $env:GITHUB_ENV + } + elseif ("${{ matrix.arch }}" -eq "amd64_arm64") + { + if ("${{ matrix.build_type }}" -match "^arm64ec") + { + echo "VCPKG_DEFAULT_TRIPLET=arm64ec-windows" >> $env:GITHUB_ENV + } + else + { + echo "VCPKG_DEFAULT_TRIPLET=arm64-windows" >> $env:GITHUB_ENV + } + } + else + { + echo "::error Unknown architecture/build-type triplet mapping" + } + + - name: Get vcpkg commit hash + shell: pwsh + run: | + if ($Env:vcpkgRelease) { + echo "Using vcpkg commit from repo variable..." + $VCPKG_COMMIT_ID = $Env:vcpkgRelease + } + else { + echo "Fetching latest vcpkg commit hash..." + $commit = (git ls-remote https://github.com/microsoft/vcpkg.git HEAD | Select-String -Pattern '([a-f0-9]{40})').Matches.Value + $VCPKG_COMMIT_ID = $commit + } + Write-Host "VCPKG_COMMIT_ID=$VCPKG_COMMIT_ID" + echo "VCPKG_COMMIT_ID=$VCPKG_COMMIT_ID" >> $env:GITHUB_ENV + env: + vcpkgRelease: '${{ vars.VCPKG_COMMIT_ID }}' + + - uses: lukka/run-vcpkg@7d259227a1fb6471a0253dd5ab7419835228f7d7 # v11 + with: + runVcpkgInstall: true + vcpkgJsonGlob: '**/build/vcpkg.json' + vcpkgGitCommitId: '${{ env.VCPKG_COMMIT_ID }}' + + - name: 'Configure CMake' + working-directory: ${{ github.workspace }} + run: > + cmake --preset=${{ matrix.build_type }} -DBUILD_TESTING=ON -DBUILD_TOOLS=OFF -DBUILD_SAMPLE=OFF + -DENABLE_LIBJPEG_SUPPORT=ON -DENABLE_LIBPNG_SUPPORT=ON + -DCMAKE_TOOLCHAIN_FILE="${{ github.workspace }}/vcpkg/scripts/buildsystems/vcpkg.cmake" + -DVCPKG_MANIFEST_DIR="${{ github.workspace }}/build" + -DVCPKG_TARGET_TRIPLET="${env:VCPKG_DEFAULT_TRIPLET}" + + - name: 'Build' + working-directory: ${{ github.workspace }} + run: cmake --build out\build\${{ matrix.build_type }} + + - name: 'Clean up' + working-directory: ${{ github.workspace }} + run: Remove-Item -Path out -Recurse -Force + + - name: 'Configure CMake (DLL)' + working-directory: ${{ github.workspace }} + run: > + cmake --preset=${{ matrix.build_type }} -DBUILD_TESTING=ON -DBUILD_TOOLS=OFF -DBUILD_SAMPLE=OFF + -DENABLE_LIBJPEG_SUPPORT=ON -DENABLE_LIBPNG_SUPPORT=ON + -DCMAKE_TOOLCHAIN_FILE="${{ github.workspace }}/vcpkg/scripts/buildsystems/vcpkg.cmake" + -DVCPKG_MANIFEST_DIR="${{ github.workspace }}/build" + -DVCPKG_TARGET_TRIPLET="${env:VCPKG_DEFAULT_TRIPLET}" -DBUILD_SHARED_LIBS=ON + + - name: 'Build (DLL)' + working-directory: ${{ github.workspace }} + run: cmake --build out\build\${{ matrix.build_type }} diff --git a/.github/workflows/uwp.yml b/.github/workflows/uwp.yml index 1f25703..e1e17b7 100644 --- a/.github/workflows/uwp.yml +++ b/.github/workflows/uwp.yml @@ -1,96 +1,96 @@ -# Copyright (c) Microsoft Corporation. -# Licensed under the MIT License. -# -# http://go.microsoft.com/fwlink/?LinkId=248926 - -name: 'CMake (UWP)' - -on: - push: - branches: "main" - paths-ignore: - - '*.md' - - LICENSE - - '.azuredevops/**' - - '.nuget/*' - - build/*.cmd - - build/*.json - - build/*.props - - build/*.ps1 - - build/*.targets - - build/*.xvd - pull_request: - branches: "main" - paths-ignore: - - '*.md' - - LICENSE - - '.azuredevops/**' - - '.nuget/*' - - build/*.cmd - - build/*.json - - build/*.props - - build/*.ps1 - - build/*.targets - - build/*.xvd - -permissions: - contents: read - -jobs: - build: - runs-on: windows-2022 - - strategy: - fail-fast: false - - matrix: - build_type: [x64-Debug-UWP, x64-Release-UWP, x64-Debug-UWP-Clang, x64-Release-UWP-Clang] - arch: [amd64] - include: - - build_type: x86-Debug-UWP - arch: amd64_x86 - - build_type: x86-Release-UWP - arch: amd64_x86 - - build_type: x86-Debug-UWP-Clang - arch: amd64_x86 - - build_type: x86-Release-UWP-Clang - arch: amd64_x86 - - build_type: arm64-Debug-UWP - arch: amd64_arm64 - - build_type: arm64-Release-UWP - arch: amd64_arm64 - - build_type: arm64-Debug-UWP-Clang - arch: amd64_arm64 - - build_type: arm64-Release-UWP-Clang - arch: amd64_arm64 - - steps: - - uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2 - - - name: 'Install Ninja' - run: choco install ninja - - - uses: ilammy/msvc-dev-cmd@0b201ec74fa43914dc39ae48a89fd1d8cb592756 # v1.13.0 - with: - arch: ${{ matrix.arch }} - uwp: true - - - 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 }} - - - name: 'Clean up' - working-directory: ${{ github.workspace }} - run: Remove-Item -Path out -Recurse -Force - - - name: 'Configure CMake (DLL)' - working-directory: ${{ github.workspace }} - run: cmake --preset=${{ matrix.build_type }} -DBUILD_SHARED_LIBS=ON - - - name: 'Build (DLL)' - working-directory: ${{ github.workspace }} - run: cmake --build out\build\${{ matrix.build_type }} +# Copyright (c) Microsoft Corporation. +# Licensed under the MIT License. +# +# http://go.microsoft.com/fwlink/?LinkId=248926 + +name: 'CMake (UWP)' + +on: + push: + branches: "main" + paths-ignore: + - '*.md' + - LICENSE + - '.azuredevops/**' + - '.nuget/*' + - build/*.cmd + - build/*.json + - build/*.props + - build/*.ps1 + - build/*.targets + - build/*.xvd + pull_request: + branches: "main" + paths-ignore: + - '*.md' + - LICENSE + - '.azuredevops/**' + - '.nuget/*' + - build/*.cmd + - build/*.json + - build/*.props + - build/*.ps1 + - build/*.targets + - build/*.xvd + +permissions: + contents: read + +jobs: + build: + runs-on: windows-2022 + + strategy: + fail-fast: false + + matrix: + build_type: [x64-Debug-UWP, x64-Release-UWP, x64-Debug-UWP-Clang, x64-Release-UWP-Clang] + arch: [amd64] + include: + - build_type: x86-Debug-UWP + arch: amd64_x86 + - build_type: x86-Release-UWP + arch: amd64_x86 + - build_type: x86-Debug-UWP-Clang + arch: amd64_x86 + - build_type: x86-Release-UWP-Clang + arch: amd64_x86 + - build_type: arm64-Debug-UWP + arch: amd64_arm64 + - build_type: arm64-Release-UWP + arch: amd64_arm64 + - build_type: arm64-Debug-UWP-Clang + arch: amd64_arm64 + - build_type: arm64-Release-UWP-Clang + arch: amd64_arm64 + + steps: + - uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0 + + - name: 'Install Ninja' + run: choco install ninja + + - uses: ilammy/msvc-dev-cmd@0b201ec74fa43914dc39ae48a89fd1d8cb592756 # v1.13.0 + with: + arch: ${{ matrix.arch }} + uwp: true + + - 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 }} + + - name: 'Clean up' + working-directory: ${{ github.workspace }} + run: Remove-Item -Path out -Recurse -Force + + - name: 'Configure CMake (DLL)' + working-directory: ${{ github.workspace }} + run: cmake --preset=${{ matrix.build_type }} -DBUILD_SHARED_LIBS=ON + + - name: 'Build (DLL)' + working-directory: ${{ github.workspace }} + run: cmake --build out\build\${{ matrix.build_type }} diff --git a/.github/workflows/vcpkg.yml b/.github/workflows/vcpkg.yml index b7456ab..2346346 100644 --- a/.github/workflows/vcpkg.yml +++ b/.github/workflows/vcpkg.yml @@ -1,161 +1,161 @@ -# Copyright (c) Microsoft Corporation. -# Licensed under the MIT License. -# -# https://go.microsoft.com/fwlink/?LinkId=248926 - -name: 'CMake (Windows using VCPKG)' - -on: - push: - branches: "main" - paths-ignore: - - '*.md' - - LICENSE - - '.azuredevops/**' - - build/*.cmd - - build/*.props - - build/*.ps1 - - build/*.targets - - build/*.xvd - pull_request: - branches: "main" - paths-ignore: - - '*.md' - - LICENSE - - '.azuredevops/**' - - build/*.cmd - - build/*.props - - build/*.ps1 - - build/*.targets - - build/*.xvd - -permissions: - contents: read - -jobs: - build: - runs-on: windows-2022 - - strategy: - fail-fast: false - - matrix: - toolver: ['14.29', '14'] - build_type: [x64-Debug-VCPKG] - arch: [amd64] - shared: ['OFF'] - include: - - toolver: '14' - build_type: x64-Debug-Clang-VCPKG - arch: amd64 - shared: 'OFF' - - toolver: '14' - build_type: x86-Debug-VCPKG - arch: amd64_x86 - shared: 'OFF' - - toolver: '14' - build_type: arm64-Debug-VCPKG - arch: amd64_arm64 - shared: 'OFF' - - toolver: '14' - build_type: arm64ec-Debug-VCPKG - arch: amd64_arm64 - shared: 'OFF' - - toolver: '14' - build_type: x64-Debug-MinGW - arch: amd64 - shared: 'OFF' - - toolver: '14' - build_type: x64-Release-MinGW - arch: amd64 - shared: 'OFF' - - toolver: '14' - build_type: x64-Debug-MinGW - arch: amd64 - shared: 'ON' - - toolver: '14' - build_type: x64-Release-MinGW - arch: amd64 - shared: 'ON' - - steps: - - uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2 - - - name: 'Install Ninja' - run: choco install ninja - - - uses: ilammy/msvc-dev-cmd@0b201ec74fa43914dc39ae48a89fd1d8cb592756 # v1.13.0 - with: - arch: ${{ matrix.arch }} - toolset: ${{ matrix.toolver }} - - - name: 'Set triplet' - shell: pwsh - run: | - if ("${{ matrix.arch }}" -eq "amd64") - { - if ("${{ matrix.build_type }}" -match "MinGW") - { - echo "VCPKG_DEFAULT_TRIPLET=x64-mingw-static" >> $env:GITHUB_ENV - } - else - { - echo "VCPKG_DEFAULT_TRIPLET=x64-windows" >> $env:GITHUB_ENV - } - } - elseif ("${{ matrix.arch }}" -eq "amd64_x86") - { - echo "VCPKG_DEFAULT_TRIPLET=x86-windows" >> $env:GITHUB_ENV - } - elseif ("${{ matrix.arch }}" -eq "amd64_arm64") - { - if ("${{ matrix.build_type }}" -match "^arm64ec") - { - echo "VCPKG_DEFAULT_TRIPLET=arm64ec-windows" >> $env:GITHUB_ENV - } - else - { - echo "VCPKG_DEFAULT_TRIPLET=arm64-windows" >> $env:GITHUB_ENV - } - } - else - { - echo "::error Unknown architecture/build-type triplet mapping" - } - - - name: Get vcpkg commit hash - shell: pwsh - run: | - if ($Env:vcpkgRelease) { - echo "Using vcpkg commit from repo variable..." - $VCPKG_COMMIT_ID = $Env:vcpkgRelease - } - else { - echo "Fetching latest vcpkg commit hash..." - $commit = (git ls-remote https://github.com/microsoft/vcpkg.git HEAD | Select-String -Pattern '([a-f0-9]{40})').Matches.Value - $VCPKG_COMMIT_ID = $commit - } - Write-Host "VCPKG_COMMIT_ID=$VCPKG_COMMIT_ID" - echo "VCPKG_COMMIT_ID=$VCPKG_COMMIT_ID" >> $env:GITHUB_ENV - env: - vcpkgRelease: '${{ vars.VCPKG_COMMIT_ID }}' - - - uses: lukka/run-vcpkg@7d259227a1fb6471a0253dd5ab7419835228f7d7 # v11 - with: - runVcpkgInstall: true - vcpkgJsonGlob: '**/build/vcpkg.json' - vcpkgGitCommitId: '${{ env.VCPKG_COMMIT_ID }}' - - - name: 'Configure CMake' - working-directory: ${{ github.workspace }} - run: > - cmake --preset=${{ matrix.build_type }} -DBUILD_TESTING=OFF - -DENABLE_OPENEXR_SUPPORT=ON -DENABLE_LIBJPEG_SUPPORT=ON -DENABLE_LIBPNG_SUPPORT=ON - -DBUILD_SHARED_LIBS=${{ matrix.shared }} - -DCMAKE_TOOLCHAIN_FILE="${{ github.workspace }}/vcpkg/scripts/buildsystems/vcpkg.cmake" - -DVCPKG_MANIFEST_DIR="${{ github.workspace }}/build" - -DVCPKG_TARGET_TRIPLET="${env:VCPKG_DEFAULT_TRIPLET}" - - - name: 'Build' - working-directory: ${{ github.workspace }} - run: cmake --build out\build\${{ matrix.build_type }} +# Copyright (c) Microsoft Corporation. +# Licensed under the MIT License. +# +# https://go.microsoft.com/fwlink/?LinkId=248926 + +name: 'CMake (Windows using VCPKG)' + +on: + push: + branches: "main" + paths-ignore: + - '*.md' + - LICENSE + - '.azuredevops/**' + - build/*.cmd + - build/*.props + - build/*.ps1 + - build/*.targets + - build/*.xvd + pull_request: + branches: "main" + paths-ignore: + - '*.md' + - LICENSE + - '.azuredevops/**' + - build/*.cmd + - build/*.props + - build/*.ps1 + - build/*.targets + - build/*.xvd + +permissions: + contents: read + +jobs: + build: + runs-on: windows-2022 + + strategy: + fail-fast: false + + matrix: + toolver: ['14.29', '14'] + build_type: [x64-Debug-VCPKG] + arch: [amd64] + shared: ['OFF'] + include: + - toolver: '14' + build_type: x64-Debug-Clang-VCPKG + arch: amd64 + shared: 'OFF' + - toolver: '14' + build_type: x86-Debug-VCPKG + arch: amd64_x86 + shared: 'OFF' + - toolver: '14' + build_type: arm64-Debug-VCPKG + arch: amd64_arm64 + shared: 'OFF' + - toolver: '14' + build_type: arm64ec-Debug-VCPKG + arch: amd64_arm64 + shared: 'OFF' + - toolver: '14' + build_type: x64-Debug-MinGW + arch: amd64 + shared: 'OFF' + - toolver: '14' + build_type: x64-Release-MinGW + arch: amd64 + shared: 'OFF' + - toolver: '14' + build_type: x64-Debug-MinGW + arch: amd64 + shared: 'ON' + - toolver: '14' + build_type: x64-Release-MinGW + arch: amd64 + shared: 'ON' + + steps: + - uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0 + + - name: 'Install Ninja' + run: choco install ninja + + - uses: ilammy/msvc-dev-cmd@0b201ec74fa43914dc39ae48a89fd1d8cb592756 # v1.13.0 + with: + arch: ${{ matrix.arch }} + toolset: ${{ matrix.toolver }} + + - name: 'Set triplet' + shell: pwsh + run: | + if ("${{ matrix.arch }}" -eq "amd64") + { + if ("${{ matrix.build_type }}" -match "MinGW") + { + echo "VCPKG_DEFAULT_TRIPLET=x64-mingw-static" >> $env:GITHUB_ENV + } + else + { + echo "VCPKG_DEFAULT_TRIPLET=x64-windows" >> $env:GITHUB_ENV + } + } + elseif ("${{ matrix.arch }}" -eq "amd64_x86") + { + echo "VCPKG_DEFAULT_TRIPLET=x86-windows" >> $env:GITHUB_ENV + } + elseif ("${{ matrix.arch }}" -eq "amd64_arm64") + { + if ("${{ matrix.build_type }}" -match "^arm64ec") + { + echo "VCPKG_DEFAULT_TRIPLET=arm64ec-windows" >> $env:GITHUB_ENV + } + else + { + echo "VCPKG_DEFAULT_TRIPLET=arm64-windows" >> $env:GITHUB_ENV + } + } + else + { + echo "::error Unknown architecture/build-type triplet mapping" + } + + - name: Get vcpkg commit hash + shell: pwsh + run: | + if ($Env:vcpkgRelease) { + echo "Using vcpkg commit from repo variable..." + $VCPKG_COMMIT_ID = $Env:vcpkgRelease + } + else { + echo "Fetching latest vcpkg commit hash..." + $commit = (git ls-remote https://github.com/microsoft/vcpkg.git HEAD | Select-String -Pattern '([a-f0-9]{40})').Matches.Value + $VCPKG_COMMIT_ID = $commit + } + Write-Host "VCPKG_COMMIT_ID=$VCPKG_COMMIT_ID" + echo "VCPKG_COMMIT_ID=$VCPKG_COMMIT_ID" >> $env:GITHUB_ENV + env: + vcpkgRelease: '${{ vars.VCPKG_COMMIT_ID }}' + + - uses: lukka/run-vcpkg@7d259227a1fb6471a0253dd5ab7419835228f7d7 # v11 + with: + runVcpkgInstall: true + vcpkgJsonGlob: '**/build/vcpkg.json' + vcpkgGitCommitId: '${{ env.VCPKG_COMMIT_ID }}' + + - name: 'Configure CMake' + working-directory: ${{ github.workspace }} + run: > + cmake --preset=${{ matrix.build_type }} -DBUILD_TESTING=OFF + -DENABLE_OPENEXR_SUPPORT=ON -DENABLE_LIBJPEG_SUPPORT=ON -DENABLE_LIBPNG_SUPPORT=ON + -DBUILD_SHARED_LIBS=${{ matrix.shared }} + -DCMAKE_TOOLCHAIN_FILE="${{ github.workspace }}/vcpkg/scripts/buildsystems/vcpkg.cmake" + -DVCPKG_MANIFEST_DIR="${{ github.workspace }}/build" + -DVCPKG_TARGET_TRIPLET="${env:VCPKG_DEFAULT_TRIPLET}" + + - name: 'Build' + working-directory: ${{ github.workspace }} + run: cmake --build out\build\${{ matrix.build_type }} diff --git a/.github/workflows/wsl.yml b/.github/workflows/wsl.yml index 399300c..1fec6cb 100644 --- a/.github/workflows/wsl.yml +++ b/.github/workflows/wsl.yml @@ -1,110 +1,110 @@ -# Copyright (c) Microsoft Corporation. -# Licensed under the MIT License. -# -# https://go.microsoft.com/fwlink/?LinkId=248926 - -name: 'CMake (WSL)' - -on: - push: - branches: "main" - paths-ignore: - - '*.md' - - LICENSE - - '.azuredevops/**' - - '.nuget/*' - - build/*.cmd - - build/*.json - - build/*.props - - build/*.ps1 - - build/*.targets - - build/*.xvd - pull_request: - branches: "main" - paths-ignore: - - '*.md' - - LICENSE - - '.azuredevops/**' - - '.nuget/*' - - build/*.cmd - - build/*.json - - build/*.props - - build/*.ps1 - - build/*.targets - - build/*.xvd - -permissions: - contents: read - -jobs: - build: - runs-on: ubuntu-latest - - strategy: - fail-fast: false - - matrix: - build_type: [x64-Debug-Linux, x64-Release-Linux] - gcc: [12, 13, 14] - - steps: - - uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2 - - - uses: seanmiddleditch/gha-setup-ninja@3b1f8f94a2f8254bd26914c4ab9474d4f0015f67 # v6 - - - name: Get vcpkg commit hash - shell: pwsh - run: | - if ($Env:vcpkgRelease) { - echo "Using vcpkg commit from repo variable..." - $VCPKG_COMMIT_ID = $Env:vcpkgRelease - } - else { - echo "Fetching latest vcpkg commit hash..." - $commit = (git ls-remote https://github.com/microsoft/vcpkg.git HEAD | Select-String -Pattern '([a-f0-9]{40})').Matches.Value - $VCPKG_COMMIT_ID = $commit - } - Write-Host "VCPKG_COMMIT_ID=$VCPKG_COMMIT_ID" - echo "VCPKG_COMMIT_ID=$VCPKG_COMMIT_ID" >> $env:GITHUB_ENV - env: - vcpkgRelease: '${{ vars.VCPKG_COMMIT_ID }}' - - - uses: lukka/run-vcpkg@7d259227a1fb6471a0253dd5ab7419835228f7d7 # v11 - with: - runVcpkgInstall: true - vcpkgJsonGlob: '**/build/vcpkg.json' - vcpkgGitCommitId: '${{ env.VCPKG_COMMIT_ID }}' - - - name: 'Configure CMake' - working-directory: ${{ github.workspace }} - run: > - cmake --preset=${{ matrix.build_type }} -DENABLE_OPENEXR_SUPPORT=ON -DENABLE_LIBJPEG_SUPPORT=ON -DENABLE_LIBPNG_SUPPORT=ON - -DCMAKE_TOOLCHAIN_FILE="${{ github.workspace }}/vcpkg/scripts/buildsystems/vcpkg.cmake" -DVCPKG_MANIFEST_DIR="${{ github.workspace }}/build" - -DVCPKG_TARGET_TRIPLET="x64-linux" - - env: - CC: gcc-${{ matrix.gcc }} - CXX: g++-${{ matrix.gcc }} - - - name: 'Build' - working-directory: ${{ github.workspace }} - run: cmake --build out/build/${{ matrix.build_type }} - - - name: 'Clean up' - working-directory: ${{ github.workspace }} - run: rm -rf out - - - name: 'Configure CMake (-shared)' - working-directory: ${{ github.workspace }} - run: > - cmake --preset=${{ matrix.build_type }} -DENABLE_OPENEXR_SUPPORT=ON -DENABLE_LIBJPEG_SUPPORT=ON -DENABLE_LIBPNG_SUPPORT=ON - -DCMAKE_TOOLCHAIN_FILE="${{ github.workspace }}/vcpkg/scripts/buildsystems/vcpkg.cmake" -DVCPKG_MANIFEST_DIR="${{ github.workspace }}/build" - -DVCPKG_TARGET_TRIPLET="x64-linux" -DBUILD_SHARED_LIBS=ON - - env: - CC: gcc-${{ matrix.gcc }} - CXX: g++-${{ matrix.gcc }} - - - name: 'Build (-shared)' - working-directory: ${{ github.workspace }} - run: cmake --build out/build/${{ matrix.build_type }} +# Copyright (c) Microsoft Corporation. +# Licensed under the MIT License. +# +# https://go.microsoft.com/fwlink/?LinkId=248926 + +name: 'CMake (WSL)' + +on: + push: + branches: "main" + paths-ignore: + - '*.md' + - LICENSE + - '.azuredevops/**' + - '.nuget/*' + - build/*.cmd + - build/*.json + - build/*.props + - build/*.ps1 + - build/*.targets + - build/*.xvd + pull_request: + branches: "main" + paths-ignore: + - '*.md' + - LICENSE + - '.azuredevops/**' + - '.nuget/*' + - build/*.cmd + - build/*.json + - build/*.props + - build/*.ps1 + - build/*.targets + - build/*.xvd + +permissions: + contents: read + +jobs: + build: + runs-on: ubuntu-latest + + strategy: + fail-fast: false + + matrix: + build_type: [x64-Debug-Linux, x64-Release-Linux] + gcc: [12, 13, 14] + + steps: + - uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0 + + - uses: seanmiddleditch/gha-setup-ninja@3b1f8f94a2f8254bd26914c4ab9474d4f0015f67 # v6 + + - name: Get vcpkg commit hash + shell: pwsh + run: | + if ($Env:vcpkgRelease) { + echo "Using vcpkg commit from repo variable..." + $VCPKG_COMMIT_ID = $Env:vcpkgRelease + } + else { + echo "Fetching latest vcpkg commit hash..." + $commit = (git ls-remote https://github.com/microsoft/vcpkg.git HEAD | Select-String -Pattern '([a-f0-9]{40})').Matches.Value + $VCPKG_COMMIT_ID = $commit + } + Write-Host "VCPKG_COMMIT_ID=$VCPKG_COMMIT_ID" + echo "VCPKG_COMMIT_ID=$VCPKG_COMMIT_ID" >> $env:GITHUB_ENV + env: + vcpkgRelease: '${{ vars.VCPKG_COMMIT_ID }}' + + - uses: lukka/run-vcpkg@7d259227a1fb6471a0253dd5ab7419835228f7d7 # v11 + with: + runVcpkgInstall: true + vcpkgJsonGlob: '**/build/vcpkg.json' + vcpkgGitCommitId: '${{ env.VCPKG_COMMIT_ID }}' + + - name: 'Configure CMake' + working-directory: ${{ github.workspace }} + run: > + cmake --preset=${{ matrix.build_type }} -DENABLE_OPENEXR_SUPPORT=ON -DENABLE_LIBJPEG_SUPPORT=ON -DENABLE_LIBPNG_SUPPORT=ON + -DCMAKE_TOOLCHAIN_FILE="${{ github.workspace }}/vcpkg/scripts/buildsystems/vcpkg.cmake" -DVCPKG_MANIFEST_DIR="${{ github.workspace }}/build" + -DVCPKG_TARGET_TRIPLET="x64-linux" + + env: + CC: gcc-${{ matrix.gcc }} + CXX: g++-${{ matrix.gcc }} + + - name: 'Build' + working-directory: ${{ github.workspace }} + run: cmake --build out/build/${{ matrix.build_type }} + + - name: 'Clean up' + working-directory: ${{ github.workspace }} + run: rm -rf out + + - name: 'Configure CMake (-shared)' + working-directory: ${{ github.workspace }} + run: > + cmake --preset=${{ matrix.build_type }} -DENABLE_OPENEXR_SUPPORT=ON -DENABLE_LIBJPEG_SUPPORT=ON -DENABLE_LIBPNG_SUPPORT=ON + -DCMAKE_TOOLCHAIN_FILE="${{ github.workspace }}/vcpkg/scripts/buildsystems/vcpkg.cmake" -DVCPKG_MANIFEST_DIR="${{ github.workspace }}/build" + -DVCPKG_TARGET_TRIPLET="x64-linux" -DBUILD_SHARED_LIBS=ON + + env: + CC: gcc-${{ matrix.gcc }} + CXX: g++-${{ matrix.gcc }} + + - name: 'Build (-shared)' + working-directory: ${{ github.workspace }} + run: cmake --build out/build/${{ matrix.build_type }}