• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1#!/usr/bin/env bash
2# The relative paths in this file only become valid at runtime.
3# shellcheck disable=SC1091
4# shellcheck disable=SC2086 # we want word splitting
5
6set -e
7
8. .gitlab-ci/setup-test-env.sh
9
10set -o xtrace
11
12uncollapsed_section_start debian_setup "Base Debian system setup"
13
14export DEBIAN_FRONTEND=noninteractive
15
16apt-get install -y libelogind0  # this interfere with systemd deps, install separately
17
18# Ephemeral packages (installed for this script and removed again at the end)
19EPHEMERAL=(
20    ccache
21    cmake
22    dpkg-dev
23    g++
24    glslang-tools
25    libexpat1-dev
26    gnupg2
27    libdrm-dev
28    libgbm-dev
29    libgles2-mesa-dev
30    liblz4-dev
31    libpciaccess-dev
32    libudev-dev
33    libvulkan-dev
34    libwaffle-dev
35    libx11-xcb-dev
36    libxcb-dri2-0-dev
37    libxcb-ewmh-dev
38    libxcb-keysyms1-dev
39    libxkbcommon-dev
40    libxrandr-dev
41    libxrender-dev
42    libzstd-dev
43    meson
44    p7zip
45    patch
46    pkgconf
47    python3-dev
48    python3-distutils
49    python3-pip
50    python3-setuptools
51    python3-wheel
52    software-properties-common
53    wine64-tools
54    xz-utils
55)
56
57DEPS=(
58    curl
59    libepoxy0
60    libxcb-shm0
61    pciutils
62    python3-lxml
63    python3-simplejson
64    sysvinit-core
65    weston
66    xwayland
67    wine
68    wine64
69    xinit
70    xserver-xorg-video-amdgpu
71    xserver-xorg-video-ati
72)
73
74apt-get update
75
76apt-get install -y --no-remove --no-install-recommends \
77      "${DEPS[@]}" "${EPHEMERAL[@]}"
78
79############### Building ...
80
81. .gitlab-ci/container/container_pre_build.sh
82
83section_end debian_setup
84
85############### Build piglit replayer
86
87# We don't run any _piglit_ Vulkan tests in the containers.
88PIGLIT_OPTS="-DPIGLIT_USE_WAFFLE=ON
89	     -DPIGLIT_USE_GBM=OFF
90	     -DPIGLIT_USE_WAYLAND=OFF
91	     -DPIGLIT_USE_X11=OFF
92	     -DPIGLIT_BUILD_GLX_TESTS=OFF
93	     -DPIGLIT_BUILD_EGL_TESTS=OFF
94	     -DPIGLIT_BUILD_WGL_TESTS=OFF
95	     -DPIGLIT_BUILD_GL_TESTS=OFF
96	     -DPIGLIT_BUILD_GLES1_TESTS=OFF
97	     -DPIGLIT_BUILD_GLES2_TESTS=OFF
98	     -DPIGLIT_BUILD_GLES3_TESTS=OFF
99	     -DPIGLIT_BUILD_CL_TESTS=OFF
100	     -DPIGLIT_BUILD_VK_TESTS=OFF
101	     -DPIGLIT_BUILD_DMA_BUF_TESTS=OFF" \
102  PIGLIT_BUILD_TARGETS="piglit_replayer" \
103  . .gitlab-ci/container/build-piglit.sh
104
105############### Build dEQP VK
106
107DEQP_API=tools \
108DEQP_TARGET=default \
109. .gitlab-ci/container/build-deqp.sh
110
111DEQP_API=VK-main \
112DEQP_TARGET=default \
113. .gitlab-ci/container/build-deqp.sh
114
115DEQP_API=VK \
116DEQP_TARGET=default \
117. .gitlab-ci/container/build-deqp.sh
118
119rm -rf /VK-GL-CTS
120
121############### Build apitrace
122
123. .gitlab-ci/container/build-apitrace.sh
124
125############### Build Fossilize
126
127. .gitlab-ci/container/build-fossilize.sh
128
129############### Build gfxreconstruct
130
131. .gitlab-ci/container/build-gfxreconstruct.sh
132
133############### Build VKD3D-Proton
134
135. .gitlab-ci/container/setup-wine.sh "/vkd3d-proton-wine64"
136
137. .gitlab-ci/container/build-vkd3d-proton.sh
138
139############### Uninstall the build software
140
141uncollapsed_section_switch debian_cleanup "Cleaning up base Debian system"
142
143apt-get purge -y "${EPHEMERAL[@]}"
144
145. .gitlab-ci/container/container_post_build.sh
146
147section_end debian_cleanup
148