1626cd524fecafd3c8c7bc5346f00740fd303972
[mesa.git] / src / gallium / meson.build
1 # Copyright © 2017 Dylan Baker
2 # Copyright © 2017-2018 Intel Corporation
3
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:
10
11 # The above copyright notice and this permission notice shall be included in
12 # all copies or substantial portions of the Software.
13
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
20 # SOFTWARE.
21
22 inc_gallium_drivers = include_directories('drivers')
23 inc_gallium_winsys = include_directories('winsys')
24
25 subdir('auxiliary')
26 subdir('auxiliary/pipe-loader')
27 subdir('winsys/sw/null')
28 if with_dri
29 subdir('winsys/sw/dri')
30 else
31 libswdri = []
32 endif
33 if with_gallium_drisw_kms
34 subdir('winsys/sw/kms-dri')
35 else
36 libswkmsdri = []
37 endif
38 subdir('winsys/sw/wrapper')
39 if with_platform_haiku
40 subdir('winsys/sw/hgl')
41 endif
42 if with_gallium_swr
43 subdir('drivers/swr')
44 else
45 driver_swr = declare_dependency()
46 endif
47 if with_gallium_softpipe
48 subdir('drivers/softpipe')
49 if with_llvm
50 subdir('drivers/llvmpipe')
51 endif
52 else
53 driver_swrast = declare_dependency()
54 endif
55 if with_gallium_r300 or with_gallium_radeonsi or with_gallium_r600
56 subdir('winsys/radeon/drm')
57 endif
58 if with_gallium_r300
59 subdir('drivers/r300')
60 else
61 driver_r300 = declare_dependency()
62 endif
63 if with_gallium_r600
64 subdir('drivers/r600')
65 else
66 driver_r600 = declare_dependency()
67 endif
68 if with_gallium_radeonsi
69 subdir('winsys/amdgpu/drm')
70 subdir('drivers/radeonsi')
71 else
72 driver_radeonsi = declare_dependency()
73 endif
74 if with_gallium_nouveau
75 subdir('winsys/nouveau/drm')
76 subdir('drivers/nouveau')
77 else
78 driver_nouveau = declare_dependency()
79 endif
80 if with_gallium_freedreno
81 subdir('winsys/freedreno/drm')
82 subdir('drivers/freedreno')
83 else
84 driver_freedreno = declare_dependency()
85 endif
86 if with_gallium_vc4
87 subdir('winsys/vc4/drm')
88 subdir('drivers/vc4')
89 else
90 driver_vc4 = declare_dependency()
91 endif
92 if with_gallium_panfrost
93 subdir('winsys/panfrost/drm')
94 subdir('drivers/panfrost')
95 else
96 driver_panfrost = declare_dependency()
97 endif
98 if with_gallium_etnaviv
99 subdir('winsys/etnaviv/drm')
100 subdir('drivers/etnaviv')
101 else
102 driver_etnaviv = declare_dependency()
103 endif
104 if with_gallium_kmsro
105 subdir('winsys/kmsro/drm')
106 else
107 driver_kmsro = declare_dependency()
108 endif
109 if with_gallium_v3d
110 subdir('winsys/v3d/drm')
111 subdir('drivers/v3d')
112 else
113 driver_v3d = declare_dependency()
114 endif
115 if with_gallium_tegra
116 subdir('winsys/tegra/drm')
117 subdir('drivers/tegra')
118 else
119 driver_tegra = declare_dependency()
120 endif
121 if with_gallium_i915
122 subdir('winsys/i915/drm')
123 subdir('drivers/i915')
124 else
125 driver_i915 = declare_dependency()
126 endif
127 if with_gallium_svga
128 subdir('winsys/svga/drm')
129 subdir('drivers/svga')
130 else
131 driver_svga = declare_dependency()
132 endif
133 if with_gallium_virgl
134 subdir('winsys/virgl/drm')
135 subdir('winsys/virgl/vtest')
136 subdir('drivers/virgl')
137 else
138 driver_virgl = declare_dependency()
139 endif
140 if with_gallium_opencl
141 # TODO: this isn't really clover specific, but ATM clover is the only
142 # consumer
143 subdir('targets/pipe-loader')
144
145 subdir('state_trackers/clover')
146 subdir('targets/opencl')
147 endif
148 if with_dri
149 subdir('state_trackers/dri')
150 subdir('targets/dri')
151 endif
152 if with_osmesa == 'gallium'
153 subdir('state_trackers/osmesa')
154 subdir('targets/osmesa')
155 endif
156 if with_glx == 'gallium-xlib'
157 subdir('winsys/sw/xlib')
158 subdir('state_trackers/glx/xlib')
159 subdir('targets/libgl-xlib')
160 endif
161 if with_gallium_vdpau
162 subdir('state_trackers/vdpau')
163 subdir('targets/vdpau')
164 endif
165 if with_gallium_xvmc
166 subdir('state_trackers/xvmc')
167 subdir('targets/xvmc')
168 endif
169 if with_gallium_omx != 'disabled'
170 subdir('state_trackers/omx')
171 subdir('targets/omx')
172 endif
173 if with_gallium_va
174 subdir('state_trackers/va')
175 subdir('targets/va')
176 endif
177 if with_gallium_xa
178 subdir('state_trackers/xa')
179 subdir('targets/xa')
180 endif
181 if with_platform_haiku
182 subdir('state_trackers/hgl')
183 subdir('targets/haiku-softpipe')
184 endif
185 if with_gallium_st_nine
186 subdir('state_trackers/nine')
187 subdir('targets/d3dadapter9')
188 endif
189 if with_tests
190 subdir('targets/graw-null')
191 if with_glx == 'gallium-xlib'
192 subdir('targets/graw-xlib')
193 endif
194 subdir('tests')
195 endif