aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMarc-André Lureau <marcandre.lureau@redhat.com>2024-03-06 11:54:38 +0400
committerDavid Gibson <david@gibson.dropbear.id.au>2024-03-06 22:30:33 +1100
commitb0aacd0a77350a1c6c8539e669095aac9a25f5a8 (patch)
tree50e7d87aef59e265252ca472d14b5b9a6e85227c
parentae97d974586206bb3bdd442716cc98c5c52f9648 (diff)
downloaddtc-b0aacd0a77350a1c6c8539e669095aac9a25f5a8.tar.gz
github: add windows/msys CI build
Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com> Signed-off-by: David Gibson <david@gibson.dropbear.id.au>
-rw-r--r--.github/workflows/build.yml48
1 files changed, 48 insertions, 0 deletions
diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml
index b414314..e3ea9e1 100644
--- a/.github/workflows/build.yml
+++ b/.github/workflows/build.yml
@@ -8,6 +8,12 @@ name: Build test
branches:
- main
+# ensure that the workflow is only triggered once per PR, subsequent pushes to the PR will cancel
+# and restart the workflow. See https://docs.github.com/en/actions/using-jobs/using-concurrency
+concurrency:
+ group: ${{ github.workflow }}-${{ github.head_ref || github.run_id }}
+ cancel-in-progress: true
+
jobs:
build-make:
runs-on: ubuntu-latest
@@ -63,3 +69,45 @@ jobs:
- name: Run check
run: if ! meson test -C build; then cat build/meson-logs/testlog.txt; false; fi
+
+ build-windows:
+ runs-on: windows-latest
+ strategy:
+ fail-fast: false
+ matrix:
+ include:
+ - { sys: mingw32 }
+ - { sys: mingw64 }
+ - { sys: ucrt64 }
+ - { sys: clang64 }
+ name: ${{ matrix.sys }}
+ defaults:
+ run:
+ shell: msys2 {0}
+ steps:
+ - name: Checkout
+ uses: actions/checkout@v4
+ with:
+ fetch-depth: 0
+
+ - name: Setup MSYS2
+ uses: msys2/setup-msys2@v2
+ with:
+ msystem: ${{matrix.sys}}
+ update: true
+ install: >-
+ git
+ flex
+ bison
+ pacboy: >-
+ toolchain:p
+ meson:p
+ ninja:p
+ libyaml:p
+ swig:p
+ python-setuptools-scm:p
+
+ - name: '🚧 Build'
+ run: |
+ meson setup -Dtools=true -Dtests=false build
+ meson compile -C build