summaryrefslogtreecommitdiffstats
path: root/rules/mesalib.in
blob: 984ee78061bedcb88f4743d95507990de20e822a (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
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
## SECTION=multimedia_libs

menuconfig MESALIB
	tristate
	prompt "mesa                          "
	select HOST_MESALIB
	select HOST_MESON
	select HOST_MAKEDEPEND
	select HOST_SYSTEM_PYTHON3
	select HOST_SYSTEM_PYTHON3_MAKO
	select HOST_GLSLANG		if MESALIB_VULKAN_AMD
	select HOST_GLSLANG		if MESALIB_VULKAN_INTEL
	select HOST_GLSLANG		if MESALIB_VULKAN_OVERLAY
	select GCCLIBS
	select GCCLIBS_CXX
	select LIBDRM
	select LIBVA			if MESALIB_VA
	select WAYLAND			if MESALIB_EGL_WAYLAND
	select WAYLAND_PROTOCOLS	if MESALIB_EGL_WAYLAND
	select LIBDRM_AMDGPU		if MESALIB_DRI_RADEONSI
	select LIBDRM_RADEON		if MESALIB_DRI_R300
	select LIBDRM_RADEON		if MESALIB_DRI_R600
	select LIBDRM_RADEON		if MESALIB_DRI_RADEONSI
	select LIBDRM_NOUVEAU		if MESALIB_DRI_NOUVEAU
	select LIBELF			if MESALIB_DRI_RADEONSI
	select LLVM			if MESALIB_LLVM
	select VULKAN_LOADER		if MESALIB_DRI_ZINK
	select LM_SENSORS		if MESALIB_LMSENSORS
	select XORGPROTO		if MESALIB_GLX
	select XORG_LIB_X11		if MESALIB_GLX || MESALIB_EGL_X11 && MESALIB_EGL_DRM
	select XORG_LIB_XEXT		if MESALIB_GLX
	select XORG_LIB_XXF86VM		if MESALIB_GLX
	select XORG_LIB_XDAMAGE		if MESALIB_GLX
	select XORG_LIB_XFIXES		if MESALIB_GLX
	select XORG_LIB_XRANDR		if MESALIB_EGL_X11
	select XORG_LIB_XSHMFENCE	if MESALIB_DRI3
	select EXPAT
	select ZLIB
	select ZSTD			if MESALIB_SHADER_CACHE
	help
	  Mesa is a 3-D graphics library with an API which is very
	  similar to that of OpenGL. See the project homepage for
	  details:

		http://www.mesa3d.org/

if MESALIB

config MESALIB_DRI3
	bool

config MESALIB_LLVM
	bool

comment "Drivers"

config MESALIB_DRI_SWRAST
	bool
	select MESALIB_LLVM
	prompt "Software Rasterizer"

config MESALIB_DRI_R300
	bool
	prompt "AMD R300"

config MESALIB_DRI_R600
	bool
	prompt "AMD R600"

config MESALIB_DRI_RADEONSI
	bool
	select MESALIB_LLVM
	prompt "AMD RadeonSI"

config MESALIB_DRI_NOUVEAU
	bool
	prompt "Nvidia > GForce4"

config MESALIB_DRI_KMSRO
	bool
	default MESALIB_DRI_V3D || MESALIB_DRI_VC4 || MESALIB_DRI_ETNAVIV || MESALIB_DRI_PANFROST || MESALIB_DRI_LIMA || MESALIB_DRI_FREEDRENO

config MESALIB_DRI_SVGA
	bool
	prompt "SVGA"

config MESALIB_DRI_VIRGL
	bool
	prompt "VIRGL"

config MESALIB_DRI_FREEDRENO
	bool
	prompt "Freedreno"

config MESALIB_DRI_ETNAVIV
	bool
	prompt "Etnaviv"

config MESALIB_DRI_V3D
	bool
	select MESALIB_XMLCONFIG
	prompt "v3d"

config MESALIB_DRI_VC4
	bool
	select MESALIB_XMLCONFIG
	prompt "vc4"

config MESALIB_DRI_PANFROST
	bool
	prompt "panfrost"

config MESALIB_DRI_IRIS
	bool
	select MESALIB_XMLCONFIG
	prompt "iris"

config MESALIB_DRI_LIMA
	bool
	prompt "lima"

config MESALIB_DRI_ZINK
	bool
	prompt "zink"

config MESALIB_DRI_ASAHI
	bool
	# needs libclc
	depends on BROKEN
	prompt "asahi"

config MESALIB_DRI_CROCUS
	bool
	select MESALIB_XMLCONFIG
	prompt "crocus"

comment "API Support"

config MESALIB_OPENGL
	bool
	prompt "OpenGL"

config MESALIB_GLES1
	bool
	select MESALIB_OPENGL
	prompt "OpenGL ES1"

config MESALIB_GLES2
	bool
	select MESALIB_OPENGL
	prompt "OpenGL ES2"

config MESALIB_GLX
	select MESALIB_EGL_X11
	select MESALIB_OPENGL
	select MESALIB_DRI3
	prompt "GLX"
	bool

config MESALIB_EGL
	bool
	prompt "EGL"

config MESALIB_GBM
	bool
	prompt "GBM"

config MESALIB_VA
	bool
	depends on MESALIB_DRI_RADEONSI || MESALIB_DRI_R600 || MESALIB_DRI_NOUVEAU
	prompt "VA"

if MESALIB_VA

menu "Patent encumbered video codecs"

config MESALIB_VIDEO_VC1DEC
	bool
	prompt "VC-1 decoding"

config MESALIB_VIDEO_H264DEC
	bool
	prompt "H.264 decoding"

config MESALIB_VIDEO_H264ENC
	bool
	prompt "H.264 encoding"

config MESALIB_VIDEO_H265DEC
	bool
	prompt "H.265 decoding"

config MESALIB_VIDEO_H265ENC
	bool
	prompt "H.265 encoding"

config MESALIB_VIDEO_AV1DEC
	bool
	prompt "AV1 decoding"

config MESALIB_VIDEO_AV1ENC
	bool
	prompt "AV1 encoding"

config MESALIB_VIDEO_VP9DEC
	bool
	prompt "VP9 decoding"

endmenu

endif

comment "Platforms"

config MESALIB_EGL_X11
	bool
	select MESALIB_DRI3
	prompt "X11"

config MESALIB_EGL_DRM
	bool
	select MESALIB_GBM
	select MESALIB_EGL
	prompt "DRM"

config MESALIB_EGL_WAYLAND
	bool
	select MESALIB_EGL
	prompt "Wayland"

comment "Gallium HUD options"

config MESALIB_EXTENDED_HUD
	prompt "Extended Gallium HUD options"
	bool

config MESALIB_LMSENSORS
	prompt "LMsensors support"
	depends on MESALIB_EXTENDED_HUD
	bool

comment "Vulkan drivers"

config MESALIB_VULKAN_AMD
	bool
	select MESALIB_LLVM
	prompt "AMD (Radv)"

config MESALIB_VULKAN_BROADCOM
	bool
	select MESALIB_XMLCONFIG
	prompt "Broadcom"

config MESALIB_VULKAN_INTEL
	bool
	select MESALIB_XMLCONFIG
	prompt "Intel (Anvil)"

config MESALIB_VULKAN_INTEL_HASVK
	bool
	select MESALIB_XMLCONFIG
	prompt "Intel (hasvk)"

config MESALIB_VULKAN_FREEDRENO
	bool
	prompt "Freedreno (Turnip)"

config MESALIB_VULKAN_PANFROST
	bool
	prompt "Panfrost"

config MESALIB_VULKAN_SWRAST
	bool
	select MESALIB_DRI_SWRAST
	prompt "Software Rasterizer"

config MESALIB_VULKAN_VIRTIO
	bool
	select MESALIB_XMLCONFIG
	prompt "Virtio-GPU Venus"

comment "Vulkan layers"

config MESALIB_VULKAN_DEVICE_SELECT
	bool
	prompt "Device select layer"

config MESALIB_VULKAN_INTEL_NULLHW
	bool
	prompt "Intel nullhw layer"

config MESALIB_VULKAN_OVERLAY
	bool
	prompt "Overlay layer"

config MESALIB_SHADER_CACHE
	bool
	prompt "enable shader cache"

config MESALIB_XMLCONFIG
	bool
	prompt "build custom xmlconfig (driconf) support"

endif