Makefile revision 1.59 1 1.58 rin # $NetBSD: Makefile,v 1.59 2025/04/13 08:30:22 rin Exp $
2 1.1 mrg
3 1.1 mrg # Link the gallium mega driver.
4 1.1 mrg
5 1.1 mrg LIBISMODULE= yes
6 1.1 mrg LIBISCXX= yes
7 1.1 mrg
8 1.54 rillig NOLINT= # Lots of "Unsupported platform" due to undefined __GNUC__
9 1.54 rillig
10 1.1 mrg .include <bsd.own.mk>
11 1.1 mrg
12 1.48 mrg .include "../mesa-which.mk"
13 1.48 mrg
14 1.1 mrg SHLIB_MAJOR= 0
15 1.1 mrg
16 1.1 mrg LIB= gallium_dri
17 1.1 mrg DRIDIR= ${X11USRLIBDIR}/modules/dri
18 1.2 christos DRIDEBUGDIR= ${DEBUGDIR}${X11USRLIBDIR}/modules/dri
19 1.1 mrg
20 1.37 joerg LLVM_INCLUDE_OBJDIR!= cd ${NETBSDSRCDIR}/external/apache2/llvm/include && ${PRINTOBJDIR}
21 1.19 mrg
22 1.55 christos CWARNFLAGS.clang += -Wno-atomic-alignment -Wno-unknown-warning-option -Wno-implicit-int-float-conversion -Wno-c99-designator
23 1.26 christos
24 1.37 joerg CXXFLAGS+= -std=c++14
25 1.19 mrg CFLAGS+= -std=gnu11
26 1.19 mrg CPPFLAGS+= -I${DESTDIR}${X11INCDIR}/libdrm \
27 1.37 joerg -I${NETBSDSRCDIR}/external/apache2/llvm/dist/llvm/include \
28 1.37 joerg -I${LLVM_INCLUDE_OBJDIR} -I${NETBSDSRCDIR}/external/apache2/llvm/config
29 1.1 mrg
30 1.39 martin CFLAGS+= -pthread
31 1.39 martin LDFLAGS+= -pthread
32 1.39 martin
33 1.52 rjs LDFLAGS+= -Wl,--build-id=sha1
34 1.52 rjs
35 1.49 mrg # Reduce debugging for these extremely large objects.
36 1.49 mrg .if ${MKDEBUG:Uno} != "no"
37 1.50 rjs #CXXFLAGS+= -g1
38 1.50 rjs #CFLAGS+= -g1
39 1.49 mrg .endif
40 1.49 mrg
41 1.1 mrg GALLIUM_SUBDIRS= \
42 1.1 mrg auxiliary \
43 1.1 mrg auxiliary/cso_cache \
44 1.1 mrg auxiliary/draw \
45 1.19 mrg auxiliary/driver_ddebug \
46 1.19 mrg auxiliary/driver_noop \
47 1.19 mrg auxiliary/driver_rbug \
48 1.19 mrg auxiliary/driver_trace \
49 1.1 mrg auxiliary/hud \
50 1.1 mrg auxiliary/indices \
51 1.19 mrg auxiliary/nir \
52 1.1 mrg auxiliary/os \
53 1.1 mrg auxiliary/pipebuffer \
54 1.19 mrg auxiliary/pipe-loader \
55 1.1 mrg auxiliary/postprocess \
56 1.1 mrg auxiliary/rbug \
57 1.19 mrg auxiliary/renderonly \
58 1.1 mrg auxiliary/rtasm \
59 1.50 rjs auxiliary/tessellator \
60 1.1 mrg auxiliary/tgsi \
61 1.1 mrg auxiliary/translate \
62 1.1 mrg auxiliary/util \
63 1.1 mrg auxiliary/vl \
64 1.1 mrg drivers/noop \
65 1.1 mrg drivers/rbug \
66 1.15 mrg drivers/softpipe \
67 1.15 mrg winsys/sw/dri \
68 1.15 mrg winsys/sw/kms-dri \
69 1.19 mrg winsys/sw/null \
70 1.19 mrg winsys/sw/wrapper \
71 1.50 rjs frontends/dri
72 1.15 mrg
73 1.19 mrg GALLIUM_SUBDIRS_VDPAU= \
74 1.50 rjs frontends/vdpau
75 1.19 mrg
76 1.19 mrg GALLIUM_SUBDIRS_LLVMPIPE= \
77 1.19 mrg auxiliary/gallivm \
78 1.19 mrg drivers/llvmpipe
79 1.19 mrg
80 1.15 mrg GALLIUM_SUBDIRS_ATI= \
81 1.1 mrg drivers/radeon \
82 1.19 mrg drivers/radeonsi \
83 1.19 mrg drivers/r300 \
84 1.19 mrg drivers/r300/compiler \
85 1.1 mrg drivers/r600 \
86 1.1 mrg drivers/r600/sb \
87 1.50 rjs drivers/r600/sfn \
88 1.19 mrg winsys/radeon/drm \
89 1.19 mrg winsys/amdgpu/drm
90 1.19 mrg
91 1.19 mrg GALLIUM_SUBDIRS_I915= \
92 1.19 mrg drivers/i915 \
93 1.19 mrg winsys/i915/drm
94 1.15 mrg
95 1.50 rjs GALLIUM_SUBDIRS_IRIS= \
96 1.50 rjs drivers/iris \
97 1.50 rjs winsys/iris/drm
98 1.50 rjs
99 1.50 rjs GALLIUM_SUBDIRS_CROCUS= \
100 1.50 rjs drivers/crocus \
101 1.50 rjs winsys/crocus/drm
102 1.50 rjs
103 1.15 mrg GALLIUM_SUBDIRS_NOUVEAU= \
104 1.8 mrg drivers/nouveau \
105 1.8 mrg drivers/nouveau/nv30 \
106 1.8 mrg drivers/nouveau/nv50 \
107 1.8 mrg drivers/nouveau/codegen \
108 1.8 mrg drivers/nouveau/nvc0 \
109 1.15 mrg winsys/nouveau/drm
110 1.15 mrg
111 1.15 mrg BUILD_RADEON=0
112 1.15 mrg BUILD_NOUVEAU=0
113 1.19 mrg BUILD_VDPAU=0
114 1.19 mrg BUILD_LLVMPIPE=0
115 1.19 mrg BUILD_I915=0
116 1.50 rjs BUILD_IRIS=0
117 1.50 rjs BUILD_CROCUS=0
118 1.15 mrg .if ${MACHINE_ARCH} == "i386" || ${MACHINE_ARCH} == "x86_64"
119 1.19 mrg BUILD_I915=1
120 1.50 rjs #BUILD_IRIS=1
121 1.50 rjs #BUILD_CROCUS=1
122 1.41 jmcneill .endif
123 1.41 jmcneill .if ${MACHINE_ARCH} == "i386" || ${MACHINE_ARCH} == "x86_64" || ${MACHINE} == "evbarm"
124 1.41 jmcneill BUILD_NOUVEAU=1
125 1.30 mrg . if ${MKLLVMRT} != "no"
126 1.29 mrg BUILD_RADEON=1
127 1.30 mrg . endif
128 1.19 mrg BUILD_VDPAU=1
129 1.33 mrg .endif
130 1.33 mrg
131 1.33 mrg .if ${MACHINE_ARCH} == "i386" || \
132 1.33 mrg ${MACHINE_ARCH} == "x86_64" || \
133 1.33 mrg ${MACHINE_ARCH} == "powerpc" || \
134 1.33 mrg ${MACHINE_ARCH} == "powerpc64" || \
135 1.34 mrg !empty(MACHINE_ARCH:Maarch64*) || \
136 1.33 mrg !empty(MACHINE_ARCH:Mmips*) || \
137 1.33 mrg !empty(MACHINE_ARCH:Mearm*) || \
138 1.33 mrg !empty(MACHINE_ARCH:Marm*)
139 1.30 mrg . if ${MKLLVMRT} != "no"
140 1.30 mrg BUILD_LLVMPIPE=1
141 1.30 mrg . endif
142 1.15 mrg .endif
143 1.15 mrg
144 1.15 mrg DRIVERS= kms_swrast swrast
145 1.15 mrg .if ${BUILD_RADEON} == 1
146 1.42 jmcneill DRIVERS+= r600 r300 radeonsi
147 1.15 mrg GALLIUM_SUBDIRS+= ${GALLIUM_SUBDIRS_ATI}
148 1.15 mrg .endif
149 1.15 mrg .if ${BUILD_NOUVEAU} == 1
150 1.15 mrg DRIVERS+= nouveau
151 1.15 mrg GALLIUM_SUBDIRS+= ${GALLIUM_SUBDIRS_NOUVEAU}
152 1.15 mrg .endif
153 1.19 mrg .if ${BUILD_VDPAU} == 1
154 1.19 mrg GALLIUM_SUBDIRS+= ${GALLIUM_SUBDIRS_VDPAU}
155 1.19 mrg .endif
156 1.19 mrg .if ${BUILD_I915} == 1
157 1.19 mrg GALLIUM_SUBDIRS+= ${GALLIUM_SUBDIRS_I915}
158 1.19 mrg .endif
159 1.50 rjs .if ${BUILD_IRIS} == 1
160 1.50 rjs GALLIUM_SUBDIRS+= ${GALLIUM_SUBDIRS_IRIS}
161 1.50 rjs .endif
162 1.50 rjs .if ${BUILD_CROCUS} == 1
163 1.50 rjs GALLIUM_SUBDIRS+= ${GALLIUM_SUBDIRS_CROCUS}
164 1.50 rjs .endif
165 1.19 mrg .if ${BUILD_LLVMPIPE} == 1
166 1.19 mrg GALLIUM_SUBDIRS+= ${GALLIUM_SUBDIRS_LLVMPIPE}
167 1.19 mrg .endif
168 1.1 mrg
169 1.1 mrg GALLIUM_SOURCES.auxiliary/cso_cache= \
170 1.1 mrg cso_cache.c \
171 1.1 mrg cso_context.c \
172 1.1 mrg cso_hash.c
173 1.19 mrg
174 1.1 mrg GALLIUM_SOURCES.auxiliary/draw= \
175 1.1 mrg draw_context.c \
176 1.1 mrg draw_fs.c \
177 1.1 mrg draw_gs.c \
178 1.1 mrg draw_pipe_aaline.c \
179 1.1 mrg draw_pipe_aapoint.c \
180 1.19 mrg draw_pipe.c \
181 1.1 mrg draw_pipe_clip.c \
182 1.1 mrg draw_pipe_cull.c \
183 1.1 mrg draw_pipe_flatshade.c \
184 1.1 mrg draw_pipe_offset.c \
185 1.1 mrg draw_pipe_pstipple.c \
186 1.1 mrg draw_pipe_stipple.c \
187 1.1 mrg draw_pipe_twoside.c \
188 1.1 mrg draw_pipe_unfilled.c \
189 1.50 rjs draw_pipe_user_cull.c \
190 1.1 mrg draw_pipe_util.c \
191 1.1 mrg draw_pipe_validate.c \
192 1.1 mrg draw_pipe_vbuf.c \
193 1.1 mrg draw_pipe_wide_line.c \
194 1.1 mrg draw_pipe_wide_point.c \
195 1.1 mrg draw_prim_assembler.c \
196 1.1 mrg draw_pt.c \
197 1.1 mrg draw_pt_emit.c \
198 1.1 mrg draw_pt_fetch.c \
199 1.1 mrg draw_pt_fetch_shade_emit.c \
200 1.1 mrg draw_pt_fetch_shade_pipeline.c \
201 1.1 mrg draw_pt_post_vs.c \
202 1.1 mrg draw_pt_so_emit.c \
203 1.1 mrg draw_pt_util.c \
204 1.1 mrg draw_pt_vsplit.c \
205 1.50 rjs draw_tess.c \
206 1.1 mrg draw_vertex.c \
207 1.1 mrg draw_vs.c \
208 1.1 mrg draw_vs_exec.c \
209 1.1 mrg draw_vs_variant.c
210 1.19 mrg
211 1.20 joerg .if ${MKLLVMRT} != "no"
212 1.19 mrg GALLIUM_SOURCES.auxiliary/draw+= \
213 1.19 mrg draw_llvm.c \
214 1.19 mrg draw_llvm_sample.c \
215 1.19 mrg draw_pt_fetch_shade_pipeline_llvm.c \
216 1.19 mrg draw_vs_llvm.c
217 1.19 mrg .endif
218 1.19 mrg
219 1.1 mrg GALLIUM_SOURCES.auxiliary/hud= \
220 1.1 mrg font.c \
221 1.1 mrg hud_context.c \
222 1.1 mrg hud_cpu.c \
223 1.19 mrg hud_nic.c \
224 1.19 mrg hud_cpufreq.c \
225 1.19 mrg hud_diskstat.c \
226 1.19 mrg hud_sensors_temp.c \
227 1.1 mrg hud_fps.c \
228 1.1 mrg hud_driver_query.c
229 1.1 mrg GALLIUM_SOURCES.auxiliary/indices= \
230 1.1 mrg u_primconvert.c
231 1.1 mrg GALLIUM_SOURCES.auxiliary/os= \
232 1.19 mrg os_process.c
233 1.19 mrg GALLIUM_SOURCES.auxiliary/pipe-loader= \
234 1.19 mrg pipe_loader.c \
235 1.19 mrg pipe_loader_drm.c \
236 1.19 mrg pipe_loader_sw.c
237 1.19 mrg
238 1.19 mrg .for _f in ${GALLIUM_SOURCES.auxiliary/pipe-loader}
239 1.19 mrg CPPFLAGS.${_f} += -DHAVE_PIPE_LOADER_KMS=1 \
240 1.19 mrg -DHAVE_PIPE_LOADER_DRI=1 \
241 1.19 mrg -DGALLIUM_STATIC_TARGETS=1 \
242 1.19 mrg -I${X11SRCDIR.Mesa}/src/gallium/winsys \
243 1.35 maya -I${X11SRCDIR.Mesa}/src/loader \
244 1.35 maya -I${X11SRCDIR.Mesa}/../src/util
245 1.19 mrg .endfor
246 1.19 mrg
247 1.1 mrg GALLIUM_SOURCES.auxiliary/pipebuffer= \
248 1.1 mrg pb_buffer_fenced.c \
249 1.1 mrg pb_bufmgr_cache.c \
250 1.1 mrg pb_bufmgr_debug.c \
251 1.1 mrg pb_bufmgr_mm.c \
252 1.1 mrg pb_bufmgr_slab.c \
253 1.19 mrg pb_cache.c \
254 1.19 mrg pb_slab.c \
255 1.1 mrg pb_validate.c
256 1.1 mrg GALLIUM_SOURCES.auxiliary/postprocess= \
257 1.1 mrg pp_celshade.c \
258 1.1 mrg pp_colors.c \
259 1.1 mrg pp_init.c \
260 1.1 mrg pp_mlaa.c \
261 1.1 mrg pp_run.c \
262 1.1 mrg pp_program.c
263 1.1 mrg GALLIUM_SOURCES.auxiliary/rbug= \
264 1.1 mrg rbug_connection.c \
265 1.19 mrg RBUGrbug_context.c \
266 1.19 mrg RBUGrbug_core.c \
267 1.1 mrg rbug_demarshal.c \
268 1.1 mrg rbug_texture.c \
269 1.1 mrg rbug_shader.c
270 1.1 mrg GALLIUM_SOURCES.auxiliary/rtasm= \
271 1.1 mrg rtasm_cpu.c \
272 1.1 mrg rtasm_execmem.c \
273 1.1 mrg rtasm_x86sse.c
274 1.50 rjs GALLIUM_SOURCES.auxiliary/tessellator= \
275 1.50 rjs p_tessellator.cpp \
276 1.50 rjs tessellator.cpp
277 1.1 mrg GALLIUM_SOURCES.auxiliary/tgsi= \
278 1.19 mrg tgsi_aa_point.c \
279 1.1 mrg tgsi_build.c \
280 1.1 mrg tgsi_dump.c \
281 1.1 mrg tgsi_exec.c \
282 1.19 mrg tgsi_emulate.c \
283 1.19 mrg tgsi_from_mesa.c \
284 1.1 mrg tgsi_info.c \
285 1.1 mrg tgsi_iterate.c \
286 1.19 mrg tgsi_lowering.c \
287 1.1 mrg tgsi_parse.c \
288 1.19 mrg tgsi_point_sprite.c \
289 1.1 mrg tgsi_sanity.c \
290 1.1 mrg tgsi_scan.c \
291 1.1 mrg tgsi_strings.c \
292 1.1 mrg tgsi_text.c \
293 1.1 mrg tgsi_transform.c \
294 1.19 mrg tgsi_two_side.c \
295 1.1 mrg tgsi_ureg.c \
296 1.1 mrg tgsi_util.c
297 1.1 mrg GALLIUM_SOURCES.auxiliary/translate= \
298 1.1 mrg translate.c \
299 1.1 mrg translate_cache.c \
300 1.1 mrg translate_generic.c \
301 1.1 mrg translate_sse.c
302 1.1 mrg GALLIUM_SOURCES.auxiliary/util= \
303 1.19 mrg u_async_debug.c \
304 1.19 mrg u_bitmask.c \
305 1.19 mrg u_blitter.c \
306 1.19 mrg u_cache.c \
307 1.50 rjs u_compute.c \
308 1.1 mrg u_debug_flush.c \
309 1.19 mrg u_debug_image.c \
310 1.1 mrg u_dl.c \
311 1.1 mrg u_draw.c \
312 1.1 mrg u_draw_quad.c \
313 1.50 rjs u_driconf.c \
314 1.19 mrg u_dump_defines.c \
315 1.19 mrg u_dump_state.c \
316 1.1 mrg u_framebuffer.c \
317 1.1 mrg u_gen_mipmap.c \
318 1.1 mrg u_handle_table.c \
319 1.1 mrg u_helpers.c \
320 1.1 mrg u_index_modify.c \
321 1.1 mrg u_linear.c \
322 1.50 rjs u_live_shader_cache.c \
323 1.19 mrg u_log.c \
324 1.1 mrg u_network.c \
325 1.19 mrg u_prim.c \
326 1.19 mrg u_prim_restart.c \
327 1.1 mrg u_pstipple.c \
328 1.19 mrg u_resource.c \
329 1.1 mrg u_sampler.c \
330 1.19 mrg u_screen.c \
331 1.1 mrg u_simple_shaders.c \
332 1.50 rjs u_split_draw.c \
333 1.1 mrg u_suballoc.c \
334 1.1 mrg u_surface.c \
335 1.19 mrg u_tests.c \
336 1.1 mrg u_texture.c \
337 1.1 mrg u_tile.c \
338 1.50 rjs u_trace_gallium.c \
339 1.1 mrg u_transfer.c \
340 1.19 mrg u_transfer_helper.c \
341 1.19 mrg u_threaded_context.c \
342 1.1 mrg u_upload_mgr.c \
343 1.50 rjs u_vbuf.c \
344 1.50 rjs u_vertex_state_cache.c
345 1.19 mrg GALLIUM_SOURCES.auxiliary/nir = \
346 1.50 rjs nir_draw_helpers.c \
347 1.50 rjs nir_to_tgsi.c \
348 1.19 mrg tgsi_to_nir.c
349 1.53 rjs
350 1.53 rjs .if ${MKLLVMRT} != "no"
351 1.53 rjs GALLIUM_SOURCES.auxiliary/nir+= nir_to_tgsi_info.c
352 1.53 rjs .endif
353 1.53 rjs
354 1.1 mrg GALLIUM_SOURCES.auxiliary/vl= \
355 1.19 mrg vl_bicubic_filter.c \
356 1.19 mrg vl_compositor.c \
357 1.35 maya vl_compositor_cs.c \
358 1.35 maya vl_compositor_gfx.c \
359 1.1 mrg vl_csc.c \
360 1.19 mrg vl_decoder.c \
361 1.19 mrg vl_deint_filter.c \
362 1.19 mrg vl_idct.c \
363 1.1 mrg vl_matrix_filter.c \
364 1.19 mrg vl_mc.c \
365 1.1 mrg vl_median_filter.c \
366 1.19 mrg vl_mpeg12_bitstream.c \
367 1.1 mrg vl_mpeg12_decoder.c \
368 1.1 mrg vl_vertex_buffers.c \
369 1.1 mrg vl_video_buffer.c \
370 1.19 mrg vl_winsys_dri.c \
371 1.19 mrg vl_zscan.c
372 1.1 mrg
373 1.1 mrg # Generated
374 1.18 mrg .PATH: ${X11SRCDIR.Mesa}/../src/gallium/auxiliary
375 1.1 mrg GALLIUM_SOURCES.auxiliary= \
376 1.1 mrg u_indices_gen.c \
377 1.50 rjs u_tracepoints.c \
378 1.50 rjs u_unfilled_gen.c
379 1.19 mrg .for _f in ${GALLIUM_SOURCES.auxiliary/vl}
380 1.19 mrg CPPFLAGS.${_f} += -I${X11SRCDIR.Mesa}/src/loader
381 1.19 mrg .endfor
382 1.50 rjs .for _f in ${GALLIUM_SOURCES.auxiliary/util}
383 1.50 rjs CPPFLAGS.${_f} += -I${X11SRCDIR.Mesa}/../src/gallium/auxiliary
384 1.50 rjs .endfor
385 1.1 mrg .for _f in ${GALLIUM_SOURCES.auxiliary}
386 1.18 mrg CPPFLAGS.${_f} += -I${X11SRCDIR.Mesa}/src/gallium/auxiliary/util
387 1.19 mrg CPPFLAGS.${_f} += -I${X11SRCDIR.Mesa}/src/util
388 1.19 mrg .endfor
389 1.19 mrg
390 1.19 mrg GALLIUM_SOURCES.auxiliary/renderonly= \
391 1.19 mrg renderonly.c
392 1.19 mrg
393 1.53 rjs .if ${MKLLVMRT} != "no"
394 1.19 mrg GALLIUM_SOURCES.auxiliary/gallivm= \
395 1.19 mrg lp_bld_arit.c \
396 1.19 mrg lp_bld_arit_overflow.c \
397 1.19 mrg lp_bld_assert.c \
398 1.19 mrg lp_bld_bitarit.c \
399 1.19 mrg lp_bld_const.c \
400 1.19 mrg lp_bld_conv.c \
401 1.50 rjs lp_bld_coro.c \
402 1.19 mrg lp_bld_flow.c \
403 1.19 mrg lp_bld_format_aos_array.c \
404 1.19 mrg lp_bld_format_aos.c \
405 1.19 mrg lp_bld_format_float.c \
406 1.19 mrg lp_bld_format.c \
407 1.19 mrg lp_bld_format_soa.c \
408 1.35 maya lp_bld_format_s3tc.c \
409 1.19 mrg lp_bld_format_srgb.c \
410 1.19 mrg lp_bld_format_yuv.c \
411 1.19 mrg lp_bld_gather.c \
412 1.19 mrg lp_bld_init.c \
413 1.19 mrg lp_bld_intr.c \
414 1.50 rjs lp_bld_ir_common.c \
415 1.19 mrg lp_bld_logic.c \
416 1.19 mrg lp_bld_misc.cpp \
417 1.50 rjs lp_bld_nir.c \
418 1.50 rjs lp_bld_nir_soa.c \
419 1.19 mrg lp_bld_pack.c \
420 1.19 mrg lp_bld_printf.c \
421 1.19 mrg lp_bld_quad.c \
422 1.19 mrg lp_bld_sample_aos.c \
423 1.19 mrg lp_bld_sample.c \
424 1.19 mrg lp_bld_sample_soa.c \
425 1.19 mrg lp_bld_struct.c \
426 1.19 mrg lp_bld_swizzle.c \
427 1.19 mrg lp_bld_tgsi_action.c \
428 1.19 mrg lp_bld_tgsi_aos.c \
429 1.19 mrg lp_bld_tgsi.c \
430 1.19 mrg lp_bld_tgsi_info.c \
431 1.19 mrg lp_bld_tgsi_soa.c \
432 1.53 rjs lp_bld_type.c \
433 1.53 rjs lp_bld_debug.cpp
434 1.53 rjs .endif
435 1.19 mrg
436 1.19 mrg .for _f in ${GALLIUM_SOURCES.auxiliary/gallivm}
437 1.19 mrg CPPFLAGS.${_f} += -I${X11SRCDIR.Mesa}/src/gallium/auxiliary/util
438 1.1 mrg .endfor
439 1.1 mrg
440 1.50 rjs CPPFLAGS.lp_texture.c += -I${X11SRCDIR.Mesa}/../src
441 1.1 mrg
442 1.19 mrg GALLIUM_SOURCES.auxiliary/driver_ddebug = \
443 1.19 mrg dd_context.c \
444 1.19 mrg dd_draw.c \
445 1.19 mrg dd_screen.c
446 1.19 mrg
447 1.19 mrg GALLIUM_SOURCES.auxiliary/driver_noop = \
448 1.1 mrg noop_pipe.c \
449 1.1 mrg noop_state.c
450 1.1 mrg
451 1.19 mrg GALLIUM_SOURCES.auxiliary/driver_trace = \
452 1.1 mrg tr_context.c \
453 1.1 mrg tr_dump.c \
454 1.1 mrg tr_dump_state.c \
455 1.1 mrg tr_screen.c \
456 1.1 mrg tr_texture.c
457 1.1 mrg
458 1.19 mrg GALLIUM_SOURCES.auxiliary/driver_rbug = \
459 1.1 mrg DRIVERrbug_core.c \
460 1.1 mrg DRIVERrbug_context.c \
461 1.1 mrg rbug_objects.c \
462 1.1 mrg rbug_screen.c
463 1.1 mrg # Conflicts with auxiliary/rbug/ files
464 1.19 mrg BUILDSYMLINKS+= ${X11SRCDIR.Mesa}/src/gallium/auxiliary/rbug/rbug_core.c RBUGrbug_core.c
465 1.19 mrg BUILDSYMLINKS+= ${X11SRCDIR.Mesa}/src/gallium/auxiliary/rbug/rbug_context.c RBUGrbug_context.c
466 1.19 mrg BUILDSYMLINKS+= ${X11SRCDIR.Mesa}/src/gallium/auxiliary/driver_rbug/rbug_core.c DRIVERrbug_core.c
467 1.19 mrg BUILDSYMLINKS+= ${X11SRCDIR.Mesa}/src/gallium/auxiliary/driver_rbug/rbug_context.c DRIVERrbug_context.c
468 1.18 mrg CPPFLAGS.DRIVERrbug_core.c+= -I${X11SRCDIR.Mesa}/src/gallium/auxiliary
469 1.19 mrg CPPFLAGS.DRIVERrbug_core.c+= -I${X11SRCDIR.Mesa}/src/gallium/auxiliary/driver_rbug
470 1.18 mrg CPPFLAGS.DRIVERrbug_core.c+= -I${X11SRCDIR.Mesa}/src/gallium/drivers
471 1.18 mrg CPPFLAGS.DRIVERrbug_context.c+= -I${X11SRCDIR.Mesa}/src/gallium/auxiliary
472 1.19 mrg CPPFLAGS.DRIVERrbug_context.c+= -I${X11SRCDIR.Mesa}/src/gallium/auxiliary/driver_rbug
473 1.18 mrg CPPFLAGS.DRIVERrbug_context.c+= -I${X11SRCDIR.Mesa}/src/gallium/drivers
474 1.1 mrg
475 1.19 mrg GALLIUM_SOURCES.drivers/i915= \
476 1.19 mrg i915_blit.c \
477 1.19 mrg i915_clear.c \
478 1.19 mrg i915_context.c \
479 1.19 mrg i915_debug.c \
480 1.19 mrg i915_debug_fp.c \
481 1.19 mrg i915_flush.c \
482 1.19 mrg i915_fpc_emit.c \
483 1.19 mrg i915_fpc_optimize.c \
484 1.19 mrg i915_fpc_translate.c \
485 1.50 rjs i915_nir.c \
486 1.19 mrg i915_prim_emit.c \
487 1.19 mrg i915_prim_vbuf.c \
488 1.19 mrg i915_query.c \
489 1.19 mrg i915_resource_buffer.c \
490 1.19 mrg i915_resource.c \
491 1.19 mrg i915_resource_texture.c \
492 1.19 mrg i915_screen.c \
493 1.19 mrg i915_state.c \
494 1.19 mrg i915_state_derived.c \
495 1.19 mrg i915_state_dynamic.c \
496 1.19 mrg i915_state_emit.c \
497 1.19 mrg i915_state_fpc.c \
498 1.19 mrg i915_state_immediate.c \
499 1.19 mrg i915_state_sampler.c \
500 1.19 mrg i915_state_static.c \
501 1.19 mrg i915_surface.c
502 1.19 mrg
503 1.19 mrg GALLIUM_SOURCES.winsys/i915/drm= \
504 1.19 mrg i915_drm_batchbuffer.c \
505 1.19 mrg i915_drm_buffer.c \
506 1.19 mrg i915_drm_fence.c \
507 1.19 mrg i915_drm_winsys.c
508 1.19 mrg
509 1.50 rjs GALLIUM_SOURCES.drivers/iris= \
510 1.50 rjs iris_batch.c \
511 1.50 rjs iris_binder.c \
512 1.50 rjs iris_blit.c \
513 1.50 rjs iris_border_color.c \
514 1.50 rjs iris_bufmgr.c \
515 1.50 rjs iris_clear.c \
516 1.50 rjs iris_context.c \
517 1.50 rjs iris_disk_cache.c \
518 1.50 rjs iris_draw.c \
519 1.50 rjs iris_fence.c \
520 1.50 rjs iris_fine_fence.c \
521 1.50 rjs iris_formats.c \
522 1.50 rjs iris_measure.c \
523 1.50 rjs iris_monitor.c \
524 1.50 rjs iris_perf.c \
525 1.50 rjs iris_performance_query.c \
526 1.50 rjs iris_pipe_control.c \
527 1.50 rjs iris_program.c \
528 1.50 rjs iris_program_cache.c \
529 1.50 rjs iris_resolve.c \
530 1.50 rjs iris_resource.c \
531 1.50 rjs iris_screen.c
532 1.50 rjs
533 1.50 rjs GALLIUM_SOURCES.winsys/iris/drm= \
534 1.50 rjs iris_drm_winsys.c
535 1.50 rjs
536 1.50 rjs IRIS_GENS_BLORP= 80 90 110 120 125
537 1.50 rjs
538 1.50 rjs .for _gen in ${IRIS_GENS_BLORP}
539 1.50 rjs BUILDSYMLINKS+= ${X11SRCDIR.Mesa}/src/gallium/drivers/iris/iris_blorp.c ${_gen}_iris_blorp.c
540 1.50 rjs BUILDSYMLINKS+= ${X11SRCDIR.Mesa}/src/gallium/drivers/iris/iris_query.c ${_gen}_iris_query.c
541 1.50 rjs BUILDSYMLINKS+= ${X11SRCDIR.Mesa}/src/gallium/drivers/iris/iris_state.c ${_gen}_iris_state.c
542 1.50 rjs GALLIIUM_SOURCES.drivers/iris+= ${_gen}_iris_blorp.c ${_gen}_iris_query.c ${_gen}_iris_state.c
543 1.50 rjs
544 1.50 rjs CPPFLAGS.${_gen}_iris_blorp.c+= -DGFX_VERx10=${_gen}
545 1.50 rjs CPPFLAGS.${_gen}_iris_query.c+= -DGFX_VERx10=${_gen}
546 1.50 rjs CPPFLAGS.${_gen}_iris_state.c+= -DGFX_VERx10=${_gen}
547 1.50 rjs .endfor
548 1.50 rjs
549 1.50 rjs .for _f in ${GALLIUM_SOURCES.drivers/iris}
550 1.50 rjs CPPFLAGS.${_f} += -I${X11SRCDIR.Mesa}/src/intel
551 1.50 rjs .endfor
552 1.50 rjs
553 1.50 rjs GALLIUM_SOURCES.drivers/crocus= \
554 1.50 rjs crocus_batch.c \
555 1.50 rjs crocus_blit.c \
556 1.50 rjs crocus_blorp.c \
557 1.50 rjs crocus_blt.c \
558 1.50 rjs crocus_bufmgr.c \
559 1.50 rjs crocus_clear.c \
560 1.50 rjs crocus_context.c \
561 1.50 rjs crocus_disk_cache.c \
562 1.50 rjs crocus_draw.c \
563 1.50 rjs crocus_fence.c \
564 1.50 rjs crocus_fine_fence.c \
565 1.50 rjs crocus_formats.c \
566 1.50 rjs crocus_monitor.c \
567 1.50 rjs crocus_pipe_control.c \
568 1.50 rjs crocus_program.c \
569 1.50 rjs crocus_program_cache.c \
570 1.50 rjs crocus_query.c \
571 1.50 rjs crocus_resolve.c \
572 1.50 rjs crocus_resource.c \
573 1.50 rjs crocus_screen.c \
574 1.50 rjs crocus_state.c
575 1.50 rjs
576 1.50 rjs GALLIUM_SOURCES.winsys/crocus/drm= \
577 1.50 rjs crocus_drm_winsys.c
578 1.50 rjs
579 1.50 rjs CROCUS_GENS_BLORP= 40 45 50 60 70 75 80
580 1.50 rjs
581 1.50 rjs .for _gen in ${CROCUS_GENS_BLORP}
582 1.50 rjs BUILDSYMLINKS+= ${X11SRCDIR.Mesa}/src/gallium/drivers/crocus/crocus_blorp.c ${_gen}_crocus_blorp.c
583 1.50 rjs BUILDSYMLINKS+= ${X11SRCDIR.Mesa}/src/gallium/drivers/crocus/crocus_query.c ${_gen}_crocus_query.c
584 1.50 rjs BUILDSYMLINKS+= ${X11SRCDIR.Mesa}/src/gallium/drivers/crocus/crocus_state.c ${_gen}_crocus_state.c
585 1.50 rjs BUILDSYMLINKS+= ${X11SRCDIR.Mesa}/src/gallium/drivers/crocus/crocus_blt.c ${_gen}_crocus_bltec
586 1.50 rjs GALLIIUM_SOURCES.drivers/iris+= ${_gen}_crocus_blorp.c ${_gen}_crocus_query.c ${_gen}_crocus_state.c ${_gen}_crocus_blt.c
587 1.50 rjs
588 1.50 rjs CPPFLAGS.${_gen}_crocus_blorp.c+= -DGFX_VERx10=${_gen}
589 1.50 rjs CPPFLAGS.${_gen}_crocus_query.c+= -DGFX_VERx10=${_gen}
590 1.50 rjs CPPFLAGS.${_gen}_crocus_state.c+= -DGFX_VERx10=${_gen}
591 1.50 rjs CPPFLAGS.${_gen}_crocus_blt.c+= -DGFX_VERx10=${_gen}
592 1.50 rjs .endfor
593 1.50 rjs
594 1.50 rjs .for _f in ${GALLIUM_SOURCES.drivers/crocus}
595 1.50 rjs CPPFLAGS.${_f} += -I${X11SRCDIR.Mesa}/src/intel
596 1.50 rjs .endfor
597 1.50 rjs
598 1.19 mrg # Conflicts with r600/radeon_video.c and radeon/radeon_video.c
599 1.19 mrg BUILDSYMLINKS+= ${X11SRCDIR.Mesa}/src/gallium/drivers/r600/radeon_video.c r600_radeon_video.c
600 1.19 mrg BUILDSYMLINKS+= ${X11SRCDIR.Mesa}/src/gallium/drivers/radeon/radeon_video.c radeon_radeon_video.c
601 1.19 mrg BUILDSYMLINKS+= ${X11SRCDIR.Mesa}/src/gallium/drivers/r600/radeon_vce.c r600_radeon_vce.c
602 1.19 mrg BUILDSYMLINKS+= ${X11SRCDIR.Mesa}/src/gallium/drivers/radeon/radeon_vce.c radeon_radeon_vce.c
603 1.19 mrg BUILDSYMLINKS+= ${X11SRCDIR.Mesa}/src/gallium/drivers/r600/radeon_uvd.c r600_radeon_uvd.c
604 1.19 mrg BUILDSYMLINKS+= ${X11SRCDIR.Mesa}/src/gallium/drivers/radeon/radeon_uvd.c radeon_radeon_uvd.c
605 1.19 mrg
606 1.1 mrg GALLIUM_SOURCES.drivers/radeon = \
607 1.1 mrg cayman_msaa.c \
608 1.1 mrg r600_buffer_common.c \
609 1.1 mrg r600_pipe_common.c \
610 1.1 mrg r600_query.c \
611 1.1 mrg r600_streamout.c \
612 1.1 mrg r600_texture.c \
613 1.19 mrg radeon_radeon_uvd.c \
614 1.19 mrg radeon_uvd_enc.c \
615 1.19 mrg radeon_uvd_enc_1_1.c \
616 1.19 mrg radeon_vce_40_2_2.c \
617 1.19 mrg radeon_vce_50.c \
618 1.19 mrg radeon_vce_52.c \
619 1.19 mrg radeon_vcn_dec.c \
620 1.19 mrg radeon_vcn_dec_jpeg.c \
621 1.19 mrg radeon_vcn_enc.c \
622 1.19 mrg radeon_vcn_enc_1_2.c \
623 1.50 rjs radeon_vcn_enc_2_0.c \
624 1.50 rjs radeon_vcn_enc_3_0.c \
625 1.19 mrg radeon_radeon_vce.c \
626 1.19 mrg radeon_radeon_video.c \
627 1.1 mrg
628 1.1 mrg GALLIUM_SOURCES.drivers/r600 = \
629 1.19 mrg eg_debug.c \
630 1.19 mrg r600_gpu_load.c \
631 1.35 maya r600_perfcounter.c \
632 1.19 mrg r600_radeon_vce.c \
633 1.19 mrg r600_radeon_video.c \
634 1.19 mrg compute_memory_pool.c \
635 1.19 mrg r600_viewport.c \
636 1.19 mrg eg_asm.c \
637 1.19 mrg evergreen_compute.c \
638 1.19 mrg evergreen_hw_context.c \
639 1.19 mrg evergreen_state.c \
640 1.1 mrg r600_asm.c \
641 1.1 mrg r600_blit.c \
642 1.50 rjs r600_dump.c \
643 1.1 mrg r600_hw_context.c \
644 1.1 mrg r600_isa.c \
645 1.1 mrg r600_pipe.c \
646 1.1 mrg r600_shader.c \
647 1.1 mrg r600_state.c \
648 1.1 mrg r600_state_common.c \
649 1.19 mrg r600_uvd.c \
650 1.19 mrg r600_radeon_uvd.c \
651 1.19 mrg r600_test_dma.c \
652 1.19 mrg r700_asm.c
653 1.1 mrg GALLIUM_SOURCES.drivers/r600/sb = \
654 1.1 mrg sb_bc_builder.cpp \
655 1.1 mrg sb_bc_decoder.cpp \
656 1.1 mrg sb_bc_dump.cpp \
657 1.1 mrg sb_bc_finalize.cpp \
658 1.1 mrg sb_bc_parser.cpp \
659 1.1 mrg sb_context.cpp \
660 1.1 mrg sb_core.cpp \
661 1.1 mrg sb_dce_cleanup.cpp \
662 1.1 mrg sb_def_use.cpp \
663 1.1 mrg sb_dump.cpp \
664 1.1 mrg sb_expr.cpp \
665 1.1 mrg sb_gcm.cpp \
666 1.1 mrg sb_gvn.cpp \
667 1.1 mrg sb_if_conversion.cpp \
668 1.1 mrg sb_ir.cpp \
669 1.1 mrg sb_liveness.cpp \
670 1.1 mrg sb_pass.cpp \
671 1.1 mrg sb_peephole.cpp \
672 1.1 mrg sb_psi_ops.cpp \
673 1.1 mrg sb_ra_checker.cpp \
674 1.1 mrg sb_ra_coalesce.cpp \
675 1.1 mrg sb_ra_init.cpp \
676 1.1 mrg sb_sched.cpp \
677 1.1 mrg sb_shader.cpp \
678 1.1 mrg sb_ssa_builder.cpp \
679 1.1 mrg sb_valtable.cpp
680 1.50 rjs GALLIUM_SOURCES.drivers/r600/sfn = \
681 1.50 rjs sfn_nir_vectorize_vs_inputs.c \
682 1.50 rjs sfn_alu_defines.cpp \
683 1.50 rjs sfn_liverange.cpp \
684 1.50 rjs sfn_callstack.cpp \
685 1.50 rjs sfn_nir.cpp \
686 1.50 rjs sfn_conditionaljumptracker.cpp \
687 1.50 rjs sfn_nir_legalize_image_load_store.cpp \
688 1.50 rjs sfn_debug.cpp \
689 1.50 rjs sfn_nir_lower_64bit.cpp \
690 1.50 rjs sfn_emitaluinstruction.cpp \
691 1.50 rjs sfn_nir_lower_alu.cpp \
692 1.50 rjs sfn_emitinstruction.cpp \
693 1.50 rjs sfn_nir_lower_fs_out_to_vector.cpp \
694 1.50 rjs sfn_emitssboinstruction.cpp \
695 1.50 rjs sfn_nir_lower_tess_io.cpp \
696 1.50 rjs sfn_emittexinstruction.cpp \
697 1.50 rjs sfn_instruction_alu.cpp \
698 1.50 rjs sfn_shader_base.cpp \
699 1.50 rjs sfn_instruction_base.cpp \
700 1.50 rjs sfn_shader_compute.cpp \
701 1.50 rjs sfn_instruction_block.cpp \
702 1.50 rjs sfn_shader_fragment.cpp \
703 1.50 rjs sfn_instruction_cf.cpp \
704 1.50 rjs sfn_shader_geometry.cpp \
705 1.50 rjs sfn_instruction_export.cpp \
706 1.50 rjs sfn_shader_tcs.cpp \
707 1.50 rjs sfn_instruction_fetch.cpp \
708 1.50 rjs sfn_shader_tess_eval.cpp \
709 1.50 rjs sfn_instruction_gds.cpp \
710 1.50 rjs sfn_shader_vertex.cpp \
711 1.50 rjs sfn_instruction_lds.cpp \
712 1.50 rjs sfn_shaderio.cpp \
713 1.50 rjs sfn_instruction_misc.cpp \
714 1.50 rjs sfn_value.cpp \
715 1.50 rjs sfn_instruction_tex.cpp \
716 1.50 rjs sfn_value_gpr.cpp \
717 1.50 rjs sfn_instructionvisitor.cpp \
718 1.50 rjs sfn_valuepool.cpp \
719 1.50 rjs sfn_ir_to_assembly.cpp \
720 1.50 rjs sfn_vertexstageexport.cpp
721 1.1 mrg
722 1.19 mrg GALLIUM_SOURCES.drivers/r300 = \
723 1.19 mrg r300_blit.c \
724 1.19 mrg r300_chipset.c \
725 1.19 mrg r300_context.c \
726 1.19 mrg r300_debug.c \
727 1.19 mrg r300_emit.c \
728 1.19 mrg r300_flush.c \
729 1.19 mrg r300_fs.c \
730 1.19 mrg r300_hyperz.c \
731 1.19 mrg r300_query.c \
732 1.19 mrg r300_render.c \
733 1.19 mrg r300_render_stencilref.c \
734 1.19 mrg r300_render_translate.c \
735 1.19 mrg r300_resource.c \
736 1.19 mrg r300_screen_buffer.c \
737 1.19 mrg r300_screen.c \
738 1.19 mrg r300_state.c \
739 1.19 mrg r300_state_derived.c \
740 1.19 mrg r300_texture.c \
741 1.19 mrg r300_texture_desc.c \
742 1.19 mrg r300_tgsi_to_rc.c \
743 1.19 mrg r300_transfer.c \
744 1.19 mrg r300_vs.c \
745 1.19 mrg r300_vs_draw.c
746 1.19 mrg
747 1.53 rjs CPPFLAGS.r300_state_derived.c = ${CC_WNO_STRINGOP_OVERREAD}
748 1.53 rjs
749 1.19 mrg GALLIUM_SOURCES.drivers/r300/compiler = \
750 1.19 mrg memory_pool.c \
751 1.19 mrg r300_fragprog.c \
752 1.19 mrg r300_fragprog_emit.c \
753 1.19 mrg r300_fragprog_swizzle.c \
754 1.19 mrg r3xx_fragprog.c \
755 1.19 mrg r3xx_vertprog.c \
756 1.19 mrg r3xx_vertprog_dump.c \
757 1.19 mrg r500_fragprog.c \
758 1.19 mrg r500_fragprog_emit.c \
759 1.19 mrg radeon_code.c \
760 1.19 mrg radeon_compiler.c \
761 1.19 mrg radeon_compiler_util.c \
762 1.19 mrg radeon_dataflow.c \
763 1.19 mrg radeon_dataflow_deadcode.c \
764 1.19 mrg radeon_dataflow_swizzles.c \
765 1.19 mrg radeon_emulate_branches.c \
766 1.19 mrg radeon_emulate_loops.c \
767 1.19 mrg radeon_inline_literals.c \
768 1.19 mrg radeon_list.c \
769 1.19 mrg radeon_opcodes.c \
770 1.19 mrg radeon_optimize.c \
771 1.19 mrg radeon_pair_dead_sources.c \
772 1.19 mrg radeon_pair_regalloc.c \
773 1.19 mrg radeon_pair_schedule.c \
774 1.19 mrg radeon_pair_translate.c \
775 1.19 mrg radeon_program_alu.c \
776 1.19 mrg radeon_program.c \
777 1.19 mrg radeon_program_pair.c \
778 1.19 mrg radeon_program_print.c \
779 1.19 mrg radeon_program_tex.c \
780 1.19 mrg radeon_remove_constants.c \
781 1.19 mrg radeon_rename_regs.c \
782 1.19 mrg radeon_variable.c \
783 1.19 mrg radeon_vert_fc.c
784 1.19 mrg
785 1.19 mrg GALLIUM_SOURCES.drivers/radeonsi = \
786 1.50 rjs gfx10_query.c \
787 1.50 rjs gfx10_shader_ngg.c \
788 1.19 mrg si_blit.c \
789 1.19 mrg si_buffer.c \
790 1.19 mrg si_clear.c \
791 1.19 mrg si_compute.c \
792 1.19 mrg si_compute_blit.c \
793 1.19 mrg si_cp_dma.c \
794 1.50 rjs si_cp_reg_shadowing.c \
795 1.19 mrg si_debug.c \
796 1.19 mrg si_descriptors.c \
797 1.19 mrg si_fence.c \
798 1.19 mrg si_get.c \
799 1.19 mrg si_gfx_cs.c \
800 1.19 mrg si_gpu_load.c \
801 1.19 mrg si_pipe.c \
802 1.19 mrg si_pm4.c \
803 1.19 mrg si_perfcounter.c \
804 1.19 mrg si_query.c \
805 1.50 rjs si_nir_optim.c \
806 1.19 mrg si_shader.c \
807 1.50 rjs si_sdma_copy_image.c \
808 1.50 rjs si_shader_llvm.c \
809 1.50 rjs si_shader_llvm_gs.c \
810 1.50 rjs si_shader_llvm_ps.c \
811 1.50 rjs si_shader_llvm_resources.c \
812 1.50 rjs si_shader_llvm_tess.c \
813 1.50 rjs si_shader_llvm_vs.c \
814 1.19 mrg si_shader_nir.c \
815 1.50 rjs si_shaderlib_nir.c \
816 1.19 mrg si_shaderlib_tgsi.c \
817 1.50 rjs si_sqtt.c \
818 1.19 mrg si_state.c \
819 1.19 mrg si_state_binning.c \
820 1.50 rjs si_state_draw_gfx6.cpp \
821 1.50 rjs si_state_draw_gfx7.cpp \
822 1.50 rjs si_state_draw_gfx8.cpp \
823 1.50 rjs si_state_draw_gfx9.cpp \
824 1.50 rjs si_state_draw_gfx10.cpp \
825 1.50 rjs si_state_draw_gfx103.cpp \
826 1.19 mrg si_state_msaa.c \
827 1.19 mrg si_state_shaders.c \
828 1.19 mrg si_state_streamout.c \
829 1.19 mrg si_state_viewport.c \
830 1.50 rjs si_test_blit.c \
831 1.19 mrg si_test_dma_perf.c \
832 1.19 mrg si_texture.c \
833 1.19 mrg si_uvd.c
834 1.19 mrg
835 1.50 rjs .PATH: ${X11SRCDIR.Mesa}/src/gallium/drivers/radeonsi
836 1.50 rjs BUILDSYMLINKS+= ${X11SRCDIR.Mesa}/src/gallium/drivers/radeonsi/si_state_draw.cpp si_state_draw_gfx6.cpp
837 1.50 rjs BUILDSYMLINKS+= ${X11SRCDIR.Mesa}/src/gallium/drivers/radeonsi/si_state_draw.cpp si_state_draw_gfx7.cpp
838 1.50 rjs BUILDSYMLINKS+= ${X11SRCDIR.Mesa}/src/gallium/drivers/radeonsi/si_state_draw.cpp si_state_draw_gfx8.cpp
839 1.50 rjs BUILDSYMLINKS+= ${X11SRCDIR.Mesa}/src/gallium/drivers/radeonsi/si_state_draw.cpp si_state_draw_gfx9.cpp
840 1.50 rjs BUILDSYMLINKS+= ${X11SRCDIR.Mesa}/src/gallium/drivers/radeonsi/si_state_draw.cpp si_state_draw_gfx10.cpp
841 1.50 rjs BUILDSYMLINKS+= ${X11SRCDIR.Mesa}/src/gallium/drivers/radeonsi/si_state_draw.cpp si_state_draw_gfx103.cpp
842 1.50 rjs
843 1.50 rjs CPPFLAGS.si_state_draw_gfx6.cpp += -DGFX_VER=6
844 1.50 rjs CPPFLAGS.si_state_draw_gfx7.cpp += -DGFX_VER=7
845 1.50 rjs CPPFLAGS.si_state_draw_gfx8.cpp += -DGFX_VER=8
846 1.50 rjs CPPFLAGS.si_state_draw_gfx9.cpp += -DGFX_VER=9
847 1.50 rjs CPPFLAGS.si_state_draw_gfx10.cpp += -DGFX_VER=10
848 1.50 rjs CPPFLAGS.si_state_draw_gfx103.cpp += -DGFX_VER=103
849 1.50 rjs
850 1.19 mrg .for _f in ${GALLIUM_SOURCES.drivers/radeon}
851 1.19 mrg CPPFLAGS.${_f} += -I${X11SRCDIR.Mesa}/src/gallium/drivers/radeon
852 1.19 mrg .endfor
853 1.19 mrg
854 1.19 mrg .for _f in ${GALLIUM_SOURCES.drivers/r300} ${GALLIUM_SOURCES.drivers/r300/compiler}
855 1.19 mrg CPPFLAGS.${_f} += -I${X11SRCDIR.Mesa}/src/gallium/drivers/r300 \
856 1.19 mrg -I${X11SRCDIR.Mesa}/src/gallium/drivers/r300/compiler
857 1.19 mrg .endfor
858 1.19 mrg
859 1.50 rjs .for _f in ${GALLIUM_SOURCES.drivers/r600} ${GALLIUM_SOURCES.drivers/r600/sb} ${GALLIUM_SOURCES.drivers/radeonsi} ${GALLIUM_SOURCES.drivers/r600/sfn}
860 1.18 mrg CPPFLAGS.${_f} += -I${X11SRCDIR.Mesa}/src/gallium/drivers/r600
861 1.19 mrg CPPFLAGS.${_f} += -I${X11SRCDIR.Mesa}/../src/gallium/drivers/r600
862 1.19 mrg CPPFLAGS.${_f} += -I${X11SRCDIR.Mesa}/src/amd/common
863 1.35 maya CPPFLAGS.${_f} += -I${X11SRCDIR.Mesa}/../src/amd/common
864 1.50 rjs CPPFLAGS.${_f} += -I${X11SRCDIR.Mesa}/src/amd/llvm
865 1.19 mrg .endfor
866 1.19 mrg
867 1.19 mrg .for _f in ${GALLIUM_SOURCES.drivers/radeon}
868 1.19 mrg CPPFLAGS.${_f} += -I${X11SRCDIR.Mesa}/src/gallium/drivers/radeonsi
869 1.19 mrg CPPFLAGS.${_f} += -I${X11SRCDIR.Mesa}/src/amd/common
870 1.50 rjs CPPFLAGS.${_f} += -I${X11SRCDIR.Mesa}/src/amd/llvm
871 1.1 mrg .endfor
872 1.1 mrg
873 1.8 mrg GALLIUM_SOURCES.drivers/nouveau = \
874 1.19 mrg nouveau_buffer.c \
875 1.8 mrg nouveau_fence.c \
876 1.19 mrg nouveau_heap.c \
877 1.8 mrg nouveau_mm.c \
878 1.19 mrg nouveau_screen.c \
879 1.8 mrg nouveau_video.c \
880 1.19 mrg nouveau_vp3_video_bsp.c \
881 1.8 mrg nouveau_vp3_video.c \
882 1.8 mrg nouveau_vp3_video_vp.c
883 1.8 mrg
884 1.8 mrg GALLIUM_SOURCES.drivers/nouveau/nv30 = \
885 1.19 mrg nv30_clear.c \
886 1.8 mrg nv30_context.c \
887 1.19 mrg nv30_draw.c \
888 1.8 mrg nv30_format.c \
889 1.19 mrg nv30_fragprog.c \
890 1.19 mrg nv30_fragtex.c \
891 1.19 mrg nv30_miptree.c \
892 1.19 mrg nv30_push.c \
893 1.19 mrg nv30_query.c \
894 1.8 mrg nv30_resource.c \
895 1.19 mrg nv30_screen.c \
896 1.8 mrg nv30_state.c \
897 1.8 mrg nv30_state_validate.c \
898 1.8 mrg nv30_texture.c \
899 1.19 mrg nv30_transfer.c \
900 1.19 mrg nv30_vbo.c \
901 1.19 mrg nv30_vertprog.c \
902 1.8 mrg nv40_verttex.c \
903 1.19 mrg nvfx_fragprog.c \
904 1.19 mrg nvfx_vertprog.c
905 1.8 mrg
906 1.8 mrg GALLIUM_SOURCES.drivers/nouveau/nv50 = \
907 1.19 mrg nv50_compute.c \
908 1.8 mrg nv50_context.c \
909 1.8 mrg nv50_formats.c \
910 1.8 mrg nv50_miptree.c \
911 1.19 mrg nv50_program.c \
912 1.19 mrg nv50_push.c \
913 1.19 mrg nv50_query.c \
914 1.19 mrg nv50_query_hw.c \
915 1.19 mrg nv50_query_hw_metric.c \
916 1.19 mrg nv50_query_hw_sm.c \
917 1.8 mrg nv50_resource.c \
918 1.8 mrg nv50_screen.c \
919 1.19 mrg nv50_shader_state.c \
920 1.8 mrg nv50_state.c \
921 1.8 mrg nv50_state_validate.c \
922 1.8 mrg nv50_surface.c \
923 1.8 mrg nv50_tex.c \
924 1.8 mrg nv50_transfer.c \
925 1.8 mrg nv50_vbo.c \
926 1.19 mrg nv84_video_bsp.c \
927 1.8 mrg nv84_video.c \
928 1.8 mrg nv84_video_vp.c \
929 1.19 mrg nv98_video_bsp.c \
930 1.8 mrg nv98_video.c \
931 1.19 mrg nv98_video_ppp.c \
932 1.19 mrg nv98_video_vp.c
933 1.8 mrg
934 1.8 mrg GALLIUM_SOURCES.drivers/nouveau/codegen = \
935 1.8 mrg nv50_ir.cpp \
936 1.8 mrg nv50_ir_bb.cpp \
937 1.8 mrg nv50_ir_build_util.cpp \
938 1.35 maya nv50_ir_emit_gk110.cpp \
939 1.35 maya nv50_ir_emit_gm107.cpp \
940 1.50 rjs nv50_ir_emit_gv100.cpp \
941 1.8 mrg nv50_ir_emit_nv50.cpp \
942 1.35 maya nv50_ir_emit_nvc0.cpp \
943 1.35 maya nv50_ir_from_common.cpp \
944 1.35 maya nv50_ir_from_nir.cpp \
945 1.8 mrg nv50_ir_from_tgsi.cpp \
946 1.8 mrg nv50_ir_graph.cpp \
947 1.35 maya nv50_ir_lowering_gm107.cpp \
948 1.50 rjs nv50_ir_lowering_gv100.cpp \
949 1.35 maya nv50_ir_lowering_helper.cpp \
950 1.8 mrg nv50_ir_lowering_nv50.cpp \
951 1.35 maya nv50_ir_lowering_nvc0.cpp \
952 1.8 mrg nv50_ir_peephole.cpp \
953 1.8 mrg nv50_ir_print.cpp \
954 1.8 mrg nv50_ir_ra.cpp \
955 1.50 rjs nv50_ir_serialize.cpp \
956 1.8 mrg nv50_ir_ssa.cpp \
957 1.8 mrg nv50_ir_target.cpp \
958 1.50 rjs nv50_ir_target_gv100.cpp \
959 1.8 mrg nv50_ir_target_nv50.cpp \
960 1.8 mrg nv50_ir_util.cpp \
961 1.19 mrg nv50_ir_target_gm107.cpp \
962 1.19 mrg nv50_ir_target_nvc0.cpp
963 1.8 mrg
964 1.8 mrg GALLIUM_SOURCES.drivers/nouveau/nvc0 = \
965 1.8 mrg nvc0_compute.c \
966 1.8 mrg nvc0_context.c \
967 1.8 mrg nvc0_formats.c \
968 1.8 mrg nvc0_miptree.c \
969 1.8 mrg nvc0_resource.c \
970 1.8 mrg nvc0_screen.c \
971 1.8 mrg nvc0_state.c \
972 1.8 mrg nvc0_state_validate.c \
973 1.8 mrg nvc0_surface.c \
974 1.8 mrg nvc0_tex.c \
975 1.8 mrg nvc0_transfer.c \
976 1.8 mrg nvc0_vbo.c \
977 1.8 mrg nvc0_vbo_translate.c \
978 1.8 mrg nvc0_program.c \
979 1.8 mrg nvc0_shader_state.c \
980 1.8 mrg nvc0_query.c \
981 1.19 mrg nvc0_query_hw.c \
982 1.19 mrg nvc0_query_hw_metric.c \
983 1.19 mrg nvc0_query_hw_sm.c \
984 1.19 mrg nvc0_query_sw.c \
985 1.8 mrg nve4_compute.c \
986 1.8 mrg nvc0_video.c \
987 1.8 mrg nvc0_video_bsp.c \
988 1.8 mrg nvc0_video_vp.c \
989 1.8 mrg nvc0_video_ppp.c
990 1.8 mrg
991 1.19 mrg GALLIUM_SOURCES.winsys/nouveau/drm = \
992 1.19 mrg nouveau_drm_winsys.c
993 1.19 mrg
994 1.8 mrg .for _f in ${GALLIUM_SOURCES.drivers/nouveau} \
995 1.8 mrg ${GALLIUM_SOURCES.drivers/nouveau/nv30} \
996 1.8 mrg ${GALLIUM_SOURCES.drivers/nouveau/nv50} \
997 1.8 mrg ${GALLIUM_SOURCES.drivers/nouveau/codegen} \
998 1.19 mrg ${GALLIUM_SOURCES.drivers/nouveau/nvc0} \
999 1.19 mrg ${GALLIUM_SOURCES.winsys/nouveau/drm}
1000 1.19 mrg CPPFLAGS.${_f} += -I${X11SRCDIR.Mesa}/src/gallium/drivers/nouveau \
1001 1.19 mrg -I${DESTDIR}${X11INCDIR}/libdrm/nouveau
1002 1.8 mrg .endfor
1003 1.1 mrg
1004 1.1 mrg GALLIUM_SOURCES.winsys/radeon/drm = \
1005 1.1 mrg radeon_drm_bo.c \
1006 1.1 mrg radeon_drm_cs.c \
1007 1.19 mrg radeon_drm_surface.c \
1008 1.1 mrg radeon_drm_winsys.c
1009 1.1 mrg
1010 1.19 mrg GALLIUM_SOURCES.winsys/amdgpu/drm = \
1011 1.19 mrg amdgpu_bo.c \
1012 1.19 mrg amdgpu_cs.c \
1013 1.19 mrg amdgpu_surface.c \
1014 1.19 mrg amdgpu_winsys.c
1015 1.19 mrg
1016 1.19 mrg .for _f in ${GALLIUM_SOURCES.winsys/amdgpu/drm}
1017 1.19 mrg CPPFLAGS.${_f} += -I${X11SRCDIR.Mesa}/src/amd
1018 1.50 rjs CPPFLAGS.${_f} += -I${X11SRCDIR.Mesa}/src/amd/common
1019 1.50 rjs CPPFLAGS.${_f} += -I${X11SRCDIR.Mesa}/../src/amd/common
1020 1.50 rjs CPPFLAGS.${_f} += -I${X11SRCDIR.Mesa}/src/amd/llvm
1021 1.19 mrg .endfor
1022 1.19 mrg
1023 1.50 rjs GALLIUM_SOURCES.frontends/vdpau = \
1024 1.19 mrg bitmap.c \
1025 1.19 mrg decode.c \
1026 1.19 mrg device.c \
1027 1.19 mrg ftab.c \
1028 1.19 mrg htab.c \
1029 1.19 mrg mixer.c \
1030 1.19 mrg output.c \
1031 1.19 mrg preemption.c \
1032 1.19 mrg presentation.c \
1033 1.19 mrg query.c \
1034 1.19 mrg surface.c
1035 1.19 mrg
1036 1.19 mrg GALLIUM_SOURCES.drivers/llvmpipe = \
1037 1.19 mrg lp_bld_alpha.c \
1038 1.19 mrg lp_bld_blend_aos.c \
1039 1.19 mrg lp_bld_blend.c \
1040 1.19 mrg lp_bld_blend_logicop.c \
1041 1.19 mrg lp_bld_depth.c \
1042 1.19 mrg lp_bld_interp.c \
1043 1.19 mrg lp_clear.c \
1044 1.19 mrg lp_context.c \
1045 1.50 rjs lp_cs_tpool.c \
1046 1.19 mrg lp_draw_arrays.c \
1047 1.19 mrg lp_fence.c \
1048 1.19 mrg lp_flush.c \
1049 1.19 mrg lp_jit.c \
1050 1.50 rjs lp_linear.c \
1051 1.50 rjs lp_linear_fastpath.c \
1052 1.50 rjs lp_linear_interp.c \
1053 1.50 rjs lp_linear_sampler.c \
1054 1.19 mrg lp_memory.c \
1055 1.19 mrg lp_perf.c \
1056 1.19 mrg lp_query.c \
1057 1.19 mrg lp_rast.c \
1058 1.19 mrg lp_rast_debug.c \
1059 1.50 rjs lp_rast_linear.c \
1060 1.50 rjs lp_rast_linear_fallback.c \
1061 1.50 rjs lp_rast_rect.c \
1062 1.19 mrg lp_rast_tri.c \
1063 1.19 mrg lp_scene.c \
1064 1.19 mrg lp_scene_queue.c \
1065 1.19 mrg lp_screen.c \
1066 1.19 mrg lp_setup.c \
1067 1.50 rjs lp_setup_analysis.c \
1068 1.19 mrg lp_setup_line.c \
1069 1.19 mrg lp_setup_point.c \
1070 1.50 rjs lp_setup_rect.c \
1071 1.19 mrg lp_setup_tri.c \
1072 1.19 mrg lp_setup_vbuf.c \
1073 1.19 mrg lp_state_blend.c \
1074 1.19 mrg lp_state_clip.c \
1075 1.50 rjs lp_state_cs.c \
1076 1.19 mrg lp_state_derived.c \
1077 1.19 mrg lp_state_fs.c \
1078 1.50 rjs lp_state_fs_analysis.c \
1079 1.50 rjs lp_state_fs_fastpath.c \
1080 1.50 rjs lp_state_fs_linear.c \
1081 1.50 rjs lp_state_fs_linear_llvm.c \
1082 1.19 mrg lp_state_gs.c \
1083 1.19 mrg lp_state_rasterizer.c \
1084 1.19 mrg lp_state_sampler.c \
1085 1.19 mrg lp_state_setup.c \
1086 1.19 mrg lp_state_so.c \
1087 1.19 mrg lp_state_surface.c \
1088 1.50 rjs lp_state_tess.c \
1089 1.19 mrg lp_state_vertex.c \
1090 1.19 mrg lp_state_vs.c \
1091 1.19 mrg lp_surface.c \
1092 1.19 mrg lp_tex_sample.c \
1093 1.19 mrg lp_texture.c
1094 1.9 mrg
1095 1.1 mrg GALLIUM_SOURCES.drivers/softpipe = \
1096 1.19 mrg sp_buffer.c \
1097 1.19 mrg sp_clear.c \
1098 1.19 mrg sp_context.c \
1099 1.19 mrg sp_compute.c \
1100 1.19 mrg sp_draw_arrays.c \
1101 1.19 mrg sp_fence.c \
1102 1.19 mrg sp_flush.c \
1103 1.19 mrg sp_fs_exec.c \
1104 1.19 mrg sp_image.c \
1105 1.19 mrg sp_prim_vbuf.c \
1106 1.19 mrg sp_quad_blend.c \
1107 1.19 mrg sp_quad_depth_test.c \
1108 1.19 mrg sp_quad_fs.c \
1109 1.19 mrg sp_quad_pipe.c \
1110 1.19 mrg sp_quad_stipple.c \
1111 1.19 mrg sp_query.c \
1112 1.19 mrg sp_screen.c \
1113 1.19 mrg sp_setup.c \
1114 1.19 mrg sp_state_blend.c \
1115 1.19 mrg sp_state_clip.c \
1116 1.19 mrg sp_state_derived.c \
1117 1.19 mrg sp_state_image.c \
1118 1.19 mrg sp_state_rasterizer.c \
1119 1.19 mrg sp_state_sampler.c \
1120 1.19 mrg sp_state_shader.c \
1121 1.19 mrg sp_state_so.c \
1122 1.19 mrg sp_state_surface.c \
1123 1.19 mrg sp_state_vertex.c \
1124 1.19 mrg sp_surface.c \
1125 1.19 mrg sp_tex_sample.c \
1126 1.19 mrg sp_tex_tile_cache.c \
1127 1.19 mrg sp_texture.c \
1128 1.19 mrg sp_tile_cache.c
1129 1.1 mrg
1130 1.1 mrg GALLIUM_SOURCES.winsys/sw/null = \
1131 1.1 mrg null_sw_winsys.c
1132 1.1 mrg
1133 1.19 mrg GALLIUM_SOURCES.winsys/sw/wrapper = \
1134 1.19 mrg wrapper_sw_winsys.c
1135 1.19 mrg
1136 1.1 mrg GALLIUM_SOURCES.winsys/sw/dri = \
1137 1.1 mrg dri_sw_winsys.c
1138 1.1 mrg
1139 1.1 mrg GALLIUM_SOURCES.winsys/sw/kms-dri = \
1140 1.1 mrg kms_dri_sw_winsys.c
1141 1.1 mrg
1142 1.50 rjs GALLIUM_SOURCES.frontends/dri = \
1143 1.1 mrg dri_context.c \
1144 1.1 mrg dri_drawable.c \
1145 1.19 mrg dri_helpers.c \
1146 1.1 mrg dri_query_renderer.c \
1147 1.1 mrg dri_screen.c \
1148 1.1 mrg drisw.c \
1149 1.1 mrg dri2.c
1150 1.1 mrg
1151 1.1 mrg # missing
1152 1.1 mrg CPPFLAGS+= \
1153 1.1 mrg -DGALLIUM_SOFTPIPE \
1154 1.1 mrg -DGALLIUM_STATIC_TARGETS=1 \
1155 1.12 szptvlfn -DMESA_EGL_NO_X11_HEADERS
1156 1.1 mrg
1157 1.1 mrg .for _d in ${GALLIUM_SUBDIRS}
1158 1.1 mrg SRCS+= ${GALLIUM_SOURCES.${_d}}
1159 1.18 mrg .PATH: ${X11SRCDIR.Mesa}/src/gallium/${_d}
1160 1.19 mrg . for _s in ${GALLIUM_SOURCES.${_d}}
1161 1.19 mrg CPPFLAGS.${_s}+= -I${X11SRCDIR.Mesa}/src/gallium/${_d}
1162 1.19 mrg . endfor
1163 1.1 mrg .endfor
1164 1.1 mrg
1165 1.1 mrg #. if defined(${GALLIUM_SOURCES.${_d}})
1166 1.1 mrg #SRCS+= ${GALLIUM_SOURCES.${_d}}
1167 1.1 mrg #. endif
1168 1.1 mrg
1169 1.1 mrg .include "../libloader.mk"
1170 1.1 mrg
1171 1.17 dholland .if ${BUILD_RADEON} == 1
1172 1.17 dholland CFLAGS+= -pthread
1173 1.17 dholland LDFLAGS+= -pthread
1174 1.17 dholland .endif
1175 1.15 mrg
1176 1.44 christos LIBDPLIBS+= X11-xcb ${.CURDIR}/../libX11/libX11-xcb
1177 1.44 christos LIBDPLIBS+= xcb-dri2 ${.CURDIR}/../libxcb/dri2
1178 1.44 christos LIBDPLIBS+= xcb ${.CURDIR}/../libxcb/libxcb
1179 1.15 mrg .if ${BUILD_RADEON} == 1 || ${BUILD_NOUVEAU} == 1
1180 1.1 mrg LIBDPLIBS+= drm ${.CURDIR}/../libdrm
1181 1.19 mrg .if ${BUILD_I915} == 1
1182 1.19 mrg LIBDPLIBS+= drm_intel ${.CURDIR}/../libdrm_intel
1183 1.19 mrg .endif
1184 1.50 rjs .if ${BUILD_IRIS} == 1
1185 1.50 rjs LIBDPLIBS+= drm_intel ${.CURDIR}/../libdrm_intel
1186 1.50 rjs .endif
1187 1.50 rjs .if ${BUILD_CROCUS} == 1
1188 1.50 rjs LIBDPLIBS+= drm_intel ${.CURDIR}/../libdrm_intel
1189 1.50 rjs .endif
1190 1.15 mrg .if ${BUILD_RADEON} == 1
1191 1.1 mrg LIBDPLIBS+= drm_radeon ${.CURDIR}/../libdrm_radeon
1192 1.19 mrg LIBDPLIBS+= drm_amdgpu ${.CURDIR}/../libdrm_amdgpu
1193 1.15 mrg .endif # ${BUILD_RADEON} == 1
1194 1.15 mrg .if ${BUILD_NOUVEAU} == 1
1195 1.9 mrg LIBDPLIBS+= drm_nouveau ${.CURDIR}/../libdrm_nouveau
1196 1.15 mrg .endif # ${BUILD_NOUVEAU} == 1
1197 1.15 mrg .endif # ${BUILD_RADEON} == 1 || ${BUILD_NOUVEAU} == 1
1198 1.48 mrg LIBDPLIBS+= glapi ${.CURDIR}/../libglapi${OLD_SUFFIX}
1199 1.1 mrg LIBDPLIBS+= expat ${.CURDIR}/../../../../../external/mit/expat/lib/libexpat
1200 1.19 mrg LIBDPLIBS+= terminfo ${.CURDIR}/../../../../../lib/libterminfo
1201 1.44 christos LIBDPLIBS+= execinfo ${.CURDIR}/../../../../../lib/libexecinfo
1202 1.44 christos
1203 1.44 christos LIBDPLIBS+= elf ${NETBSDSRCDIR}/external/bsd/elftoolchain/lib/libelf
1204 1.19 mrg LIBDPLIBS+= z ${.CURDIR}/../../../../../lib/libz
1205 1.44 christos LIBDPLIBS+= m ${.CURDIR}/../../../../../lib/libm
1206 1.19 mrg
1207 1.19 mrg # gallium drivers requiring LLVM
1208 1.19 mrg .if ${BUILD_LLVMPIPE} == 1 || ${BUILD_RADEON} == 1
1209 1.19 mrg
1210 1.23 joerg LLVMRT_LIBS= \
1211 1.19 mrg MCJIT \
1212 1.19 mrg ExecutionEngine \
1213 1.47 joerg ExecutionEngineOrcTargetProcess \
1214 1.47 joerg ExecutionEngineOrcShared \
1215 1.47 joerg Orc \
1216 1.19 mrg RuntimeDyld
1217 1.19 mrg
1218 1.19 mrg .if ${BUILD_RADEON} == 1
1219 1.23 joerg LLVMRT_LIBS+= \
1220 1.19 mrg AMDGPUCodeGen \
1221 1.19 mrg AMDGPUMCTargetDesc \
1222 1.19 mrg AMDGPUTargetInfo \
1223 1.19 mrg AMDGPUAsmParser \
1224 1.50 rjs AMDGPUDisassembler \
1225 1.19 mrg AMDGPUUtils
1226 1.19 mrg .endif
1227 1.19 mrg
1228 1.19 mrg .if ${MACHINE_ARCH} == "i386" || ${MACHINE_ARCH} == "x86_64"
1229 1.19 mrg # XXX duplicates
1230 1.23 joerg LLVMRT_LIBS+= \
1231 1.19 mrg X86Disassembler \
1232 1.19 mrg X86CodeGen \
1233 1.19 mrg X86MCTargetDesc \
1234 1.19 mrg X86Disassembler \
1235 1.19 mrg X86MCTargetDesc \
1236 1.47 joerg X86TargetInfo
1237 1.19 mrg .endif
1238 1.30 mrg
1239 1.30 mrg .if ${MACHINE_CPU} == "aarch64"
1240 1.30 mrg LLVMRT_LIBS+= \
1241 1.30 mrg AArch64AsmParser \
1242 1.30 mrg AArch64CodeGen \
1243 1.30 mrg AArch64MCTargetDesc \
1244 1.30 mrg AArch64Utils \
1245 1.30 mrg AArch64Disassembler \
1246 1.30 mrg AArch64TargetInfo
1247 1.30 mrg .endif
1248 1.30 mrg
1249 1.31 mrg .if ${MACHINE_CPU} == "arm"
1250 1.31 mrg LLVMRT_LIBS+= \
1251 1.31 mrg ARMCodeGen \
1252 1.32 mrg ARMDisassembler \
1253 1.31 mrg ARMTargetInfo \
1254 1.31 mrg ARMMCTargetDesc \
1255 1.31 mrg ARMAsmParser \
1256 1.31 mrg ARMUtils
1257 1.31 mrg .endif
1258 1.31 mrg
1259 1.33 mrg .if ${MACHINE_CPU} == "mips"
1260 1.33 mrg LLVMRT_LIBS+= \
1261 1.33 mrg MipsCodeGen \
1262 1.33 mrg MipsDisassembler \
1263 1.33 mrg MipsAsmParser \
1264 1.33 mrg MipsMCTargetDesc \
1265 1.33 mrg MipsTargetInfo
1266 1.33 mrg .endif
1267 1.33 mrg
1268 1.33 mrg .if ${MACHINE_CPU} == "powerpc"
1269 1.33 mrg LLVMRT_LIBS+= \
1270 1.33 mrg PowerPCCodeGen \
1271 1.33 mrg PowerPCDisassembler \
1272 1.33 mrg PowerPCTargetInfo \
1273 1.33 mrg PowerPCMCTargetDesc \
1274 1.37 joerg PowerPCAsmParser
1275 1.33 mrg .endif
1276 1.33 mrg
1277 1.23 joerg LLVMRT_LIBS+= \
1278 1.47 joerg Passes \
1279 1.47 joerg TransformsCoroutines \
1280 1.47 joerg ObjCARC \
1281 1.19 mrg GlobalISel \
1282 1.19 mrg MCDisassembler \
1283 1.19 mrg SelectionDAG \
1284 1.19 mrg AsmPrinter \
1285 1.19 mrg CodeGen \
1286 1.38 joerg TransformsCFGuard \
1287 1.19 mrg Target \
1288 1.19 mrg InstCombine \
1289 1.19 mrg ScalarOpts \
1290 1.19 mrg DebugInfoCodeView \
1291 1.38 joerg DebugInfoDWARF \
1292 1.19 mrg Object \
1293 1.19 mrg BitReader \
1294 1.38 joerg TextAPI \
1295 1.38 joerg MIRParser \
1296 1.19 mrg MCParser \
1297 1.19 mrg MC \
1298 1.19 mrg ipo \
1299 1.47 joerg BitWriter \
1300 1.47 joerg FrontendOpenMP \
1301 1.19 mrg Instrumentation \
1302 1.19 mrg IRReader \
1303 1.19 mrg AsmParser \
1304 1.19 mrg Vectorize \
1305 1.19 mrg TransformsAggressiveInstCombine \
1306 1.19 mrg ProfileData \
1307 1.47 joerg TransformsUtils \
1308 1.19 mrg Analysis \
1309 1.19 mrg IR \
1310 1.38 joerg Remarks \
1311 1.38 joerg BitstreamReader \
1312 1.19 mrg Linker \
1313 1.19 mrg BinaryFormat \
1314 1.38 joerg Support \
1315 1.38 joerg Demangle
1316 1.19 mrg
1317 1.37 joerg .include "${NETBSDSRCDIR}/external/apache2/llvm/link.mk"
1318 1.19 mrg
1319 1.19 mrg .endif # ${BUILD_LLVM_PIPE} == 1 || ${BUILD_RADEON} == 1
1320 1.1 mrg
1321 1.40 martin LDFLAGS+= -Wl,--version-script=${X11SRCDIR.Mesa}/src/gallium/targets/dri/dri.sym
1322 1.40 martin .if ${MACHINE_ARCH} == "i386" || ${MACHINE_ARCH} == "x86_64" || ${MACHINE_CPU} == "aarch64"
1323 1.40 martin LDFLAGS+= -Wl,-z,defs
1324 1.40 martin .endif
1325 1.1 mrg
1326 1.1 mrg ## build mesagallium parts
1327 1.1 mrg MESA_SRC_MODULES= main math vbo state_tracker program asm_s
1328 1.19 mrg .if ${BUILD_RADEON} == 1
1329 1.19 mrg MESA_SRC_MODULES+= amd
1330 1.19 mrg .endif
1331 1.19 mrg
1332 1.1 mrg .include "../libmesa.mk"
1333 1.1 mrg .include "../libglsl.mk"
1334 1.1 mrg
1335 1.1 mrg # Special addition for just gallium; it misses the rest of asm_c files.
1336 1.18 mrg .PATH: ${X11SRCDIR.Mesa}/src/mesa/x86
1337 1.1 mrg SRCS+= common_x86.c
1338 1.1 mrg
1339 1.1 mrg .if ${MACHINE} == "amd64" || ${MACHINE} == "i386"
1340 1.1 mrg SRCS+= streaming-load-memcpy.c
1341 1.19 mrg CPPFLAGS.streaming-load-memcpy.c+= -msse4.1
1342 1.19 mrg .endif
1343 1.19 mrg
1344 1.19 mrg # Needs 64bit atomics
1345 1.27 christos CPPFLAGS.i386+= -march=i586
1346 1.27 christos CPPFLAGS+= ${CPPFLAGS.${XORG_MACHINE_ARCH:U${MACHINE_ARCH}}}
1347 1.1 mrg
1348 1.45 joerg CPPFLAGS.r600_pipe_common.c+= -DMESA_LLVM_VERSION_STRING=\"${LLVM_VERSION}\"
1349 1.45 joerg CPPFLAGS.si_get.c+= -DMESA_LLVM_VERSION_STRING=\"${LLVM_VERSION}\"
1350 1.50 rjs CPPFLAGS.lp_screen.c+= -DMESA_LLVM_VERSION_STRING=\"${LLVM_VERSION}\"
1351 1.50 rjs CPPFLAGS.lp_bld_intr.c+= -DMESA_LLVM_VERSION_STRING=\"${LLVM_VERSION}\"
1352 1.50 rjs CPPFLAGS.lp_bld_type.c+= -DMESA_LLVM_VERSION_STRING=\"${LLVM_VERSION}\"
1353 1.35 maya
1354 1.1 mrg .include "../driver.mk"
1355 1.1 mrg
1356 1.1 mrg
1357 1.18 mrg .PATH: ${X11SRCDIR.Mesa}/src/gallium/targets/dri
1358 1.1 mrg SRCS+= target.c
1359 1.1 mrg
1360 1.1 mrg CPPFLAGS+= \
1361 1.18 mrg -I${X11SRCDIR.Mesa}/src/gallium/include \
1362 1.18 mrg -I${X11SRCDIR.Mesa}/src/gallium/auxiliary \
1363 1.18 mrg -I${X11SRCDIR.Mesa}/src/gallium/drivers \
1364 1.18 mrg -I${X11SRCDIR.Mesa}/../src/mesa/drivers/dri/common
1365 1.1 mrg
1366 1.1 mrg CPPFLAGS.target.c += \
1367 1.1 mrg -DDRI_TARGET \
1368 1.1 mrg -DGALLIUM_NOOP \
1369 1.1 mrg -DGALLIUM_RBUG \
1370 1.1 mrg -DGALLIUM_TRACE \
1371 1.1 mrg -DGALLIUM_SOFTPIPE \
1372 1.50 rjs -I${X11SRCDIR.Mesa}/src/gallium/frontends/dri \
1373 1.18 mrg -I${X11SRCDIR.Mesa}/src/loader \
1374 1.35 maya -I${X11SRCDIR.Mesa}/../src/util \
1375 1.35 maya -I${X11SRCDIR.Mesa}/../src/gallium/drivers \
1376 1.18 mrg -I${X11SRCDIR.Mesa}/src/gallium/winsys
1377 1.1 mrg
1378 1.19 mrg .if ${BUILD_LLVMPIPE} == 1
1379 1.19 mrg CPPFLAGS.target.c += \
1380 1.19 mrg -DGALLIUM_LLVMPIPE
1381 1.19 mrg .endif #${BUILD_LLVMPIPE} == 1
1382 1.30 mrg
1383 1.19 mrg .if ${BUILD_I915} == 1
1384 1.19 mrg CPPFLAGS.target.c += \
1385 1.19 mrg -DGALLIUM_I915 \
1386 1.19 mrg -DGALLIUM_ILO
1387 1.19 mrg .endif
1388 1.30 mrg
1389 1.50 rjs .if ${BUILD_IRIS} == 1
1390 1.50 rjs CPPFLAGS.target.c += \
1391 1.50 rjs -DGALLIUM_IRIS
1392 1.50 rjs .endif
1393 1.50 rjs
1394 1.50 rjs .if ${BUILD_CROCUS} == 1
1395 1.50 rjs CPPFLAGS.target.c += \
1396 1.50 rjs -DGALLIUM_CROCUS
1397 1.50 rjs .endif
1398 1.50 rjs
1399 1.15 mrg .if ${BUILD_RADEON} == 1
1400 1.15 mrg CPPFLAGS.target.c += \
1401 1.15 mrg -DGALLIUM_R200 \
1402 1.19 mrg -DGALLIUM_R300 \
1403 1.19 mrg -DGALLIUM_R600 \
1404 1.19 mrg -DGALLIUM_RADEONSI
1405 1.15 mrg .endif # ${BUILD_RADEON} == 1
1406 1.15 mrg
1407 1.15 mrg .if ${BUILD_NOUVEAU} == 1
1408 1.15 mrg CPPFLAGS.target.c += \
1409 1.15 mrg -DGALLIUM_NOUVEAU
1410 1.15 mrg .endif # ${BUILD_NOUVEAU} == 1
1411 1.15 mrg
1412 1.4 joerg CWARNFLAGS.clang+= -Wno-error=constant-conversion \
1413 1.4 joerg -Wno-error=tautological-constant-out-of-range-compare \
1414 1.4 joerg -Wno-error=pointer-sign \
1415 1.4 joerg -Wno-error=switch \
1416 1.4 joerg -Wno-error=absolute-value \
1417 1.6 joerg -Wno-error=tautological-compare \
1418 1.14 joerg -Wno-error=static-in-inline \
1419 1.19 mrg -Wno-error=logical-not-parentheses \
1420 1.19 mrg -Wno-error=constant-logical-operand \
1421 1.19 mrg -Wno-error=unknown-warning-option \
1422 1.19 mrg -Wno-error=typedef-redefinition \
1423 1.19 mrg -Wno-error=enum-conversion # https://bugs.freedesktop.org/show_bug.cgi?id=109761
1424 1.4 joerg
1425 1.25 christos CWARNFLAGS+= -Wno-error=stack-protector
1426 1.25 christos
1427 1.1 mrg .include <bsd.x11.mk>
1428 1.1 mrg LIBDIR= ${X11USRLIBDIR}/modules/dri
1429 1.1 mrg
1430 1.1 mrg .for _d in ${DRIVERS}
1431 1.2 christos SYMLINKS+= gallium_dri.so ${DRIDIR}/${_d}_dri.so
1432 1.2 christos SYMLINKS+= gallium_dri.so.${SHLIB_MAJOR} ${DRIDIR}/${_d}_dri.so.${SHLIB_MAJOR}
1433 1.5 gson .if ${MKDEBUG} != "no"
1434 1.2 christos SYMLINKS+= gallium_dri.so.${SHLIB_MAJOR}.debug ${DRIDEBUGDIR}/${_d}_dri.so.${SHLIB_MAJOR}.debug
1435 1.2 christos .endif
1436 1.1 mrg .endfor
1437 1.1 mrg
1438 1.16 joerg .if ${MACHINE_ARCH} == "sparc" || ${COMMON_MACHINE_ARCH:U} == "sparc"
1439 1.16 joerg COPTS+= ${${ACTIVE_CC} == "clang":? -Wa,-Av8plus :}
1440 1.16 joerg .endif
1441 1.16 joerg
1442 1.46 mrg COPTS.u_atomic.c+= ${${ACTIVE_CC} == "gcc" && ${HAVE_GCC:U0} >= 10:? -Wno-builtin-declaration-mismatch :}
1443 1.46 mrg
1444 1.58 rin .if ${MACHINE} == "vax" && ${HAVE_GCC:U0} >= 12
1445 1.58 rin # in extract_constrain_insn, at recog.cc:2698
1446 1.57 kalvisd COPTS.sp_quad_depth_test.c+= -O0
1447 1.58 rin # in find_reloads_toplev, at reload.cc:4815
1448 1.57 kalvisd COPTS.u_format_table.c+= -O0
1449 1.57 kalvisd .endif
1450 1.57 kalvisd
1451 1.59 rin .if ${MACHINE} == "vax" && ${HAVE_GCC:U0} == 10
1452 1.59 rin # in fixup_reorder_chain, at cfgrtl.c:3985
1453 1.59 rin COPTS.nir_builtin_builder.c+= -O0
1454 1.59 rin # in fixup_reorder_chain, at cfgrtl.c:3985
1455 1.59 rin COPTS.nir_lower_int64.c+= -O0
1456 1.59 rin .endif
1457 1.59 rin
1458 1.56 rin .if ${MACHINE_CPU} == "m68k" && ${HAVE_GCC:U0} == 12
1459 1.56 rin COPTS.vl_bicubic_filter.c+= -O1
1460 1.56 rin .endif
1461 1.56 rin
1462 1.1 mrg .include <bsd.lib.mk>
1463 1.3 christos # Don't regenerate c files
1464 1.3 christos .y.c:
1465