2018-09-06 04:01:17 -06:00
|
|
|
.artifacts-meson: &artifacts-meson
|
|
|
|
when: always
|
|
|
|
paths:
|
|
|
|
- _build/meson-logs
|
|
|
|
|
|
|
|
.artifacts-autotools: &artifacts-autotools
|
|
|
|
when: always
|
|
|
|
paths:
|
|
|
|
- _build/*.log
|
|
|
|
- _build/*/*.log
|
|
|
|
- _build/*/*/*.log
|
|
|
|
|
2018-09-06 05:10:50 -06:00
|
|
|
.meson-build: &meson-build
|
|
|
|
- meson _build
|
|
|
|
-D amdgpu=true
|
|
|
|
-D cairo-tests=true
|
|
|
|
-D etnaviv=true
|
|
|
|
-D exynos=true
|
|
|
|
-D freedreno=true
|
|
|
|
-D freedreno-kgsl=true
|
|
|
|
-D intel=true
|
|
|
|
-D libkms=true
|
|
|
|
-D man-pages=true
|
|
|
|
-D nouveau=true
|
|
|
|
-D omap=true
|
|
|
|
-D radeon=true
|
|
|
|
-D tegra=true
|
|
|
|
-D udev=true
|
|
|
|
-D valgrind=true
|
|
|
|
-D vc4=true
|
|
|
|
-D vmwgfx=true
|
|
|
|
- ninja -C _build
|
|
|
|
- ninja -C _build test
|
|
|
|
|
|
|
|
.autotools-build: &autotools-build
|
|
|
|
- mkdir _build
|
|
|
|
- cd _build
|
|
|
|
- ../autogen.sh
|
|
|
|
--enable-udev
|
|
|
|
--enable-libkms
|
|
|
|
--enable-intel
|
|
|
|
--enable-radeon
|
|
|
|
--enable-admgpu
|
|
|
|
--enable-nouveau
|
|
|
|
--enable-vmwfgx
|
|
|
|
--enable-omap-experimental-api
|
|
|
|
--enable-exynos-experimental-api
|
|
|
|
--enable-freedreno
|
|
|
|
--enable-freedreno-kgsl
|
|
|
|
--enable-tegra-experimental-api
|
|
|
|
--enable-vc4
|
|
|
|
--enable-etnaviv-experimental-api
|
|
|
|
- make
|
|
|
|
- make check
|
|
|
|
|
2018-08-30 08:51:40 -06:00
|
|
|
latest-meson:
|
|
|
|
stage: build
|
|
|
|
image: base/archlinux:latest
|
|
|
|
before_script:
|
|
|
|
- pacman -Syu --noconfirm --needed
|
|
|
|
base-devel
|
|
|
|
meson
|
|
|
|
libpciaccess
|
|
|
|
libxslt docbook-xsl
|
|
|
|
valgrind
|
|
|
|
libatomic_ops
|
|
|
|
cairo cunit
|
2018-09-06 05:10:50 -06:00
|
|
|
script: *meson-build
|
2018-08-30 08:51:40 -06:00
|
|
|
|
|
|
|
latest-autotools:
|
|
|
|
stage: build
|
|
|
|
image: base/archlinux:latest
|
2018-09-06 04:01:17 -06:00
|
|
|
artifacts: *artifacts-autotools
|
2018-08-30 08:51:40 -06:00
|
|
|
before_script:
|
|
|
|
- pacman -Syu --noconfirm --needed
|
|
|
|
base-devel
|
|
|
|
libpciaccess
|
|
|
|
libxslt docbook-xsl
|
|
|
|
valgrind
|
|
|
|
libatomic_ops
|
|
|
|
cairo cunit
|
|
|
|
xorg-util-macros
|
|
|
|
git # autogen.sh depends on git
|
2018-09-06 05:10:50 -06:00
|
|
|
script: *autotools-build
|
2018-08-30 08:51:40 -06:00
|
|
|
|
|
|
|
oldest-meson:
|
|
|
|
stage: build
|
|
|
|
image: debian:stable
|
2018-09-06 04:01:17 -06:00
|
|
|
artifacts: *artifacts-meson
|
2018-08-30 08:51:40 -06:00
|
|
|
before_script:
|
|
|
|
- printf > /etc/dpkg/dpkg.cfg.d/99-exclude-cruft "%s\n"
|
|
|
|
'path-exclude=/usr/share/doc/*'
|
|
|
|
'path-exclude=/usr/share/man/*'
|
|
|
|
- printf > /usr/sbin/policy-rc.d "%s\n"
|
|
|
|
'#!/bin/sh'
|
|
|
|
'exit 101'
|
|
|
|
- chmod +x /usr/sbin/policy-rc.d
|
|
|
|
- apt-get update
|
|
|
|
- apt-get -y --no-install-recommends install
|
|
|
|
build-essential
|
|
|
|
pkg-config
|
|
|
|
xsltproc
|
|
|
|
libxslt1-dev docbook-xsl
|
|
|
|
valgrind
|
|
|
|
libatomic-ops-dev
|
|
|
|
libcairo2-dev libcunit1-dev
|
|
|
|
ninja-build
|
|
|
|
python3 python3-pip
|
|
|
|
wget
|
|
|
|
# We need `--no-check-certificate` here because Debian's CA list is
|
|
|
|
# too old to know about LetsEncrypt's CA, so it refuses to connect
|
|
|
|
# to FreeDesktop.org
|
|
|
|
- LIBPCIACCESS_VERSION=libpciaccess-0.10 &&
|
|
|
|
wget --no-check-certificate https://xorg.freedesktop.org/releases/individual/lib/$LIBPCIACCESS_VERSION.tar.bz2 &&
|
|
|
|
tar -jxvf $LIBPCIACCESS_VERSION.tar.bz2 &&
|
|
|
|
(cd $LIBPCIACCESS_VERSION && ./configure --prefix=$HOME/prefix && make install)
|
|
|
|
- pip3 install wheel setuptools
|
|
|
|
- pip3 install meson==0.43
|
|
|
|
- export PKG_CONFIG_PATH=$HOME/prefix/lib/pkgconfig:$HOME/prefix/share/pkgconfig
|
|
|
|
- export LD_LIBRARY_PATH="$HOME/prefix/lib:$LD_LIBRARY_PATH"
|
2018-09-06 05:10:50 -06:00
|
|
|
script: *meson-build
|
2018-08-30 08:51:40 -06:00
|
|
|
|
|
|
|
oldest-autotools:
|
|
|
|
stage: build
|
|
|
|
image: debian:stable
|
2018-09-06 04:01:17 -06:00
|
|
|
artifacts: *artifacts-autotools
|
2018-08-30 08:51:40 -06:00
|
|
|
before_script:
|
|
|
|
- printf > /etc/dpkg/dpkg.cfg.d/99-exclude-cruft "%s\n"
|
|
|
|
'path-exclude=/usr/share/doc/*'
|
|
|
|
'path-exclude=/usr/share/man/*'
|
|
|
|
- printf > /usr/sbin/policy-rc.d "%s\n"
|
|
|
|
'#!/bin/sh'
|
|
|
|
'exit 101'
|
|
|
|
- chmod +x /usr/sbin/policy-rc.d
|
|
|
|
- apt-get update
|
|
|
|
- apt-get -y --no-install-recommends install
|
|
|
|
build-essential
|
|
|
|
automake
|
|
|
|
autoconf
|
|
|
|
libtool
|
|
|
|
pkg-config
|
|
|
|
xsltproc
|
|
|
|
libxslt1-dev docbook-xsl
|
|
|
|
valgrind
|
|
|
|
libatomic-ops-dev
|
|
|
|
libcairo2-dev libcunit1-dev
|
|
|
|
wget
|
|
|
|
xutils-dev
|
|
|
|
git # autogen.sh depends on git
|
|
|
|
# We need `--no-check-certificate` here because Debian's CA list is
|
|
|
|
# too old to know about LetsEncrypt's CA, so it refuses to connect
|
|
|
|
# to FreeDesktop.org
|
|
|
|
- LIBPCIACCESS_VERSION=libpciaccess-0.10 &&
|
|
|
|
wget --no-check-certificate https://xorg.freedesktop.org/releases/individual/lib/$LIBPCIACCESS_VERSION.tar.bz2 &&
|
|
|
|
tar -jxvf $LIBPCIACCESS_VERSION.tar.bz2 &&
|
|
|
|
(cd $LIBPCIACCESS_VERSION && ./configure --prefix=$HOME/prefix && make install)
|
|
|
|
- export PKG_CONFIG_PATH=$HOME/prefix/lib/pkgconfig:$HOME/prefix/share/pkgconfig
|
|
|
|
- export LD_LIBRARY_PATH="$HOME/prefix/lib:$LD_LIBRARY_PATH"
|
2018-09-06 05:10:50 -06:00
|
|
|
script: *autotools-build
|