80 lines
1.9 KiB
YAML
80 lines
1.9 KiB
YAML
# vim: set expandtab shiftwidth=2 tabstop=8 textwidth=0:
|
|
|
|
variables:
|
|
UPSTREAM_REPO: wayland/weston
|
|
DEBIAN_VERSION: buster
|
|
DEBIAN_EXEC: 'bash .gitlab-ci/debian-install.sh'
|
|
|
|
DEBIAN_TAG: '2019-06-26.0'
|
|
DEBIAN_CONTAINER_IMAGE: $CI_REGISTRY_IMAGE/debian/$DEBIAN_VERSION:$DEBIAN_TAG
|
|
|
|
|
|
include:
|
|
- project: 'wayland/ci-templates'
|
|
ref: c73dae8b84697ef18e2dbbf4fed7386d9652b0cd
|
|
file: '/templates/debian.yml'
|
|
|
|
|
|
stages:
|
|
- container_prep
|
|
- build
|
|
- pages
|
|
|
|
|
|
container_prep:
|
|
extends: .debian@container-ifnot-exists
|
|
stage: container_prep
|
|
|
|
|
|
.build-native:
|
|
stage: build
|
|
image: $DEBIAN_CONTAINER_IMAGE
|
|
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"
|
|
- mkdir "$BUILDDIR" "$PREFIX"
|
|
|
|
build-native-meson:
|
|
extends: .build-native
|
|
script:
|
|
- export PATH=~/.local/bin:$PATH
|
|
- cd "$BUILDDIR"
|
|
- meson --prefix="$PREFIX" -Dsimple-dmabuf-drm=intel -Dwerror=true -Ddoc=true ..
|
|
- ninja -k0
|
|
- ninja install
|
|
- ninja test
|
|
- ninja clean
|
|
artifacts:
|
|
name: weston-$CI_COMMIT_SHA
|
|
when: always
|
|
paths:
|
|
- build-*/meson-logs
|
|
- prefix-*
|
|
|
|
pages:
|
|
stage: pages
|
|
dependencies:
|
|
- build-native-meson
|
|
script:
|
|
- export PREFIX=$(pwd)/prefix-weston-build-native-meson
|
|
- mkdir public
|
|
- cp -R $PREFIX/share/doc/weston/* public/
|
|
artifacts:
|
|
paths:
|
|
- public
|
|
only:
|
|
- master
|