freedreno/a6xx: Clear sysmem with CP_BLIT
[mesa.git] / .gitlab-ci / debian-arm64-test-install.sh
1 #!/bin/bash
2
3 set -e
4 set -o xtrace
5
6 ############### Install packages for building
7 apt-get -y install ca-certificates
8 sed -i -e 's/http:\/\/deb/https:\/\/deb/g' /etc/apt/sources.list
9 echo 'deb https://deb.debian.org/debian buster-backports main' >/etc/apt/sources.list.d/backports.list
10 apt-get update
11 apt-get -y install \
12 bzip2 \
13 cmake \
14 g++ \
15 gcc \
16 git \
17 libc6-dev \
18 libdrm-nouveau2 \
19 libexpat1 \
20 libgbm-dev \
21 libgbm-dev \
22 libgles2-mesa-dev \
23 libllvm8 \
24 libpng16-16 \
25 libpng-dev \
26 meson \
27 pkg-config \
28 procps \
29 python \
30 wget \
31 zlib1g
32
33 ############### Build dEQP
34
35 git config --global user.email "mesa@example.com"
36 git config --global user.name "Mesa CI"
37 # XXX: Use --depth 1 once we can drop the cherry-picks.
38 git clone \
39 https://github.com/KhronosGroup/VK-GL-CTS.git \
40 -b opengl-es-cts-3.2.5.1 \
41 /VK-GL-CTS
42 cd /VK-GL-CTS
43 # Fix surfaceless build
44 git cherry-pick -x 22f41e5e321c6dcd8569c4dad91bce89f06b3670
45 git cherry-pick -x 1daa8dff73161ea60ead965bd6c9f2a0a2165648
46
47 # surfaceless links against libkms and such despite not using it.
48 sed -i '/gbm/d' targets/surfaceless/surfaceless.cmake
49 sed -i '/libkms/d' targets/surfaceless/surfaceless.cmake
50 sed -i '/libgbm/d' targets/surfaceless/surfaceless.cmake
51
52 # --insecure is due to SSL cert failures hitting sourceforge for zlib and
53 # libpng (sigh). The archives get their checksums checked anyway, and git
54 # always goes through ssh or https.
55 python3 external/fetch_sources.py --insecure
56
57 mkdir -p /deqp
58 cd /deqp
59 cmake -G Ninja \
60 -DDEQP_TARGET=surfaceless \
61 -DCMAKE_BUILD_TYPE=Release \
62 /VK-GL-CTS
63 ninja
64
65 # Copy out the mustpass lists we want from a bunch of other junk.
66 mkdir /deqp/mustpass
67 for gles in gles2 gles3 gles31; do
68 cp \
69 /deqp/external/openglcts/modules/gl_cts/data/mustpass/gles/aosp_mustpass/3.2.5.x/$gles-master.txt \
70 /deqp/mustpass/$gles-master.txt
71 done
72
73 rm -rf /deqp/external
74 rm -rf /deqp/modules/internal
75 rm -rf /deqp/executor
76 rm -rf /deqp/execserver
77 rm -rf /deqp/modules/egl
78 rm -rf /deqp/framework
79 find -iname '*cmake*' -o -name '*ninja*' -o -name '*.o' -o -name '*.a' | xargs rm -rf
80 strip modules/*/deqp-*
81 du -sh *
82 rm -rf /VK-GL-CTS
83
84 ############### Uninstall the build software
85
86 apt-get purge -y \
87 bzip2 \
88 cmake \
89 g++ \
90 gcc \
91 git \
92 libc6-dev \
93 libgbm-dev \
94 libgles2-mesa-dev \
95 libpng-dev \
96 meson \
97 pkg-config \
98 python \
99 wget
100
101 apt-get autoremove -y --purge