mirror of
https://github.com/microsoft/DirectXTex.git
synced 2025-07-20 00:02:28 +02:00
GitHub Actions using Windows on ARM64 native
This commit is contained in:
parent
32b2a8ef35
commit
afafeba900
4
.github/linters/actionlint.yml
vendored
Normal file
4
.github/linters/actionlint.yml
vendored
Normal file
@ -0,0 +1,4 @@
|
||||
self-hosted-runner:
|
||||
# Workaround until linter is updated
|
||||
labels:
|
||||
- windows-11-arm
|
77
.github/workflows/arm64.yml
vendored
Normal file
77
.github/workflows/arm64.yml
vendored
Normal file
@ -0,0 +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 }}
|
107
.github/workflows/arm64bvt.yml
vendored
Normal file
107
.github/workflows/arm64bvt.yml
vendored
Normal file
@ -0,0 +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
|
2
.github/workflows/bvt.yml
vendored
2
.github/workflows/bvt.yml
vendored
@ -3,7 +3,7 @@
|
||||
#
|
||||
# https://go.microsoft.com/fwlink/?LinkId=248926
|
||||
|
||||
name: 'CTest (BVTs)'
|
||||
name: 'BVTs (x64)'
|
||||
|
||||
on:
|
||||
push:
|
||||
|
Loading…
x
Reference in New Issue
Block a user