summaryrefslogtreecommitdiff
path: root/.gitlab-ci/debian-install.sh
blob: e89f6176301b6832d9789a7a2131d2043adde140 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
#!/bin/bash
# 
# Constructs the base container image used to build Weston within CI. Per the
# comment at the top of .gitlab-ci.yml, any changes in this file must bump the
# $FDO_DISTRIBUTION_TAG variable so we know the container has to be rebuilt.

set -o xtrace -o errexit

# These get temporary installed for building Linux and then force-removed.
LINUX_DEV_PKGS="
	bc
	bison
	flex
"

# These get temporary installed for building Mesa and then force-removed.
MESA_DEV_PKGS="
	bison
	flex
	gettext
	libwayland-egl-backend-dev
	libxrandr-dev
	libxshmfence-dev
	libxrandr-dev
	llvm-11-dev
	python3-mako
"

# Needed for running the custom-built mesa
MESA_RUNTIME_PKGS="
	libllvm11
"

apt-get update
apt-get -y --no-install-recommends install \
	autoconf \
	automake \
	build-essential \
	clang-11 \
	curl \
	doxygen \
	graphviz \
	freerdp2-dev \
	gcovr \
	git \
	lcov \
	libasound2-dev \
	libbluetooth-dev \
	libcairo2-dev \
	libcolord-dev \
	libdbus-1-dev \
	libdrm-dev \
	libegl1-mesa-dev \
	libelf-dev \
	libevdev-dev \
	libexpat1-dev \
	libffi-dev \
	libgbm-dev \
	libgdk-pixbuf2.0-dev \
	libgles2-mesa-dev \
	libglu1-mesa-dev \
	libgstreamer1.0-dev \
	libgstreamer-plugins-base1.0-dev \
	libinput-dev \
	libjack-jackd2-dev \
	libjpeg-dev \
	libjpeg-dev \
	liblcms2-dev \
	libmtdev-dev \
	libpam0g-dev \
	libpango1.0-dev \
	libpciaccess-dev \
	libpixman-1-dev \
	libpng-dev \
	libpulse-dev \
	libsbc-dev \
	libsystemd-dev \
	libtool \
	libudev-dev \
	libva-dev \
	libvpx-dev \
	libvulkan-dev \
	libwebp-dev \
	libx11-dev \
	libx11-xcb-dev \
	libxcb1-dev \
	libxcb-composite0-dev \
	libxcb-dri2-0-dev \
	libxcb-dri3-dev \
	libxcb-glx0-dev \
	libxcb-present-dev \
	libxcb-randr0-dev \
	libxcb-shm0-dev \
	libxcb-sync-dev \
	libxcb-xfixes0-dev \
	libxcb-xkb-dev \
	libxcursor-dev \
	libxcb-cursor-dev \
	libxdamage-dev \
	libxext-dev \
	libxfixes-dev \
	libxkbcommon-dev \
	libxml2-dev \
	libxxf86vm-dev \
	lld-11 \
	llvm-11 \
	llvm-11-dev \
	mesa-common-dev \
	ninja-build \
	pkg-config \
	python3-pip \
	python3-pygments \
	python3-setuptools \
	qemu-system \
	sysvinit-core \
	x11proto-dev \
	xwayland \
	$MESA_DEV_PKGS \
	$MESA_RUNTIME_PKGS \
	$LINUX_DEV_PKGS \


# Actually build our dependencies ...
./.gitlab-ci/build-deps.sh


# And remove packages which are only required for our build dependencies,
# which we don't need bloating the image whilst we build and run Weston.
apt-get -y --autoremove purge $LINUX_DEV_PKGS $MESA_DEV_PKGS