diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml new file mode 100644 index 00000000..80b99278 --- /dev/null +++ b/.gitlab-ci.yml @@ -0,0 +1,49 @@ +image: debian:stretch + +stages: + - build + +before_script: + - echo 'path-exclude=/usr/share/doc/*' > /etc/dpkg/dpkg.cfg.d/99-exclude-cruft + - echo 'path-exclude=/usr/share/man/*' >> /etc/dpkg/dpkg.cfg.d/99-exclude-cruft + - echo '#!/bin/sh' > /usr/sbin/policy-rc.d + - echo 'exit 101' >> /usr/sbin/policy-rc.d + - chmod +x /usr/sbin/policy-rc.d + - apt-get update + - apt-get -y --no-install-recommends install build-essential automake autoconf libtool pkg-config libexpat1-dev libffi-dev libxml2-dev libpixman-1-dev libpng-dev libjpeg-dev libcolord-dev mesa-common-dev libglu1-mesa-dev libegl1-mesa-dev libgles2-mesa-dev libwayland-dev libxcb1-dev libxcb-composite0-dev libxcb-xfixes0-dev libxcb-xkb-dev libx11-xcb-dev libx11-dev libudev-dev libgbm-dev libxkbcommon-dev libcairo2-dev libpango1.0-dev libgdk-pixbuf2.0-dev libxcursor-dev libmtdev-dev libpam0g-dev libvpx-dev libsystemd-dev libinput-dev libwebp-dev libjpeg-dev libva-dev liblcms2-dev git + - mkdir -p /tmp/.X11-unix + - chmod 777 /tmp/.X11-unix + +build-native: + stage: build + script: + - git clone --depth=1 git://anongit.freedesktop.org/git/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_$CI_COMMIT_SHA-$CI_JOB_ID" + - export PREFIX="$(pwd)/prefix-$BUILD_ID" + - export BUILDDIR="$(pwd)/build-$BUILD_ID" + - mkdir "$BUILDDIR" "$PREFIX" + - cd "$BUILDDIR" + - ../autogen.sh --prefix="$PREFIX" --disable-setuid-install --enable-xwayland --enable-x11-compositor --enable-drm-compositor --enable-wayland-compositor --enable-headless-compositor --enable-fbdev-compositor --disable-rdp-compositor --enable-screen-sharing --enable-vaapi-recorder --enable-simple-clients --enable-simple-egl-clients --enable-simple-dmabuf-drm-client --enable-simple-dmabuf-v4l-client --enable-clients --enable-resize-optimization --enable-weston-launch --enable-fullscreen-shell --enable-colord --enable-dbus --enable-systemd-login --enable-junit-xml --enable-ivi-shell --enable-wcap-tools --disable-libunwind --enable-demo-clients-install --enable-lcms --with-cairo=image + - make all + - make check + - make install + - make distcheck + artifacts: + name: weston-$CI_COMMIT_SHA-$CI_JOB_ID + when: always + paths: + - build-*/weston-*.tar.xz + - build-*/*.log + - build-*/logs + - prefix-*