add github action to build on several linux platforms

This github action runs a build on each of the following platforms on a
push or pull request.

- Ubuntu LTS with gcc and glibc
- Ubuntu LTS with clang and glibc
- Alpine with gcc and musl

This fixes #463.
This commit is contained in:
Sam James 2021-10-08 19:28:09 +01:00 committed by William Hubbs
parent 785726d67d
commit c45e3361ee

55
.github/workflows/ci_meson.yml vendored Normal file
View File

@ -0,0 +1,55 @@
# Nabbed from https://github.com/mesonbuild/meson/blob/master/docs/markdown/Continuous-Integration.md#github-actions
name: ci_meson
on: [push, pull_request]
jobs:
linux-gcc-glibc-ubuntu:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- run: sudo apt-get update -q
- run: sudo apt-get install -q -y build-essential libpam-dev meson
- run: meson setup builddir/
env:
CC: gcc
- run: ninja -C builddir
env:
CC: gcc
linux-clang-glibc-ubuntu:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- run: sudo apt-get update -q
- run: sudo apt-get install -q -y build-essential clang libpam-dev meson
- run: meson setup builddir/
env:
CC: clang
- run: ninja -C builddir
env:
CC: clang
linux-gcc-alpine-musl:
runs-on: ubuntu-latest
container: alpine:latest
steps:
- name: install deps
run: >-
apk --no-cache add \
build-base \
meson \
pkgconf \
linux-pam \
linux-pam-dev
- name: checkout
uses: actions/checkout@v2
- run: meson setup builddir/
env:
CC: gcc
- run: ninja -C builddir
env:
CC: gcc