Skip to content

Commit 5d2c29f

Browse files
authored
Cleanup MSVC CI, add Windows ARM64 (#507)
* Cleanup msvc CI Signed-off-by: falkTX <falktx@falktx.com> * Add msvc-arm64 to CI Signed-off-by: falkTX <falktx@falktx.com> * Recognize windows arm builds for vst3 output filename Signed-off-by: falkTX <falktx@falktx.com> * Use windows-11-arm for msvc-arm64 CI step Signed-off-by: falkTX <falktx@falktx.com> --------- Signed-off-by: falkTX <falktx@falktx.com>
1 parent 2a19349 commit 5d2c29f

File tree

2 files changed

+39
-52
lines changed

2 files changed

+39
-52
lines changed

.github/workflows/cmake.yml

Lines changed: 32 additions & 52 deletions
Original file line numberDiff line numberDiff line change
@@ -8,9 +8,6 @@ on:
88
branches:
99
- '*'
1010

11-
env:
12-
BUILD_TYPE: Release
13-
1411
jobs:
1512
ubuntu-22-04:
1613
strategy:
@@ -87,78 +84,61 @@ jobs:
8784
suffix: _15
8885
target: ${{ matrix.target }}
8986

90-
cmake_win32:
87+
msvc-win32:
9188
runs-on: windows-2022
9289
steps:
93-
- name: Set environment
90+
- uses: actions/checkout@v4
91+
with:
92+
submodules: recursive
93+
- name: Configure
9494
run: |
95-
echo "release_arch=Win32" >> "${Env:GITHUB_ENV}"
96-
echo "vcpkg_triplet=x86-windows-static" >> "${Env:GITHUB_ENV}"
97-
echo "vcpkg_git_commit_id=a3db16a4475b963cacf0260068c497fb72c8f3c0" >> "${Env:GITHUB_ENV}"
98-
- name: Restore from cache and install vcpkg
99-
uses: lukka/run-vcpkg@v6
95+
cmake -S . -B build -G"Visual Studio 17 2022" -A"Win32" -DCMAKE_BUILD_TYPE="Release"
96+
- name: Build
97+
run: cmake --build build --config "Release" -j 2
98+
- name: Show built files
99+
working-directory: build/bin
100+
run: tree
101+
- uses: actions/upload-artifact@v4
100102
with:
101-
setupOnly: true
102-
vcpkgTriplet: ${{env.vcpkg_triplet}}
103-
vcpkgGitCommitId: ${{env.vcpkg_git_commit_id}}
104-
#- name: Install packages
105-
# run: |
106-
# & "${Env:VCPKG_ROOT}/vcpkg" install "cairo:${Env:vcpkg_triplet}"
103+
name: msvc-win32
104+
path: build/bin/
105+
106+
msvc-win64:
107+
runs-on: windows-2022
108+
steps:
107109
- uses: actions/checkout@v4
108110
with:
109111
submodules: recursive
110-
- name: Create Build Environment
111-
working-directory: ${{runner.workspace}}
112-
run: cmake -E make_directory build
113112
- name: Configure CMake
114-
working-directory: ${{runner.workspace}}/build
115113
run: |
116-
cmake "${Env:GITHUB_WORKSPACE}" -G"Visual Studio 17 2022" -A"${Env:release_arch}" -DCMAKE_BUILD_TYPE="${Env:BUILD_TYPE}" -DVCPKG_TARGET_TRIPLET="${Env:vcpkg_triplet}" -DCMAKE_TOOLCHAIN_FILE="${Env:VCPKG_INSTALLATION_ROOT}/scripts/buildsystems/vcpkg.cmake"
114+
cmake -S . -B build -G"Visual Studio 17 2022" -A"x64" -DCMAKE_BUILD_TYPE="Release"
117115
- name: Build all
118-
working-directory: ${{runner.workspace}}/build
119-
run: cmake --build . --config "${Env:BUILD_TYPE}" -j 2
116+
working-directory: build
117+
run: cmake --build . --config "Release" -j 2
120118
- name: Show built files
121-
working-directory: ${{runner.workspace}}/build/bin
119+
working-directory: build/bin
122120
run: tree
123121
- uses: actions/upload-artifact@v4
124122
with:
125-
name: Win32 artifacts
126-
path: ${{runner.workspace}}/build/bin/
123+
name: msvc-win64
124+
path: build/bin/
127125

128-
cmake_win64:
129-
runs-on: windows-2022
126+
msvc-arm64:
127+
runs-on: windows-11-arm
130128
steps:
131-
- name: Set environment
132-
run: |
133-
echo "release_arch=x64" >> "${Env:GITHUB_ENV}"
134-
echo "vcpkg_triplet=x64-windows-static" >> "${Env:GITHUB_ENV}"
135-
echo "vcpkg_git_commit_id=a3db16a4475b963cacf0260068c497fb72c8f3c0" >> "${Env:GITHUB_ENV}"
136-
- name: Restore from cache and install vcpkg
137-
uses: lukka/run-vcpkg@v6
138-
with:
139-
setupOnly: true
140-
vcpkgTriplet: ${{env.vcpkg_triplet}}
141-
vcpkgGitCommitId: ${{env.vcpkg_git_commit_id}}
142-
#- name: Install packages
143-
# run: |
144-
# & "${Env:VCPKG_ROOT}/vcpkg" install "cairo:${Env:vcpkg_triplet}"
145129
- uses: actions/checkout@v4
146130
with:
147131
submodules: recursive
148-
- name: Create Build Environment
149-
working-directory: ${{runner.workspace}}
150-
run: cmake -E make_directory build
151132
- name: Configure CMake
152-
working-directory: ${{runner.workspace}}/build
153133
run: |
154-
cmake "${Env:GITHUB_WORKSPACE}" -G"Visual Studio 17 2022" -A"${Env:release_arch}" -DCMAKE_BUILD_TYPE="${Env:BUILD_TYPE}" -DVCPKG_TARGET_TRIPLET="${Env:vcpkg_triplet}" -DCMAKE_TOOLCHAIN_FILE="${Env:VCPKG_INSTALLATION_ROOT}/scripts/buildsystems/vcpkg.cmake"
134+
cmake -S . -B build -G"Visual Studio 17 2022" -A"ARM64" -DCMAKE_BUILD_TYPE="Release"
155135
- name: Build all
156-
working-directory: ${{runner.workspace}}/build
157-
run: cmake --build . --config "${Env:BUILD_TYPE}" -j 2
136+
working-directory: build
137+
run: cmake --build . --config "Release" -j 2
158138
- name: Show built files
159-
working-directory: ${{runner.workspace}}/build/bin
139+
working-directory: build/bin
160140
run: tree
161141
- uses: actions/upload-artifact@v4
162142
with:
163-
name: Win64 artifacts
164-
path: ${{runner.workspace}}/build/bin/
143+
name: msvc-arm64
144+
path: build/bin/

cmake/DPF-plugin.cmake

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -678,8 +678,15 @@ function(dpf__determine_vst3_package_architecture OUTPUT_VARIABLE)
678678
endif()
679679

680680
# transform the processor name to a format that VST3 recognizes
681+
# see https://steinbergmedia.github.io/vst3_dev_portal/pages/Technical+Documentation/Locations+Format/Plugin+Format.html
681682
if(vst3_system_arch MATCHES "^(x86_64|amd64|AMD64|x64|X64)$")
682683
set(vst3_package_arch "x86_64")
684+
elseif(vst3_system_arch MATCHES "^(ARM)$")
685+
set(vst3_package_arch "arm")
686+
elseif(vst3_system_arch MATCHES "^(ARM64)$")
687+
set(vst3_package_arch "arm64")
688+
elseif(vst3_system_arch MATCHES "^(ARM64EC)$")
689+
set(vst3_package_arch "arm64x")
683690
elseif(vst3_system_arch MATCHES "^(i.86|x86|X86)$")
684691
if(WIN32)
685692
set(vst3_package_arch "x86")

0 commit comments

Comments
 (0)