blob: 862bf804878cba6e7632eca985cb41851992d6b6 (
plain) (
blame)
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
|
persistent_remove MESALIB_OPTS
persistent_remove MESALIB_VULKAN
persistent_remove MESALIB_BUILD
persistent_remove MESALIB_GALLIUM
persistent_remove MESALIB_DRIVERS
. $GRIMOIRE/config_query_multi.function &&
. $GRIMOIRE/MESON_CONFIGURE &&
config_query_multi MESA_GLX "glx build types, recommend dri" dri xlib gallium-xlib &&
config_query_multi MESA_EGL "window systems to support,recommend x11+drm" x11 drm surfaceless wayland &&
config_query_multi MESA_OSMESA "Build OSmesa - not usually needed, except by swrast " none classic gallium
config_query_multi MESA_DRM "which libdrm hardware" AMD INTEL NOUVEAU RADEON &&
# only suggest drivers for specified hardware
local AVAILABLE_DRIVERS="swrast"
local AVAILABLE_GALLIUM="svga swrast virgl"
local AVAILABLE_VULKAN=""
if list_find "$MESA_DRM" AMD;then
AVAILABLE_VULKAN+=" amd"
fi &&
if list_find "$MESA_DRM" RADEON;then
AVAILABLE_DRIVERS+=" r100 r200"
AVAILABLE_GALLIUM+=" r300 r600 radeonsi"
fi &&
if list_find "$MESA_DRM" INTEL;then
AVAILABLE_DRIVERS+=" i915 i965"
AVAILABLE_GALLIUM+=" i915"
AVAILABLE_VULKAN+=" intel"
fi &&
if list_find "$MESA_DRM" NOUVEAU;then
AVAILABLE_DRIVERS+=" nouveau"
AVAILABLE_GALLIUM+=" nouveau"
fi &&
if list_find "$MESA_GLX" dri;then
config_query_multi MESA_DRI \
"Which drivers would you like to build?" \
all $AVAILABLE_DRIVERS &&
if list_find "$MESA_DRI" all; then
MESA_DRI="$AVAILABLE_DRIVERS"
fi
fi &&
# Gallium support
config_query_multi MESA_GALLIUM \
"which gallium (accellerated) drivers" \
none all $AVAILABLE_GALLIUM &&
if list_find "$MESA_GALLIUM" all;then
MESA_GALLIUM="$AVAILABLE_GALLIUM"
fi &&
if list_find "$MESA_GALLIUM" swrast;then
list_remove MESA_DRI swrast
fi &&
if list_find "$MESA_OSMESA" classic;then
# force this option
list_add MESA_DRI swrast
list_remove MESA_DRI none
list_remove MESA_GALLIUM swrast
fi &&
if list_find "$MESA_OSMESA" gallium;then
# force this option
list_add MESA_GALLIUM swrast
list_remove MESA_GALLIUM none
list_remove MESA_DRI swrast
fi &&
# Vulkan support
config_query_multi MESA_VULKAN \
"which Vulkan drivers to build" \
none all $AVAILABLE_VULKAN &&
if list_find "$MESA_VULKAN" all; then
MESA_VULKAN="$AVAILABLE_VULKAN"
fi &&
config_query_option MESA_GLES1 "support GLES1 - embedded systems" n gles1=true gles1=false &&
config_query_option MESA_GLES2 "support GLES2/3 - embedded systems" n gles2=true gles2=false &&
config_query_multi MESA_TOOLS "which tools to build" \
etnaviv \
freedreno \
glsl \
intel \
nir \
nouveau \
xvmc &&
config_query_multi MESA_ARCH "which arch" avx avx2 knl skx &&
config_query_multi MESA_OMX "OMax support" auto disabled tizonia bellagio
|