weston/.gitlab-ci.yml
Michael Olbrich 27fb564a19 backend-drm: build DRM virtual support when the pipewire plugin is enabled
The pipewire plugin uses this API as well, not just the remoting plugin. So
enable it if either is enabled.

And disable pipewire in the no-gl-renderer CI build. The virtual outputs don't
work without it.

Signed-off-by: Michael Olbrich <m.olbrich@pengutronix.de>
2020-08-17 10:12:54 +00:00

112 lines
2.6 KiB
YAML

# vim: set expandtab shiftwidth=2 tabstop=8 textwidth=0:
variables:
FDO_UPSTREAM_REPO: wayland/weston
include:
- project: 'freedesktop/ci-templates'
ref: 59de540b620c45739871d1a073d76d5521989d11
file: '/templates/debian.yml'
stages:
- container_prep
- build
- pages
.debian:
variables:
FDO_DISTRIBUTION_VERSION: buster
FDO_DISTRIBUTION_EXEC: 'bash .gitlab-ci/debian-install.sh'
FDO_DISTRIBUTION_TAG: '2020-06-24.0'
container_prep:
extends:
- .debian
- .fdo.container-build@debian
stage: container_prep
.build-native:
extends:
- .debian
- .fdo.distribution-image@debian
stage: build
before_script:
- git clone --depth=1 https://gitlab.freedesktop.org/wayland/wayland-protocols
- export WAYLAND_PROTOCOLS_DIR="$(pwd)/prefix-wayland-protocols"
- export PKG_CONFIG_PATH="$WAYLAND_PROTOCOLS_DIR/share/pkgconfig:$PKG_CONFIG_PATH"
- export MAKEFLAGS="-j4"
- cd wayland-protocols
- git show -s HEAD
- mkdir build
- cd build
- ../autogen.sh --prefix="$WAYLAND_PROTOCOLS_DIR"
- make install
- cd ../../
- export XDG_RUNTIME_DIR="$(mktemp -p $(pwd) -d xdg-runtime-XXXXXX)"
- export BUILD_ID="weston-$CI_JOB_NAME"
- export PREFIX="$(pwd)/prefix-$BUILD_ID"
- export BUILDDIR="$(pwd)/build-$BUILD_ID"
- export TESTS_RES_PATH="$BUILDDIR/tests-res.txt"
- mkdir "$BUILDDIR" "$PREFIX"
.build-native-meson:
extends: .build-native
tags:
- kvm
script:
- export PATH=~/.local/bin:$PATH
- cd "$BUILDDIR"
- meson --prefix="$PREFIX" ${MESON_OPTIONS} ..
- ninja -k0
- ninja install
- virtme-run --rw --pwd --kimg /weston-virtme/bzImage --script-dir ../.gitlab-ci/virtme-scripts
- TEST_RES=$(cat $TESTS_RES_PATH)
- rm $TESTS_RES_PATH
- ninja clean
- cp -R /weston-virtme ./
- rm weston-virtme/bzImage
- exit $TEST_RES
artifacts:
name: weston-$CI_COMMIT_SHA
when: always
paths:
- build-*/meson-logs
- build-*/weston-virtme
- prefix-*
build-native-meson-default-options:
variables:
MESON_OPTIONS: >
-Dwerror=true
-Ddoc=true
extends: .build-native-meson
build-native-meson-no-gl-renderer:
variables:
MESON_OPTIONS: >
-Dsimple-clients=damage,im,shm,touch,dmabuf-v4l
-Drenderer-gl=false
-Dremoting=false
-Dpipewire=false
-Dwerror=true
extends: .build-native-meson
pages:
stage: pages
dependencies:
- build-native-meson-default-options
script:
- export PREFIX=$(pwd)/prefix-weston-build-native-meson-default-options
- mkdir public
- cp -R $PREFIX/share/doc/weston/* public/
artifacts:
paths:
- public
only:
- master