2019-03-18 11:09:29 +01:00
|
|
|
#!/bin/bash
|
|
|
|
|
|
|
|
set -e
|
|
|
|
set -o xtrace
|
|
|
|
|
2020-11-12 12:01:45 +01:00
|
|
|
# Packages which are needed by this script, but not for the xserver build
|
|
|
|
EPHEMERAL="
|
2020-09-15 11:49:20 +02:00
|
|
|
libcairo2-dev
|
|
|
|
libevdev-dev
|
|
|
|
libexpat-dev
|
|
|
|
libgles2-mesa-dev
|
|
|
|
libinput-dev
|
2020-11-12 12:01:45 +01:00
|
|
|
libxkbcommon-dev
|
|
|
|
x11-utils
|
|
|
|
x11-xserver-utils
|
|
|
|
xauth
|
|
|
|
xvfb
|
|
|
|
"
|
|
|
|
|
2019-03-26 20:58:39 +01:00
|
|
|
apt-get install -y \
|
2020-11-12 12:01:45 +01:00
|
|
|
$EPHEMERAL \
|
2019-12-23 09:32:07 +01:00
|
|
|
autoconf \
|
|
|
|
automake \
|
2020-11-12 12:19:09 +01:00
|
|
|
bison \
|
|
|
|
build-essential \
|
2019-12-23 09:32:07 +01:00
|
|
|
ca-certificates \
|
|
|
|
ccache \
|
2020-11-12 12:19:09 +01:00
|
|
|
flex \
|
2020-12-17 18:58:28 +01:00
|
|
|
git \
|
2020-11-12 12:19:09 +01:00
|
|
|
libaudit-dev \
|
|
|
|
libbsd-dev \
|
2020-09-15 11:49:20 +02:00
|
|
|
libcairo2 \
|
2020-11-12 12:19:09 +01:00
|
|
|
libdbus-1-dev \
|
|
|
|
libdmx-dev \
|
|
|
|
libdrm-dev \
|
|
|
|
libegl1-mesa-dev \
|
|
|
|
libepoxy-dev \
|
2020-09-15 11:49:20 +02:00
|
|
|
libevdev2 \
|
|
|
|
libexpat1 \
|
|
|
|
libffi-dev \
|
2020-11-12 12:19:09 +01:00
|
|
|
libgbm-dev \
|
|
|
|
libgcrypt-dev \
|
|
|
|
libgl1-mesa-dev \
|
2020-09-15 11:49:20 +02:00
|
|
|
libgles2 \
|
2019-12-23 09:32:07 +01:00
|
|
|
libglx-mesa0 \
|
2020-09-15 11:49:20 +02:00
|
|
|
libinput10 \
|
2019-12-23 09:53:26 +01:00
|
|
|
libnvidia-egl-wayland-dev \
|
2020-11-12 12:19:09 +01:00
|
|
|
libpciaccess-dev \
|
|
|
|
libpixman-1-dev \
|
|
|
|
libselinux1-dev \
|
|
|
|
libsystemd-dev \
|
2019-12-23 09:32:07 +01:00
|
|
|
libtool \
|
2020-11-12 12:19:09 +01:00
|
|
|
libudev-dev \
|
|
|
|
libunwind-dev \
|
|
|
|
libx11-dev \
|
|
|
|
libx11-xcb-dev \
|
|
|
|
libxau-dev \
|
|
|
|
libxaw7-dev \
|
|
|
|
libxcb-glx0-dev \
|
|
|
|
libxcb-icccm4-dev \
|
|
|
|
libxcb-image0-dev \
|
|
|
|
libxcb-keysyms1-dev \
|
|
|
|
libxcb-randr0-dev \
|
|
|
|
libxcb-render-util0-dev \
|
|
|
|
libxcb-render0-dev \
|
|
|
|
libxcb-shape0-dev \
|
|
|
|
libxcb-shm0-dev \
|
|
|
|
libxcb-util0-dev \
|
|
|
|
libxcb-xf86dri0-dev \
|
|
|
|
libxcb-xkb-dev \
|
|
|
|
libxcb-xv0-dev \
|
|
|
|
libxcb1-dev \
|
|
|
|
libxdmcp-dev \
|
|
|
|
libxext-dev \
|
|
|
|
libxfixes-dev \
|
|
|
|
libxfont-dev \
|
|
|
|
libxi-dev \
|
|
|
|
libxinerama-dev \
|
2020-09-15 11:49:20 +02:00
|
|
|
libxkbcommon0 \
|
2020-11-12 12:19:09 +01:00
|
|
|
libxkbfile-dev \
|
|
|
|
libxmu-dev \
|
|
|
|
libxmuu-dev \
|
|
|
|
libxpm-dev \
|
|
|
|
libxrender-dev \
|
|
|
|
libxres-dev \
|
|
|
|
libxshmfence-dev \
|
|
|
|
libxt-dev \
|
|
|
|
libxtst-dev \
|
|
|
|
libxv-dev \
|
|
|
|
mesa-common-dev \
|
2019-12-23 09:32:07 +01:00
|
|
|
meson \
|
2020-11-12 12:19:09 +01:00
|
|
|
nettle-dev \
|
|
|
|
pkg-config \
|
2019-12-23 09:32:07 +01:00
|
|
|
python3-mako \
|
|
|
|
python3-numpy \
|
2020-11-12 12:19:09 +01:00
|
|
|
python3-six \
|
|
|
|
x11proto-dev \
|
|
|
|
xfonts-utils \
|
|
|
|
xkb-data \
|
|
|
|
xtrans-dev \
|
|
|
|
xutils-dev
|
2019-03-18 11:09:29 +01:00
|
|
|
|
|
|
|
cd /root
|
2019-03-26 21:33:09 +01:00
|
|
|
|
2020-09-15 11:49:20 +02:00
|
|
|
# weston 9.0 requires libwayland >= 1.18
|
|
|
|
git clone https://gitlab.freedesktop.org/wayland/wayland.git --depth 1 --branch=1.18.0
|
|
|
|
cd wayland
|
|
|
|
meson _build -D{documentation,dtd_validation}=false
|
|
|
|
ninja -C _build -j${FDO_CI_CONCURRENT:-4} install
|
|
|
|
cd ..
|
|
|
|
rm -rf wayland
|
|
|
|
|
2020-11-11 12:45:36 +01:00
|
|
|
# Xwayland requires wayland-protocols >= 1.18, but Debian buster has 1.17 only
|
|
|
|
git clone https://gitlab.freedesktop.org/wayland/wayland-protocols.git --depth 1 --branch=1.18
|
|
|
|
cd wayland-protocols
|
|
|
|
./autogen.sh
|
|
|
|
make -j${FDO_CI_CONCURRENT:-4} install
|
|
|
|
cd ..
|
|
|
|
rm -rf wayland-protocols
|
|
|
|
|
2020-09-15 11:49:20 +02:00
|
|
|
# Xwayland requires weston > 5.0, but Debian buster has 5.0 only
|
|
|
|
git clone https://gitlab.freedesktop.org/wayland/weston.git --depth 1 --branch=9.0
|
|
|
|
cd weston
|
|
|
|
meson _build -Dbackend-{drm,drm-screencast-vaapi,fbdev,rdp,wayland,x11}=false \
|
|
|
|
-Dbackend-default=headless -Dcolor-management-{colord,lcms}=false \
|
|
|
|
-Ddemo-clients=false -Dimage-{jpeg,webp}=false \
|
|
|
|
-D{pipewire,remoting,screenshare,test-junit-xml,wcap-decode,weston-launch,xwayland}=false \
|
|
|
|
-Dshell-{fullscreen,ivi,kiosk}=false -Dsimple-clients=
|
|
|
|
ninja -C _build -j${FDO_CI_CONCURRENT:-4} install
|
|
|
|
cd ..
|
|
|
|
rm -rf weston
|
|
|
|
|
2019-03-26 21:35:41 +01:00
|
|
|
git clone https://gitlab.freedesktop.org/mesa/piglit.git --depth 1
|
2019-03-18 11:09:29 +01:00
|
|
|
|
2019-03-26 21:35:41 +01:00
|
|
|
git clone https://gitlab.freedesktop.org/xorg/test/xts --depth 1
|
2019-03-18 11:09:29 +01:00
|
|
|
cd xts
|
|
|
|
./autogen.sh
|
2020-09-16 12:55:35 +02:00
|
|
|
xvfb-run make -j${FDO_CI_CONCURRENT:-4}
|
2019-03-18 11:09:29 +01:00
|
|
|
cd ..
|
|
|
|
|
2019-03-26 21:38:22 +01:00
|
|
|
git clone https://gitlab.freedesktop.org/xorg/test/rendercheck --depth 1
|
|
|
|
cd rendercheck
|
|
|
|
meson build
|
2020-09-16 12:55:35 +02:00
|
|
|
ninja -j${FDO_CI_CONCURRENT:-4} -C build install
|
2019-03-26 21:38:22 +01:00
|
|
|
cd ..
|
|
|
|
|
2020-11-11 18:22:28 +01:00
|
|
|
rm -rf piglit/.git xts/.git piglit/tests/spec/ rendercheck/
|
2019-03-18 11:09:29 +01:00
|
|
|
|
|
|
|
echo '[xts]' > piglit/piglit.conf
|
|
|
|
echo 'path=/root/xts' >> piglit/piglit.conf
|
|
|
|
|
2019-12-23 09:51:43 +01:00
|
|
|
find -name \*.a -o -name \*.o -o -name \*.c -o -name \*.h -o -name \*.la\* | xargs rm
|
|
|
|
strip xts/xts5/*/.libs/*
|
2019-03-18 11:09:29 +01:00
|
|
|
|
2021-01-15 18:32:30 +01:00
|
|
|
# Running meson dist requires xkbcomp 1.4.1 or newer, but Debian buster has 1.4.0 only
|
|
|
|
git clone https://gitlab.freedesktop.org/xorg/app/xkbcomp.git --depth 1 --branch=xkbcomp-1.4.1
|
|
|
|
cd xkbcomp
|
|
|
|
./autogen.sh --datarootdir=/usr/share
|
|
|
|
make -j${FDO_CI_CONCURRENT:-4} install
|
|
|
|
cd ..
|
|
|
|
rm -rf xkbcomp
|
|
|
|
|
2019-12-23 09:32:07 +01:00
|
|
|
apt-get purge -y \
|
2020-11-12 12:01:45 +01:00
|
|
|
$EPHEMERAL
|
2019-12-23 09:32:07 +01:00
|
|
|
|
2019-03-18 11:09:29 +01:00
|
|
|
apt-get autoremove -y --purge
|