summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--.github/workflows/ghci.yml50
1 files changed, 50 insertions, 0 deletions
diff --git a/.github/workflows/ghci.yml b/.github/workflows/ghci.yml
new file mode 100644
index 0000000..138be5a
--- /dev/null
+++ b/.github/workflows/ghci.yml
@@ -0,0 +1,50 @@
+name: GitHub CI tests
+
+on:
+ push:
+ branches: [master, ci, coverity_scan]
+ pull_request:
+
+jobs:
+ build:
+ runs-on: ${{ matrix.os }}
+ strategy:
+ matrix:
+ os: [ubuntu-18.04, macos-10.15]
+ cc: [gcc, clang]
+ exclude:
+ - os: macos-10.15
+ cc: gcc
+ include:
+ # Enable distcheck for one build
+ - os: ubuntu-18.04
+ cc: gcc
+ do_distc: yes
+
+ steps:
+ - name: checkout code
+ uses: actions/checkout@v2
+
+ - name: install deps
+ run: |
+ if echo "${{ matrix.os }}" | grep -qE '^macos-' ; then
+ #brew update
+ # fontconfig, freetype, autoconf and libtool are preinstalled
+ # and `brew install` fails if a non-uptodate version is already installed
+ #brew upgrade fontconfig freetype autoconf libtool
+ brew install automake fribidi harfbuzz nasm
+ else
+ sudo apt-get update #&& sudo apt-get upgrade
+ sudo apt-get install -y \
+ libfontconfig1-dev libfreetype6-dev libfribidi-dev \
+ libharfbuzz-dev nasm ${{ matrix.cc }}
+ fi
+
+ - name: configure
+ run: ./autogen.sh && CC="${{ matrix.cc }}" ./configure
+
+ - name: compile
+ run: test "x${{ matrix.do_distc }}" = "xyes" || make -j 2
+
+ - name: distcheck
+ run: if [ "x${{ matrix.do_distc }}" = "xyes" ] ; then make -j 2 distcheck; fi