1 # Copyright © 2017 Dylan Baker
2 # Copyright © 2017 Intel Corporation
4 # Permission is hereby granted, free of charge, to any person obtaining a copy
5 # of this software and associated documentation files (the "Software"), to deal
6 # in the Software without restriction, including without limitation the rights
7 # to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
8 # copies of the Software, and to permit persons to whom the Software is
9 # furnished to do so, subject to the following conditions:
11 # The above copyright notice and this permission notice shall be included in
12 # all copies or substantial portions of the Software.
14 # THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
15 # IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
16 # FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
17 # AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
18 # LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
19 # OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
22 inc_gallium_drivers = include_directories('drivers')
23 inc_gallium_winsys = include_directories('winsys')
26 subdir('auxiliary/pipe-loader')
27 subdir('drivers/ddebug')
28 subdir('drivers/noop')
29 subdir('drivers/trace')
30 subdir('drivers/rbug')
31 subdir('winsys/sw/null')
32 subdir('winsys/sw/dri')
33 subdir('winsys/sw/kms-dri')
34 subdir('winsys/sw/wrapper')
36 if meson.version().version_compare('< 0.44.0')
37 error('SWR requires meson 0.44.0 or greater.')
41 driver_swr = declare_dependency()
43 if with_gallium_softpipe
44 subdir('drivers/softpipe')
46 subdir('drivers/llvmpipe')
49 driver_swrast = declare_dependency()
51 if with_gallium_r300 or with_gallium_radeonsi or with_gallium_r600
52 subdir('winsys/radeon/drm')
55 subdir('drivers/r300')
57 driver_r300 = declare_dependency()
60 subdir('drivers/r600')
62 driver_r600 = declare_dependency()
64 if with_gallium_radeonsi
65 subdir('winsys/amdgpu/drm')
66 subdir('drivers/radeon')
67 subdir('drivers/radeonsi')
69 driver_radeonsi = declare_dependency()
71 if with_gallium_nouveau
72 subdir('winsys/nouveau/drm')
73 subdir('drivers/nouveau')
75 driver_nouveau = declare_dependency()
77 if with_gallium_freedreno
78 subdir('winsys/freedreno/drm')
79 subdir('drivers/freedreno')
81 driver_freedreno = declare_dependency()
84 subdir('winsys/vc4/drm')
87 driver_vc4 = declare_dependency()
90 subdir('winsys/pl111/drm')
92 driver_pl111 = declare_dependency()
95 subdir('winsys/vc5/drm')
98 driver_vc5 = declare_dependency()
100 if with_gallium_etnaviv
101 subdir('winsys/etnaviv/drm')
102 subdir('drivers/etnaviv')
104 driver_etnaviv = declare_dependency()
107 subdir('winsys/imx/drm')
109 driver_imx = declare_dependency()
112 subdir('winsys/i915/drm')
113 subdir('drivers/i915')
115 driver_i915 = declare_dependency()
118 subdir('winsys/svga/drm')
119 subdir('drivers/svga')
121 driver_svga = declare_dependency()
123 if with_gallium_virgl
124 subdir('winsys/virgl/drm')
125 subdir('winsys/virgl/vtest')
126 subdir('drivers/virgl')
128 driver_virgl = declare_dependency()
130 if with_gallium_vdpau
131 subdir('state_trackers/vdpau')
134 subdir('state_trackers/xvmc')
137 subdir('state_trackers/omx_bellagio')
140 subdir('state_trackers/va')
143 subdir('state_trackers/xa')
145 if with_gallium_st_nine
146 subdir('state_trackers/nine')
148 if with_gallium_opencl
149 # TODO: this isn't really clover specific, but ATM clover is the only
151 subdir('targets/pipe-loader')
153 if meson.version().version_compare('< 0.44.0')
154 error('OpenCL requires meson 0.44.0 or greater.')
156 subdir('state_trackers/clover')
157 subdir('targets/opencl')
160 subdir('state_trackers/dri')
161 subdir('targets/dri')
163 if with_osmesa == 'gallium'
164 subdir('state_trackers/osmesa')
165 subdir('targets/osmesa')
167 if with_glx == 'gallium-xlib'
168 subdir('winsys/sw/xlib')
169 subdir('state_trackers/glx/xlib')
170 subdir('targets/libgl-xlib')
172 if with_gallium_vdpau
173 subdir('targets/vdpau')
176 subdir('targets/xvmc')
179 subdir('targets/omx-bellagio')
187 if with_gallium_st_nine
188 subdir('targets/d3dadapter9')