131 lines
2.9 KiB
YAML
131 lines
2.9 KiB
YAML
# CI setup based on https://gitlab.gnome.org/GNOME/librsvg/blob/master/.gitlab-ci.yml
|
|
|
|
variables:
|
|
AMD64_DEBIAN_TESTING: debian:testing
|
|
AMD64_UBUNTU_BIONIC: ubuntu:bionic
|
|
AMD64_FEDORA_LATEST: 'registry.fedoraproject.org/fedora:30'
|
|
AMD64_FEDORA_RAWHIDE: 'registry.fedoraproject.org/fedora:rawhide'
|
|
AMD64_OPENSUSE_LEAP: opensuse/leap
|
|
AMD64_OPENSUSE_TUMBLEWEED: opensuse/tumbleweed
|
|
|
|
I386_UBUNTU_BIONIC: 'i386/ubuntu:bionic'
|
|
|
|
stages:
|
|
- test
|
|
|
|
.autotools_test:
|
|
stage: test
|
|
script:
|
|
- mkdir builddir && cd builddir
|
|
- ../autogen.sh
|
|
- make
|
|
- make check
|
|
after_script:
|
|
- cp builddir/config.status builddir/config.log .
|
|
- rm -rf builddir
|
|
artifacts:
|
|
paths:
|
|
- 'config.status'
|
|
- 'config.log'
|
|
|
|
.meson_test:
|
|
stage: test
|
|
script:
|
|
- meson builddir
|
|
- ninja -C builddir
|
|
- meson test -C builddir --print-errorlogs
|
|
after_script:
|
|
- cp builddir/meson-logs/meson-log.txt .
|
|
- rm -rf builddir
|
|
artifacts:
|
|
paths:
|
|
- 'meson-log.txt'
|
|
|
|
.cmake_test:
|
|
stage: test
|
|
script:
|
|
- mkdir builddir && cd builddir
|
|
- cmake ..
|
|
- cmake --build . --config Release
|
|
- make check
|
|
after_script:
|
|
- cp builddir/CMakeFiles/CMakeOutput.log .
|
|
- rm -rf builddir
|
|
artifacts:
|
|
paths:
|
|
- 'CMakeOutput.log'
|
|
|
|
debian:testing:
|
|
extends: '.meson_test'
|
|
image: $AMD64_DEBIAN_TESTING
|
|
before_script:
|
|
- apt update -y
|
|
- apt install -y gcc meson
|
|
|
|
ubuntu:bionic:autotools:
|
|
extends: '.autotools_test'
|
|
image: $AMD64_UBUNTU_BIONIC
|
|
before_script:
|
|
- apt update -y
|
|
- apt install -y gcc make automake libtool
|
|
|
|
ubuntu:bionic:cmake:
|
|
extends: '.cmake_test'
|
|
image: $AMD64_UBUNTU_BIONIC
|
|
before_script:
|
|
- apt update -y
|
|
- apt install -y gcc make python3-pip
|
|
- pip3 install cmake
|
|
|
|
ubuntu:bionic:meson:
|
|
extends: '.meson_test'
|
|
image: $AMD64_UBUNTU_BIONIC
|
|
before_script:
|
|
- apt update -y
|
|
- apt install -y gcc python3-pip ninja-build
|
|
- pip3 install meson
|
|
|
|
ubuntu:bionic:i386:
|
|
extends: '.meson_test'
|
|
image: $I386_UBUNTU_BIONIC
|
|
before_script:
|
|
- apt update -y
|
|
- apt install -y gcc python3-pip ninja-build
|
|
- pip3 install meson
|
|
|
|
fedora:30:
|
|
extends: '.meson_test'
|
|
image: $AMD64_FEDORA_LATEST
|
|
before_script:
|
|
- dnf install -y gcc meson
|
|
|
|
fedora_mingw:latest:autotools:
|
|
image: $AMD64_FEDORA_LATEST
|
|
before_script:
|
|
- dnf install -y mingw64-gcc make automake libtool
|
|
script:
|
|
- mkdir builddir && cd builddir
|
|
- NOCONFIGURE=1 ../autogen.sh
|
|
- mingw64-configure
|
|
- make
|
|
|
|
fedora:rawhide:
|
|
extends: '.meson_test'
|
|
image: $AMD64_FEDORA_RAWHIDE
|
|
before_script:
|
|
- dnf install -y gcc meson
|
|
allow_failure: true
|
|
|
|
opensuse/leap:
|
|
extends: '.meson_test'
|
|
image: $AMD64_OPENSUSE_LEAP
|
|
before_script:
|
|
- zypper install -y gcc ninja python3-pip
|
|
- pip3 install meson
|
|
|
|
opensuse/tumbleweed:
|
|
extends: '.meson_test'
|
|
image: $AMD64_OPENSUSE_TUMBLEWEED
|
|
before_script:
|
|
- zypper install -y gcc meson
|