|
|
|
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
|
|
|
|
- echo 'deb http://deb.debian.org/debian stretch-backports main' >> /etc/apt/sources.list
|
|
|
|
- apt-get update
|
weston: add more libinput config options
This is so that, for instance, people using weston as their main Wayland
compositor can invert the sense of two finger scrolling or change
pointer acceleration using weston.ini, rather than having to edit C
code.
All of the options that libinput itself exposes through its API are now
exposed in weston.ini. The new options are called `tap-and-drag`,
`tap-and-drag-lock`, `disable-while-typing`, `middle-emulation`,
`left-handed`, `rotation`, `accel-profile`, `accel-speed`,
`scroll-method`, `natural-scroll`, and `scroll-button`. I have
successfully tested everything except for `rotation`, out of a lack of
hardware support.
weston now depends directly on libevdev for turning button name strings into
kernel input codes. This was needed for the `scroll-button` config
option. (weston already depends indirectly on libevdev through
libinput, so I figured people would be OK with this.) As a practical
matter for debian-style packagers, weston now has a build dependency on
libevdev-dev.
Right now, the code applies the same options to all attached devices
that a given option is relevant for. There are plans for multiple
[libinput] sections, each with different device filters, for users who
need more control here.
Signed-off-by: Eric Toombs <3672-ewtoombs@users.noreply.gitlab.freedesktop.org>
6 years ago
|
|
|
- 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 libevdev-dev libinput-dev libwebp-dev libjpeg-dev libva-dev liblcms2-dev git libgstreamer1.0-dev libgstreamer-plugins-base1.0-dev freerdp2-dev curl python3-pip python3-setuptools ninja-build
|
|
|
|
- pip3 install --user git+https://github.com/mesonbuild/meson.git@0.49
|
|
|
|
- mkdir -p /tmp/.X11-unix
|
|
|
|
- chmod 777 /tmp/.X11-unix
|
|
|
|
|
|
|
|
build-native-autotools:
|
|
|
|
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 --enable-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 --enable-remoting
|
|
|
|
- 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-*
|
|
|
|
|
|
|
|
build-native-meson:
|
|
|
|
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"
|
|
|
|
- export PATH=~/.local/bin:$PATH
|
|
|
|
- mkdir "$BUILDDIR" "$PREFIX"
|
|
|
|
- cd "$BUILDDIR"
|
|
|
|
- meson --prefix="$PREFIX" -Dsimple-dmabuf-drm=intel ..
|
|
|
|
- ninja -k0
|
|
|
|
- ninja install
|
|
|
|
- ninja test
|
|
|
|
- ninja clean
|
|
|
|
artifacts:
|
|
|
|
name: weston-$CI_COMMIT_SHA-$CI_JOB_ID
|
|
|
|
when: always
|
|
|
|
paths:
|
|
|
|
- build-*/meson-logs
|
|
|
|
- prefix-*
|