flac/.gitlab-ci.yml

54 lines
1.4 KiB
YAML

default:
tags:
- docker
# Image from https://hub.docker.com/_/gcc/ based on Debian
image: gcc:9
autotools:
stage: build
before_script:
- apt-get update &&
apt-get install -y libogg-dev
libtool-bin gettext zip
doxygen graphviz
# Create an unpriviledged user, required for tests.
- adduser --disabled-password --gecos "Gitlab CI" flac
script:
- ./autogen.sh
- ./configure
- make
- su -c 'make distcheck' flac
cmake:
stage: build
before_script:
- apt-get update &&
apt-get install -y libogg-dev
cmake ninja-build
doxygen graphviz
# Create an unpriviledged user, required for tests.
- adduser --disabled-password --gecos "Gitlab CI" flac
script:
- mkdir _build
- cmake -S . -B _build -G "Ninja" -DCMAKE_BUILD_TYPE=Release
- chown -R flac .
- su -c 'cmake --build _build' flac
- su -c 'cd _build && ctest -V' flac
makefile:
stage: build
before_script:
- apt-get update &&
apt-get install -y libogg-dev
# Create an unpriviledged user, required for tests.
- adduser --disabled-password --gecos "Gitlab CI" flac
script:
# The makefile doesn't create the `objs` tree it expects to use.
- mkdir -p objs/release/lib
- mkdir -p objs/release/bin
- mkdir -p objs/debug/lib
- mkdir -p objs/debug/bin
- chown -R flac .
- su -c 'make -f Makefile.lite' flac
- su -c 'make -f Makefile.lite test' flac