1 # Copyright © 2017 Dylan Baker
2 # Copyright © 2017-2018 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')
24 inc_gallium_winsys_sw = include_directories('winsys/sw')
27 subdir('auxiliary/pipe-loader')
28 subdir('winsys/sw/null')
30 subdir('winsys/sw/dri')
34 if with_gallium_drisw_kms
35 subdir('winsys/sw/kms-dri')
39 if with_platform_windows
40 subdir('winsys/sw/gdi')
44 subdir('winsys/sw/wrapper')
45 if with_platform_haiku
46 subdir('winsys/sw/hgl')
51 driver_swr = declare_dependency()
53 if with_gallium_softpipe
54 subdir('drivers/softpipe')
56 subdir('drivers/llvmpipe')
59 driver_swrast = declare_dependency()
61 if with_gallium_r300 or with_gallium_radeonsi or with_gallium_r600
62 subdir('winsys/radeon/drm')
65 subdir('drivers/r300')
67 driver_r300 = declare_dependency()
70 subdir('drivers/r600')
72 driver_r600 = declare_dependency()
74 if with_gallium_radeonsi
75 subdir('winsys/amdgpu/drm')
76 subdir('drivers/radeonsi')
78 driver_radeonsi = declare_dependency()
80 if with_gallium_nouveau
81 subdir('winsys/nouveau/drm')
82 subdir('drivers/nouveau')
84 driver_nouveau = declare_dependency()
86 if with_gallium_freedreno
87 subdir('winsys/freedreno/drm')
88 subdir('drivers/freedreno')
90 driver_freedreno = declare_dependency()
93 subdir('winsys/vc4/drm')
96 driver_vc4 = declare_dependency()
98 if with_gallium_panfrost
99 subdir('winsys/panfrost/drm')
100 subdir('drivers/panfrost')
102 driver_panfrost = declare_dependency()
104 if with_gallium_etnaviv
105 subdir('winsys/etnaviv/drm')
106 subdir('drivers/etnaviv')
108 driver_etnaviv = declare_dependency()
110 if with_gallium_kmsro
111 subdir('winsys/kmsro/drm')
113 driver_kmsro = declare_dependency()
116 subdir('winsys/v3d/drm')
117 subdir('drivers/v3d')
119 driver_v3d = declare_dependency()
121 if with_gallium_tegra
122 subdir('winsys/tegra/drm')
123 subdir('drivers/tegra')
125 driver_tegra = declare_dependency()
128 subdir('winsys/iris/drm')
129 subdir('drivers/iris')
131 driver_iris = declare_dependency()
134 subdir('winsys/i915/drm')
135 subdir('drivers/i915')
137 driver_i915 = declare_dependency()
140 subdir('winsys/svga/drm')
141 subdir('drivers/svga')
143 driver_svga = declare_dependency()
145 if with_gallium_virgl
146 subdir('winsys/virgl/common')
147 subdir('winsys/virgl/drm')
148 subdir('winsys/virgl/vtest')
149 subdir('drivers/virgl')
151 driver_virgl = declare_dependency()
154 subdir('winsys/lima/drm')
155 subdir('drivers/lima')
157 driver_lima = declare_dependency()
159 if with_gallium_opencl
160 # TODO: this isn't really clover specific, but ATM clover is the only
162 subdir('targets/pipe-loader')
164 subdir('state_trackers/clover')
165 subdir('targets/opencl')
168 subdir('state_trackers/dri')
169 subdir('targets/dri')
171 if with_osmesa == 'gallium'
172 subdir('state_trackers/osmesa')
173 subdir('targets/osmesa')
175 if with_glx == 'gallium-xlib'
176 subdir('winsys/sw/xlib')
177 subdir('state_trackers/glx/xlib')
178 subdir('targets/libgl-xlib')
180 if with_gallium_vdpau
181 subdir('state_trackers/vdpau')
182 subdir('targets/vdpau')
185 subdir('state_trackers/xvmc')
186 subdir('targets/xvmc')
188 if with_gallium_omx != 'disabled'
189 subdir('state_trackers/omx')
190 subdir('targets/omx')
193 subdir('state_trackers/va')
197 subdir('state_trackers/xa')
200 if with_platform_haiku
201 subdir('state_trackers/hgl')
202 subdir('targets/haiku-softpipe')
204 if with_gallium_st_nine
205 subdir('state_trackers/nine')
206 subdir('targets/d3dadapter9')
208 if with_platform_windows
209 subdir('state_trackers/wgl')
210 subdir('targets/libgl-gdi')
213 subdir('targets/graw-null')
214 if with_platform_windows
215 subdir('targets/graw-gdi')
216 elif with_glx == 'gallium-xlib'
217 subdir('targets/graw-xlib')