summaryrefslogtreecommitdiff
path: root/.github
diff options
context:
space:
mode:
Diffstat (limited to '.github')
-rw-r--r--.github/workflows/linux.yml43
-rw-r--r--.github/workflows/macos.yml40
-rw-r--r--.github/workflows/main.yml108
-rw-r--r--.github/workflows/windows.yml47
4 files changed, 130 insertions, 108 deletions
diff --git a/.github/workflows/linux.yml b/.github/workflows/linux.yml
new file mode 100644
index 0000000..a578fc6
--- /dev/null
+++ b/.github/workflows/linux.yml
@@ -0,0 +1,43 @@
+name: linux
+
+on:
+ push:
+ branches: [ master ]
+ pull_request:
+ branches: [ master ]
+
+# Set permissions at the job level.
+permissions: {}
+
+jobs:
+ linux:
+ runs-on: ubuntu-20.04
+ permissions:
+ contents: read
+ strategy:
+ matrix:
+ compiler: [clang, gcc]
+ steps:
+ - uses: actions/checkout@v2
+ with:
+ persist-credentials: false
+ - uses: actions/setup-python@v2
+ with:
+ python-version: '3.9'
+ - name: Install dependencies
+ run: |
+ python -m pip install --upgrade meson
+ sudo apt install -y \
+ doxygen libxcb-xkb-dev valgrind ninja-build \
+ libwayland-dev wayland-protocols bison graphviz
+ - name: Setup
+ run: |
+ meson setup build
+ env:
+ CC: ${{ matrix.compiler }}
+ - name: Build
+ run: |
+ meson compile -C build
+ - name: Test
+ run:
+ meson test -C build --print-errorlogs --setup=valgrind --no-suite python-tests
diff --git a/.github/workflows/macos.yml b/.github/workflows/macos.yml
new file mode 100644
index 0000000..077c8ed
--- /dev/null
+++ b/.github/workflows/macos.yml
@@ -0,0 +1,40 @@
+name: macos
+
+on:
+ push:
+ branches: [ master ]
+ pull_request:
+ branches: [ master ]
+
+# Set permissions at the job level.
+permissions: {}
+
+jobs:
+ macos:
+ runs-on: macos-10.15
+ permissions:
+ contents: read
+ steps:
+ - uses: actions/checkout@v2
+ with:
+ persist-credentials: false
+ - uses: actions/setup-python@v2
+ with:
+ python-version: '3.9'
+ - name: Install dependencies
+ run: |
+ python -m pip install --upgrade meson
+ brew install libxml2 doxygen bison ninja
+ brew link bison --force
+ env:
+ HOMEBREW_NO_AUTO_UPDATE: 1
+ HOMEBREW_NO_INSTALL_CLEANUP: 1
+ - name: Setup
+ run: |
+ PATH="/usr/local/opt/bison/bin:${PATH}" meson setup -Denable-wayland=false -Denable-x11=false build
+ - name: Build
+ run: |
+ PATH="/usr/local/opt/bison/bin:${PATH}" meson compile -C build
+ - name: Test
+ run:
+ meson test -C build --print-errorlogs
diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml
deleted file mode 100644
index cbae406..0000000
--- a/.github/workflows/main.yml
+++ /dev/null
@@ -1,108 +0,0 @@
-name: CI
-
-on:
- push:
- branches: [ master ]
- pull_request:
- branches: [ master ]
-
-# Set permissions at the job level.
-permissions: {}
-
-jobs:
- linux:
- runs-on: ubuntu-20.04
- permissions:
- contents: read
- strategy:
- matrix:
- compiler: [clang, gcc]
- steps:
- - uses: actions/checkout@v2
- with:
- persist-credentials: false
- - uses: actions/setup-python@v2
- with:
- python-version: '3.9'
- - name: Install dependencies
- run: |
- python -m pip install --upgrade meson
- sudo apt install -y \
- doxygen libxcb-xkb-dev valgrind ninja-build \
- libwayland-dev wayland-protocols bison graphviz
- - name: Setup
- run: |
- meson setup build
- env:
- CC: ${{ matrix.compiler }}
- - name: Build
- run: |
- meson compile -C build
- - name: Test
- run:
- meson test -C build --print-errorlogs --setup=valgrind --no-suite python-tests
-
- macos:
- runs-on: macos-10.15
- permissions:
- contents: read
- steps:
- - uses: actions/checkout@v2
- with:
- persist-credentials: false
- - uses: actions/setup-python@v2
- with:
- python-version: '3.9'
- - name: Install dependencies
- run: |
- python -m pip install --upgrade meson
- brew install libxml2 doxygen bison ninja
- brew link bison --force
- env:
- HOMEBREW_NO_AUTO_UPDATE: 1
- HOMEBREW_NO_INSTALL_CLEANUP: 1
- - name: Setup
- run: |
- PATH="/usr/local/opt/bison/bin:${PATH}" meson setup -Denable-wayland=false -Denable-x11=false build
- - name: Build
- run: |
- PATH="/usr/local/opt/bison/bin:${PATH}" meson compile -C build
- - name: Test
- run:
- meson test -C build --print-errorlogs
-
- windows:
- runs-on: windows-2019
- permissions:
- contents: read
- steps:
- - uses: actions/checkout@v2
- with:
- persist-credentials: false
- - uses: actions/setup-python@v2
- with:
- python-version: '3.9'
- - name: Install dependencies
- shell: powershell
- run: |
- python -m pip install --upgrade meson
- Invoke-WebRequest -Uri https://github.com/ninja-build/ninja/releases/download/v1.10.1/ninja-win.zip -OutFile ninja.zip
- Invoke-WebRequest -Uri https://github.com/lexxmark/winflexbison/releases/download/v2.5.23/win_flex_bison-2.5.23.zip -OutFile win_flex_bison.zip
- Expand-Archive -Path win_flex_bison.zip -DestinationPath bin
- Expand-Archive -Path ninja.zip -DestinationPath bin
- Write-Output ((Get-Location).ToString() + "./bin") | Out-File -Append -FilePath $env:GITHUB_PATH -Encoding utf8
- - name: Setup
- shell: cmd
- run: |
- call "C:\Program Files (x86)\Microsoft Visual Studio\2019\Enterprise\VC\Auxiliary\Build\vcvarsall.bat" x64
- meson setup -Denable-wayland=false -Denable-x11=false -Denable-docs=false -Denable-xkbregistry=false build
- env:
- CC: cl
- - name: Build
- shell: cmd
- run: |
- call "C:\Program Files (x86)\Microsoft Visual Studio\2019\Enterprise\VC\Auxiliary\Build\vcvarsall.bat" x64
- meson compile -C build
- - name: Test
- run:
- meson test -C build --print-errorlogs
diff --git a/.github/workflows/windows.yml b/.github/workflows/windows.yml
new file mode 100644
index 0000000..e7a2856
--- /dev/null
+++ b/.github/workflows/windows.yml
@@ -0,0 +1,47 @@
+name: windows
+
+on:
+ push:
+ branches: [ master ]
+ pull_request:
+ branches: [ master ]
+
+# Set permissions at the job level.
+permissions: {}
+
+jobs:
+ windows:
+ runs-on: windows-2019
+ permissions:
+ contents: read
+ steps:
+ - uses: actions/checkout@v2
+ with:
+ persist-credentials: false
+ - uses: actions/setup-python@v2
+ with:
+ python-version: '3.9'
+ - name: Install dependencies
+ shell: powershell
+ run: |
+ python -m pip install --upgrade meson
+ Invoke-WebRequest -Uri https://github.com/ninja-build/ninja/releases/download/v1.10.1/ninja-win.zip -OutFile ninja.zip
+ Invoke-WebRequest -Uri https://github.com/lexxmark/winflexbison/releases/download/v2.5.23/win_flex_bison-2.5.23.zip -OutFile win_flex_bison.zip
+ Expand-Archive -Path win_flex_bison.zip -DestinationPath bin
+ Expand-Archive -Path ninja.zip -DestinationPath bin
+ Write-Output ((Get-Location).ToString() + "./bin") | Out-File -Append -FilePath $env:GITHUB_PATH -Encoding utf8
+ - name: Setup
+ shell: cmd
+ run: |
+ call "C:\Program Files (x86)\Microsoft Visual Studio\2019\Enterprise\VC\Auxiliary\Build\vcvarsall.bat" x64
+ meson setup -Denable-wayland=false -Denable-x11=false -Denable-docs=false -Denable-xkbregistry=false build
+ env:
+ CC: cl
+ - name: Build
+ shell: cmd
+ run: |
+ call "C:\Program Files (x86)\Microsoft Visual Studio\2019\Enterprise\VC\Auxiliary\Build\vcvarsall.bat" x64
+ meson compile -C build
+ - name: Test
+ run:
+ meson test -C build --print-errorlogs