gitlab-ci: build Fossilize in the test image for VK
[mesa.git] / .gitlab-ci / container / x86_test-vk.sh
1 #!/bin/bash
2
3 set -e
4 set -o xtrace
5
6 export DEBIAN_FRONTEND=noninteractive
7
8 apt-get install -y \
9 ca-certificates \
10 gnupg \
11
12 # Upstream LLVM package repository
13 apt-key add .gitlab-ci/container/llvm-snapshot.gpg.key
14 echo "deb https://apt.llvm.org/buster/ llvm-toolchain-buster-9 main" >/etc/apt/sources.list.d/llvm9.list
15
16 sed -i -e 's/http:\/\/deb/https:\/\/deb/g' /etc/apt/sources.list
17 echo 'deb https://deb.debian.org/debian buster-backports main' >/etc/apt/sources.list.d/backports.list
18
19 apt-get update
20
21 # Use newer packages from backports by default
22 cat >/etc/apt/preferences <<EOF
23 Package: *
24 Pin: release a=buster-backports
25 Pin-Priority: 500
26 EOF
27
28 apt-get dist-upgrade -y
29
30 apt-get install -y --no-remove \
31 cmake \
32 g++ \
33 git \
34 git-lfs \
35 gcc \
36 libexpat1 \
37 libgbm-dev \
38 libgles2-mesa-dev \
39 liblz4-1 \
40 liblz4-dev \
41 libpng16-16 \
42 libpng-dev \
43 libvulkan1 \
44 libvulkan-dev \
45 libwayland-client0 \
46 libwayland-server0 \
47 libxcb-ewmh2 \
48 libxcb-ewmh-dev \
49 libxcb-keysyms1 \
50 libxcb-keysyms1-dev \
51 libxcb-randr0 \
52 libxcb-xfixes0 \
53 libxkbcommon0 \
54 libxkbcommon-dev \
55 libxrandr2 \
56 libxrandr-dev \
57 libxrender1 \
58 libxrender-dev \
59 libllvm9 \
60 meson \
61 patch \
62 pkg-config \
63 python3-distutils \
64 python3-pil \
65 python3-yaml \
66 python \
67 xauth \
68 xvfb
69
70
71 ############### Build dEQP runner
72
73 . .gitlab-ci/build-cts-runner.sh
74
75 ############### Build Fossilize
76
77 . .gitlab-ci/build-fossilize.sh
78
79 ############### Build dEQP VK
80
81 . .gitlab-ci/build-deqp-vk.sh
82
83 ############### Build gfxreconstruct
84
85 . .gitlab-ci/build-gfxreconstruct.sh
86
87 ############### Build VulkanTools
88
89 . .gitlab-ci/build-vulkantools.sh
90
91 ############### Uninstall the build software
92
93 apt-get purge -y \
94 cmake \
95 g++ \
96 gcc \
97 gnupg \
98 libgbm-dev \
99 libgles2-mesa-dev \
100 liblz4-dev \
101 libpng-dev \
102 libvulkan-dev \
103 libxcb-ewmh-dev \
104 libxcb-keysyms1-dev \
105 libxkbcommon-dev \
106 libxrandr-dev \
107 libxrender-dev \
108 meson \
109 patch \
110 pkg-config
111
112 apt-get autoremove -y --purge