• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1#!/usr/bin/env bash
2# shellcheck disable=SC2086 # we want word splitting
3
4set -e
5
6. .gitlab-ci/setup-test-env.sh
7
8set -o xtrace
9
10export LLVM_VERSION="${LLVM_VERSION:=15}"
11
12apt-get -y install ca-certificates
13sed -i -e 's/http:\/\/deb/https:\/\/deb/g' /etc/apt/sources.list.d/*
14echo "deb [trusted=yes] https://gitlab.freedesktop.org/gfx-ci/ci-deb-repo/-/raw/${PKG_REPO_REV}/ ${FDO_DISTRIBUTION_VERSION%-*} main" | tee /etc/apt/sources.list.d/gfx-ci_.list
15apt-get update
16
17# Ephemeral packages (installed for this script and removed again at the end)
18EPHEMERAL=(
19    libssl-dev
20)
21
22DEPS=(
23    apt-utils
24    android-libext4-utils
25    autoconf
26    automake
27    bc
28    bison
29    ccache
30    cmake
31    curl
32    "clang-${LLVM_VERSION}"
33    fastboot
34    flatbuffers-compiler
35    flex
36    g++
37    git
38    glslang-tools
39    kmod
40    "libclang-${LLVM_VERSION}-dev"
41    "libclang-cpp${LLVM_VERSION}-dev"
42    "libclang-common-${LLVM_VERSION}-dev"
43    libasan8
44    libdrm-dev
45    libelf-dev
46    libexpat1-dev
47    libflatbuffers-dev
48    "libllvm${LLVM_VERSION}"
49    libvulkan-dev
50    libx11-dev
51    libx11-xcb-dev
52    libxcb-dri2-0-dev
53    libxcb-dri3-dev
54    libxcb-glx0-dev
55    libxcb-present-dev
56    libxcb-randr0-dev
57    libxcb-shm0-dev
58    libxcb-xfixes0-dev
59    libxdamage-dev
60    libxext-dev
61    libxrandr-dev
62    libxshmfence-dev
63    libxtensor-dev
64    libxxf86vm-dev
65    libwayland-dev
66    libwayland-egl-backend-dev
67    "llvm-${LLVM_VERSION}-dev"
68    ninja-build
69    meson
70    openssh-server
71    pkgconf
72    python3-mako
73    python3-pil
74    python3-pip
75    python3-pycparser
76    python3-requests
77    python3-setuptools
78    u-boot-tools
79    xz-utils
80    zlib1g-dev
81    zstd
82)
83
84apt-get -y install "${DEPS[@]}" "${EPHEMERAL[@]}"
85
86pip3 install --break-system-packages git+http://gitlab.freedesktop.org/freedesktop/ci-templates@ffe4d1b10aab7534489f0c4bbc4c5899df17d3f2
87
88arch=armhf
89. .gitlab-ci/container/cross_build.sh
90
91. .gitlab-ci/container/container_pre_build.sh
92
93. .gitlab-ci/container/build-mold.sh
94
95. .gitlab-ci/container/build-wayland.sh
96
97. .gitlab-ci/container/build-llvm-spirv.sh
98
99. .gitlab-ci/container/build-libclc.sh
100
101. .gitlab-ci/container/install-meson.sh
102
103. .gitlab-ci/container/build-rust.sh
104
105. .gitlab-ci/container/build-bindgen.sh
106
107apt-get purge -y "${EPHEMERAL[@]}"
108
109. .gitlab-ci/container/container_post_build.sh
110