1#!/bin/bash
2
3set -e
4set -o xtrace
5
6export DEBIAN_FRONTEND=noninteractive
7
8# Ephemeral packages (installed for this script and removed again at the end)
9STABLE_EPHEMERAL=" \
10      autoconf \
11      automake \
12      ccache \
13      clang-10 \
14      cmake \
15      g++ \
16      libclang-cpp10-dev \
17      libgbm-dev \
18      libgles2-mesa-dev \
19      libpcre3-dev \
20      libpciaccess-dev \
21      libpng-dev \
22      libvulkan-dev \
23      libwaffle-dev \
24      libxcb-keysyms1-dev \
25      libxkbcommon-dev \
26      libxrender-dev \
27      llvm-10-dev \
28      make \
29      meson \
30      ocl-icd-opencl-dev \
31      patch \
32      pkg-config \
33      python3-distutils \
34      python3.7-dev \
35      wget \
36      xz-utils \
37      "
38
39apt-get install -y --no-remove \
40      clinfo \
41      libclang-common-10-dev \
42      libclang-cpp10 \
43      libxcb-shm0 \
44      ocl-icd-libopencl1 \
45      python3-lxml \
46      python3-simplejson \
47      $STABLE_EPHEMERAL
48
49
50. .gitlab-ci/container/container_pre_build.sh
51
52
53############### Build spirv-tools (debian too old)
54
55. .gitlab-ci/build-spirv-tools.sh
56
57############### Build libclc
58
59. .gitlab-ci/build-libclc.sh
60
61############### Build virglrenderer
62
63. .gitlab-ci/build-virglrenderer.sh
64
65############### Build piglit
66
67INCLUDE_OPENCL_TESTS=1 . .gitlab-ci/build-piglit.sh
68
69############### Build dEQP runner (and install rust temporarily for it)
70. .gitlab-ci/build-rust.sh
71. .gitlab-ci/build-deqp-runner.sh
72rm -rf /root/.rustup /root/.cargo
73
74############### Build dEQP GL
75
76DEQP_TARGET=surfaceless . .gitlab-ci/build-deqp.sh
77
78############### Build apitrace
79
80. .gitlab-ci/build-apitrace.sh
81
82############### Build renderdoc
83
84. .gitlab-ci/build-renderdoc.sh
85
86############### Build libdrm
87
88. .gitlab-ci/build-libdrm.sh
89
90############### Uninstall the build software
91
92ccache --show-stats
93
94apt-get purge -y \
95      $STABLE_EPHEMERAL
96
97apt-get autoremove -y --purge
98