xref: /aosp_15_r20/external/mesa3d/src/gallium/drivers/r600/meson.build (revision 6104692788411f58d303aa86923a9ff6ecaded22)
1*61046927SAndroid Build Coastguard Worker# Copyright © 2017 Intel Corporation
2*61046927SAndroid Build Coastguard Worker# SPDX-License-Identifier: MIT
3*61046927SAndroid Build Coastguard Worker
4*61046927SAndroid Build Coastguard Workerfiles_r600 = files(
5*61046927SAndroid Build Coastguard Worker  'r600d_common.h',
6*61046927SAndroid Build Coastguard Worker  'compute_memory_pool.c',
7*61046927SAndroid Build Coastguard Worker  'compute_memory_pool.h',
8*61046927SAndroid Build Coastguard Worker  'eg_asm.c',
9*61046927SAndroid Build Coastguard Worker  'eg_debug.c',
10*61046927SAndroid Build Coastguard Worker  'eg_sq.h',
11*61046927SAndroid Build Coastguard Worker  'evergreen_compute.c',
12*61046927SAndroid Build Coastguard Worker  'evergreen_compute.h',
13*61046927SAndroid Build Coastguard Worker  'evergreen_compute_internal.h',
14*61046927SAndroid Build Coastguard Worker  'evergreend.h',
15*61046927SAndroid Build Coastguard Worker  'evergreen_hw_context.c',
16*61046927SAndroid Build Coastguard Worker  'evergreen_state.c',
17*61046927SAndroid Build Coastguard Worker  'r600_asm.c',
18*61046927SAndroid Build Coastguard Worker  'r600_asm.h',
19*61046927SAndroid Build Coastguard Worker  'r600_blit.c',
20*61046927SAndroid Build Coastguard Worker  'r600d.h',
21*61046927SAndroid Build Coastguard Worker  'r600_dump.c',
22*61046927SAndroid Build Coastguard Worker  'r600_dump.h',
23*61046927SAndroid Build Coastguard Worker  'r600_formats.h',
24*61046927SAndroid Build Coastguard Worker  'r600_hw_context.c',
25*61046927SAndroid Build Coastguard Worker  'r600_isa.c',
26*61046927SAndroid Build Coastguard Worker  'r600_isa.h',
27*61046927SAndroid Build Coastguard Worker  'r600_opcodes.h',
28*61046927SAndroid Build Coastguard Worker  'r600_pipe.c',
29*61046927SAndroid Build Coastguard Worker  'r600_pipe.h',
30*61046927SAndroid Build Coastguard Worker  'r600_public.h',
31*61046927SAndroid Build Coastguard Worker  'r600_sfn.cpp',
32*61046927SAndroid Build Coastguard Worker  'r600_sfn.h',
33*61046927SAndroid Build Coastguard Worker  'r600_shader.c',
34*61046927SAndroid Build Coastguard Worker  'r600_shader.h',
35*61046927SAndroid Build Coastguard Worker  'r600_shader_common.h',
36*61046927SAndroid Build Coastguard Worker  'r600_sq.h',
37*61046927SAndroid Build Coastguard Worker  'r600_state.c',
38*61046927SAndroid Build Coastguard Worker  'r600_state_common.c',
39*61046927SAndroid Build Coastguard Worker  'r600_uvd.c',
40*61046927SAndroid Build Coastguard Worker  'r700_asm.c',
41*61046927SAndroid Build Coastguard Worker  'r700_sq.h',
42*61046927SAndroid Build Coastguard Worker  'cayman_msaa.c',
43*61046927SAndroid Build Coastguard Worker  'r600_buffer_common.c',
44*61046927SAndroid Build Coastguard Worker  'r600_cs.h',
45*61046927SAndroid Build Coastguard Worker  'r600_gpu_load.c',
46*61046927SAndroid Build Coastguard Worker  'r600_perfcounter.c',
47*61046927SAndroid Build Coastguard Worker  'r600_pipe_common.c',
48*61046927SAndroid Build Coastguard Worker  'r600_pipe_common.h',
49*61046927SAndroid Build Coastguard Worker  'r600_query.c',
50*61046927SAndroid Build Coastguard Worker  'r600_query.h',
51*61046927SAndroid Build Coastguard Worker  'r600_streamout.c',
52*61046927SAndroid Build Coastguard Worker  'r600_test_dma.c',
53*61046927SAndroid Build Coastguard Worker  'r600_texture.c',
54*61046927SAndroid Build Coastguard Worker  'r600_viewport.c',
55*61046927SAndroid Build Coastguard Worker  'radeon_uvd.c',
56*61046927SAndroid Build Coastguard Worker  'radeon_uvd.h',
57*61046927SAndroid Build Coastguard Worker  'radeon_vce.c',
58*61046927SAndroid Build Coastguard Worker  'radeon_vce.h',
59*61046927SAndroid Build Coastguard Worker  'radeon_video.c',
60*61046927SAndroid Build Coastguard Worker  'radeon_video.h',
61*61046927SAndroid Build Coastguard Worker  'sfn/sfn_alu_defines.cpp',
62*61046927SAndroid Build Coastguard Worker  'sfn/sfn_alu_defines.h',
63*61046927SAndroid Build Coastguard Worker  'sfn/sfn_alu_readport_validation.cpp',
64*61046927SAndroid Build Coastguard Worker  'sfn/sfn_alu_readport_validation.h',
65*61046927SAndroid Build Coastguard Worker  'sfn/sfn_assembler.cpp',
66*61046927SAndroid Build Coastguard Worker  'sfn/sfn_assembler.h',
67*61046927SAndroid Build Coastguard Worker  'sfn/sfn_callstack.cpp',
68*61046927SAndroid Build Coastguard Worker  'sfn/sfn_callstack.h',
69*61046927SAndroid Build Coastguard Worker  'sfn/sfn_conditionaljumptracker.cpp',
70*61046927SAndroid Build Coastguard Worker  'sfn/sfn_conditionaljumptracker.h',
71*61046927SAndroid Build Coastguard Worker  'sfn/sfn_defines.h',
72*61046927SAndroid Build Coastguard Worker  'sfn/sfn_debug.cpp',
73*61046927SAndroid Build Coastguard Worker  'sfn/sfn_debug.h',
74*61046927SAndroid Build Coastguard Worker  'sfn/sfn_instr.cpp',
75*61046927SAndroid Build Coastguard Worker  'sfn/sfn_instr.h',
76*61046927SAndroid Build Coastguard Worker  'sfn/sfn_instr_alu.cpp',
77*61046927SAndroid Build Coastguard Worker  'sfn/sfn_instr_alu.h',
78*61046927SAndroid Build Coastguard Worker  'sfn/sfn_instr_alugroup.cpp',
79*61046927SAndroid Build Coastguard Worker  'sfn/sfn_instr_alugroup.h',
80*61046927SAndroid Build Coastguard Worker  'sfn/sfn_instr_controlflow.cpp',
81*61046927SAndroid Build Coastguard Worker  'sfn/sfn_instr_controlflow.h',
82*61046927SAndroid Build Coastguard Worker  'sfn/sfn_instr_export.cpp',
83*61046927SAndroid Build Coastguard Worker  'sfn/sfn_instr_export.h',
84*61046927SAndroid Build Coastguard Worker  'sfn/sfn_instr_fetch.cpp',
85*61046927SAndroid Build Coastguard Worker  'sfn/sfn_instr_fetch.h',
86*61046927SAndroid Build Coastguard Worker  'sfn/sfn_instr_mem.cpp',
87*61046927SAndroid Build Coastguard Worker  'sfn/sfn_instr_mem.h',
88*61046927SAndroid Build Coastguard Worker  'sfn/sfn_instr_lds.cpp',
89*61046927SAndroid Build Coastguard Worker  'sfn/sfn_instr_lds.h',
90*61046927SAndroid Build Coastguard Worker  'sfn/sfn_instr_tex.cpp',
91*61046927SAndroid Build Coastguard Worker  'sfn/sfn_instr_tex.h',
92*61046927SAndroid Build Coastguard Worker  'sfn/sfn_instrfactory.cpp',
93*61046927SAndroid Build Coastguard Worker  'sfn/sfn_instrfactory.h',
94*61046927SAndroid Build Coastguard Worker  'sfn/sfn_liverangeevaluator.cpp',
95*61046927SAndroid Build Coastguard Worker  'sfn/sfn_liverangeevaluator.h',
96*61046927SAndroid Build Coastguard Worker  'sfn/sfn_liverangeevaluator_helpers.cpp',
97*61046927SAndroid Build Coastguard Worker  'sfn/sfn_liverangeevaluator_helpers.h',
98*61046927SAndroid Build Coastguard Worker  'sfn/sfn_memorypool.cpp',
99*61046927SAndroid Build Coastguard Worker  'sfn/sfn_memorypool.h',
100*61046927SAndroid Build Coastguard Worker  'sfn/sfn_nir.cpp',
101*61046927SAndroid Build Coastguard Worker  'sfn/sfn_nir.h',
102*61046927SAndroid Build Coastguard Worker  'sfn/sfn_nir_legalize_image_load_store.cpp',
103*61046927SAndroid Build Coastguard Worker  'sfn/sfn_nir_lower_64bit.cpp',
104*61046927SAndroid Build Coastguard Worker  'sfn/sfn_nir_lower_alu.cpp',
105*61046927SAndroid Build Coastguard Worker  'sfn/sfn_nir_lower_alu.h',
106*61046927SAndroid Build Coastguard Worker  'sfn/sfn_nir_lower_tex.cpp',
107*61046927SAndroid Build Coastguard Worker  'sfn/sfn_nir_lower_tex.h',
108*61046927SAndroid Build Coastguard Worker  'sfn/sfn_nir_lower_fs_out_to_vector.cpp',
109*61046927SAndroid Build Coastguard Worker  'sfn/sfn_nir_lower_fs_out_to_vector.h',
110*61046927SAndroid Build Coastguard Worker  'sfn/sfn_nir_lower_tess_io.cpp',
111*61046927SAndroid Build Coastguard Worker  'sfn/sfn_nir_vectorize_vs_inputs.c',
112*61046927SAndroid Build Coastguard Worker  'sfn/sfn_optimizer.cpp',
113*61046927SAndroid Build Coastguard Worker  'sfn/sfn_peephole.cpp',
114*61046927SAndroid Build Coastguard Worker  'sfn/sfn_ra.cpp',
115*61046927SAndroid Build Coastguard Worker  'sfn/sfn_ra.h',
116*61046927SAndroid Build Coastguard Worker  'sfn/sfn_scheduler.cpp',
117*61046927SAndroid Build Coastguard Worker  'sfn/sfn_scheduler.h',
118*61046927SAndroid Build Coastguard Worker  'sfn/sfn_shader.cpp',
119*61046927SAndroid Build Coastguard Worker  'sfn/sfn_shader.h',
120*61046927SAndroid Build Coastguard Worker  'sfn/sfn_shader_cs.cpp',
121*61046927SAndroid Build Coastguard Worker  'sfn/sfn_shader_cs.h',
122*61046927SAndroid Build Coastguard Worker  'sfn/sfn_shader_fs.cpp',
123*61046927SAndroid Build Coastguard Worker  'sfn/sfn_shader_fs.h',
124*61046927SAndroid Build Coastguard Worker  'sfn/sfn_shader_gs.cpp',
125*61046927SAndroid Build Coastguard Worker  'sfn/sfn_shader_gs.h',
126*61046927SAndroid Build Coastguard Worker  'sfn/sfn_shader_tess.cpp',
127*61046927SAndroid Build Coastguard Worker  'sfn/sfn_shader_tess.h',
128*61046927SAndroid Build Coastguard Worker  'sfn/sfn_shader_vs.cpp',
129*61046927SAndroid Build Coastguard Worker  'sfn/sfn_shader_vs.h',
130*61046927SAndroid Build Coastguard Worker  'sfn/sfn_split_address_loads.cpp',
131*61046927SAndroid Build Coastguard Worker  'sfn/sfn_split_address_loads.h',
132*61046927SAndroid Build Coastguard Worker  'sfn/sfn_valuefactory.cpp',
133*61046927SAndroid Build Coastguard Worker  'sfn/sfn_valuefactory.h',
134*61046927SAndroid Build Coastguard Worker  'sfn/sfn_virtualvalues.cpp',
135*61046927SAndroid Build Coastguard Worker  'sfn/sfn_virtualvalues.h',
136*61046927SAndroid Build Coastguard Worker  )
137*61046927SAndroid Build Coastguard Worker
138*61046927SAndroid Build Coastguard Workeregd_tables_h = custom_target(
139*61046927SAndroid Build Coastguard Worker  'egd_tables.h',
140*61046927SAndroid Build Coastguard Worker  input : ['egd_tables.py', 'evergreend.h'],
141*61046927SAndroid Build Coastguard Worker  output : 'egd_tables.h',
142*61046927SAndroid Build Coastguard Worker  command : [prog_python, '@INPUT@'],
143*61046927SAndroid Build Coastguard Worker  capture : true,
144*61046927SAndroid Build Coastguard Worker)
145*61046927SAndroid Build Coastguard Worker
146*61046927SAndroid Build Coastguard Workerr600_c_args = []
147*61046927SAndroid Build Coastguard Workerif with_gallium_clover
148*61046927SAndroid Build Coastguard Worker  if dep_elf.found()
149*61046927SAndroid Build Coastguard Worker    r600_c_args += '-DHAVE_OPENCL'
150*61046927SAndroid Build Coastguard Worker  else
151*61046927SAndroid Build Coastguard Worker    warning('r600 requires libelf to support opencl.')
152*61046927SAndroid Build Coastguard Worker  endif
153*61046927SAndroid Build Coastguard Workerendif
154*61046927SAndroid Build Coastguard Worker
155*61046927SAndroid Build Coastguard Workerr600_cpp_args = []
156*61046927SAndroid Build Coastguard Workerif cpp.has_type('std::pmr::monotonic_buffer_resource',
157*61046927SAndroid Build Coastguard Worker                 prefix : '#include <memory_resource>')
158*61046927SAndroid Build Coastguard Worker   r600_cpp_args += '-DHAVE_MEMORY_RESOURCE'
159*61046927SAndroid Build Coastguard Workerendif
160*61046927SAndroid Build Coastguard Worker
161*61046927SAndroid Build Coastguard Workerlibr600 = static_library(
162*61046927SAndroid Build Coastguard Worker  'r600',
163*61046927SAndroid Build Coastguard Worker  [files_r600, egd_tables_h, sha1_h],
164*61046927SAndroid Build Coastguard Worker  c_args : [r600_c_args, '-Wstrict-overflow=0'],
165*61046927SAndroid Build Coastguard Worker  cpp_args: r600_cpp_args,
166*61046927SAndroid Build Coastguard Worker  gnu_symbol_visibility : 'hidden',
167*61046927SAndroid Build Coastguard Worker  include_directories : [
168*61046927SAndroid Build Coastguard Worker    inc_src, inc_mapi, inc_mesa, inc_include, inc_gallium, inc_gallium_aux, inc_amd_common,
169*61046927SAndroid Build Coastguard Worker    inc_gallium_drivers,
170*61046927SAndroid Build Coastguard Worker  ],
171*61046927SAndroid Build Coastguard Worker  dependencies: [dep_libdrm_radeon, dep_elf, dep_llvm, idep_nir, idep_nir_headers, idep_mesautil],
172*61046927SAndroid Build Coastguard Worker)
173*61046927SAndroid Build Coastguard Worker
174*61046927SAndroid Build Coastguard Workerdriver_r600 = declare_dependency(
175*61046927SAndroid Build Coastguard Worker  compile_args : '-DGALLIUM_R600',
176*61046927SAndroid Build Coastguard Worker  link_with : [libr600, libmesa, libradeonwinsys],
177*61046927SAndroid Build Coastguard Worker)
178*61046927SAndroid Build Coastguard Worker
179*61046927SAndroid Build Coastguard Workerif with_tests
180*61046927SAndroid Build Coastguard Worker  subdir('sfn/tests')
181*61046927SAndroid Build Coastguard Workerendif
182*61046927SAndroid Build Coastguard Worker
183*61046927SAndroid Build Coastguard Worker
184