Skip to content

Commit 23be82c

Browse files
committed
ci: add platform build matrix
1 parent 45676db commit 23be82c

1 file changed

Lines changed: 73 additions & 0 deletions

File tree

.github/workflows/ci.yml

Lines changed: 73 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,73 @@
1+
name: CI
2+
3+
on:
4+
push:
5+
pull_request:
6+
workflow_dispatch:
7+
8+
permissions:
9+
contents: read
10+
11+
jobs:
12+
build:
13+
name: ${{ matrix.name }}
14+
runs-on: ${{ matrix.runner }}
15+
timeout-minutes: 45
16+
strategy:
17+
fail-fast: false
18+
matrix:
19+
include:
20+
- name: linux-x64
21+
runner: ubuntu-24.04
22+
platform: linux
23+
artifact: libDelogoHD.so
24+
- name: linux-arm64
25+
runner: ubuntu-24.04-arm
26+
platform: linux
27+
artifact: libDelogoHD.so
28+
- name: windows-x64
29+
runner: windows-2025-vs2026
30+
platform: windows
31+
generator: Visual Studio 18 2026
32+
arch: x64
33+
artifact: Release/DelogoHD.dll
34+
- name: windows-arm64
35+
runner: windows-11-arm
36+
platform: windows
37+
generator: Visual Studio 17 2022
38+
arch: ARM64
39+
artifact: Release/DelogoHD.dll
40+
41+
steps:
42+
- name: Checkout
43+
uses: actions/checkout@v4
44+
with:
45+
fetch-depth: 0
46+
47+
- name: Configure Linux
48+
if: matrix.platform == 'linux'
49+
run: >
50+
cmake -S . -B build/ci
51+
-DCMAKE_BUILD_TYPE=Release
52+
-DDELOGOHD_BUILD_TEST_TOOLS=OFF
53+
-DDELOGOHD_COPY_RELEASE=OFF
54+
55+
- name: Configure Windows
56+
if: matrix.platform == 'windows'
57+
shell: pwsh
58+
run: >
59+
cmake -S . -B build/ci
60+
-G "${{ matrix.generator }}"
61+
-A ${{ matrix.arch }}
62+
-DDELOGOHD_BUILD_TEST_TOOLS=OFF
63+
-DDELOGOHD_COPY_RELEASE=OFF
64+
65+
- name: Build
66+
run: cmake --build build/ci --config Release --parallel 4
67+
68+
- name: Upload plugin
69+
uses: actions/upload-artifact@v4
70+
with:
71+
name: DelogoHD-${{ matrix.name }}
72+
path: build/ci/${{ matrix.artifact }}
73+
if-no-files-found: error

0 commit comments

Comments
 (0)