gitlab-ci: More stable URL for kernel and ramdisk artifacts, for LAVA
[mesa.git] / .gitlab-ci / container / cross_build.sh
1 #!/bin/bash
2
3 set -e
4 set -o xtrace
5
6 export DEBIAN_FRONTEND=noninteractive
7
8 # Ephemeral packages (installed for this script and removed again at the end)
9 STABLE_EPHEMERAL=" \
10 libpciaccess-dev:$arch
11 "
12
13 dpkg --add-architecture $arch
14 apt-get update
15
16 apt-get install -y --no-remove \
17 $STABLE_EPHEMERAL \
18 crossbuild-essential-$arch \
19 libelf-dev:$arch \
20 libexpat1-dev:$arch \
21 libffi-dev:$arch \
22 libstdc++6:$arch \
23 libtinfo-dev:$arch
24
25 if [[ $arch == "armhf" ]]; then
26 LLVM=llvm-7-dev
27 else
28 LLVM=llvm-8-dev
29 fi
30
31 apt-get install -y --no-remove -t buster-backports \
32 $LLVM:$arch
33
34 . .gitlab-ci/create-cross-file.sh $arch
35
36
37 . .gitlab-ci/container/container_pre_build.sh
38
39
40 # dependencies where we want a specific version
41 export LIBDRM_VERSION=libdrm-2.4.100
42
43 wget https://dri.freedesktop.org/libdrm/$LIBDRM_VERSION.tar.bz2
44 tar -xvf $LIBDRM_VERSION.tar.bz2 && rm $LIBDRM_VERSION.tar.bz2
45 cd $LIBDRM_VERSION
46 meson --cross-file=/cross_file-${arch}.txt build -D libdir=lib/$(dpkg-architecture -A $arch -qDEB_TARGET_MULTIARCH)
47 ninja -C build install
48 cd ..
49 rm -rf $LIBDRM_VERSION
50
51
52 apt-get purge -y \
53 $STABLE_EPHEMERAL
54
55 . .gitlab-ci/container/container_post_build.sh