From fce741985305af666a3ff0fc99c075db25692b5a Mon Sep 17 00:00:00 2001
From: Stefan Krah <skrah@bytereef.org>
Date: Sat, 27 Apr 2024 13:13:49 +0200
Subject: [PATCH] Add continuous integration.

---
 .github/workflows/build.yml | 77 +++++++++++++++++++++++++++++++++++++
 1 file changed, 77 insertions(+)
 create mode 100644 .github/workflows/build.yml

diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml
new file mode 100644
index 0000000..1c46a02
--- /dev/null
+++ b/.github/workflows/build.yml
@@ -0,0 +1,77 @@
+name: Tests
+
+on:
+  push:
+    branches:
+    - master
+  pull_request:
+    branches:
+    - master
+
+jobs:
+
+  vcbuild64:
+    name: "Windows Release|x64"
+    runs-on: windows-latest
+    steps:
+      - uses: actions/checkout@v2
+      - run: |
+          mkdir build
+          cd build
+          cmake ..
+          cmake --build . --config Release --target all
+          cmake --build . --config Release --target ntest
+          cmake --build . --config Release --target xtest
+          cmake --build . --config Release --target npytest
+          cmake --build . --config Release --target xpytest
+          cmake --build . --config Release --target gpytest
+        shell: cmd
+
+  vcbuild32:
+    name: "Windows Release|x86"
+    runs-on: windows-latest
+    steps:
+      - uses: actions/checkout@v2
+      - run: |
+          mkdir build
+          cd build
+          cmake ..
+          cmake --build . --config Release --target all
+          cmake --build . --config Release --target ntest
+          cmake --build . --config Release --target xtest
+          cmake --build . --config Release --target npytest
+          cmake --build . --config Release --target xpytest
+          cmake --build . --config Release --target gpytest
+        shell: cmd
+
+  osx_x64:
+    name: 'OSX x64'
+    runs-on: macos-latest
+    steps:
+      - uses: actions/checkout@v2
+      - run: |
+          mkdir build
+          cd build
+          cmake ..
+          cmake --build . --config Release --target all
+          cmake --build . --config Release --target ntest
+          cmake --build . --config Release --target xtest
+          cmake --build . --config Release --target npytest
+          cmake --build . --config Release --target xpytest
+          cmake --build . --config Release --target gpytest
+
+  ubuntu_x64:
+    name: 'OSX x64'
+    runs-on: ubuntu-latest
+    steps:
+      - uses: actions/checkout@v2
+      - run: |
+          mkdir build
+          cd build
+          cmake ..
+          cmake --build . --config Release --target all
+          cmake --build . --config Release --target ntest
+          cmake --build . --config Release --target xtest
+          cmake --build . --config Release --target npytest
+          cmake --build . --config Release --target xpytest
+          cmake --build . --config Release --target gpytest