xref: /aosp_15_r20/external/mesa3d/src/gallium/drivers/crocus/meson.build (revision 6104692788411f58d303aa86923a9ff6ecaded22)
1# Copyright © 2017-2019 Intel Corporation
2# SPDX-License-Identifier: MIT
3
4files_libcrocus = files(
5  'gen4_blorp_exec.h',
6  'driinfo_crocus.h',
7  'crocus_batch.c',
8  'crocus_batch.h',
9  'crocus_blit.c',
10  'crocus_bufmgr.c',
11  'crocus_bufmgr.h',
12  'crocus_clear.c',
13  'crocus_context.c',
14  'crocus_context.h',
15  'crocus_draw.c',
16  'crocus_fence.c',
17  'crocus_fence.h',
18  'crocus_fine_fence.c',
19  'crocus_fine_fence.h',
20  'crocus_formats.c',
21  'crocus_genx_macros.h',
22  'crocus_genx_protos.h',
23  'crocus_monitor.c',
24  'crocus_perf.c',
25  'crocus_perf.h',
26  'crocus_performance_query.c',
27  'crocus_pipe.h',
28  'crocus_pipe_control.c',
29  'crocus_program.c',
30  'crocus_program_cache.c',
31  'crocus_resolve.c',
32  'crocus_resource.c',
33  'crocus_resource.h',
34  'crocus_screen.c',
35  'crocus_screen.h',
36  'crocus_disk_cache.c',
37)
38
39crocus_per_hw_ver_libs = []
40foreach v : ['40', '45', '50', '60', '70', '75', '80']
41  crocus_per_hw_ver_libs += static_library(
42    'crocus_per_hw_ver@0@'.format(v),
43    ['crocus_blorp.c', 'crocus_query.c', 'crocus_state.c', 'crocus_blt.c', gen_xml_pack],
44    include_directories : [inc_include, inc_src, inc_mapi, inc_mesa, inc_gallium, inc_gallium_aux, inc_intel],
45    c_args : [
46      no_override_init_args, sse2_args,
47      '-DGFX_VERx10=@0@'.format(v),
48    ],
49    gnu_symbol_visibility : 'hidden',
50    dependencies : [dep_libdrm, dep_valgrind, idep_mesautil, idep_genxml, idep_nir_headers, idep_intel_dev, idep_intel_blorp_elk],
51  )
52endforeach
53
54libcrocus = static_library(
55  'crocus',
56  [files_libcrocus, gen_xml_pack],
57  include_directories : [
58    inc_src, inc_include, inc_gallium, inc_gallium_aux, inc_intel,
59    inc_gallium_drivers,
60    # these should not be necessary, but main/macros.h...
61    inc_mesa, inc_mapi
62  ],
63  c_args : [sse2_args],
64  cpp_args : [sse2_args],
65  gnu_symbol_visibility : 'hidden',
66  dependencies : [
67    dep_libdrm, dep_valgrind, idep_genxml, idep_mesautil,
68    idep_libintel_common, idep_nir_headers,
69    idep_intel_dev, idep_intel_blorp_elk, idep_intel_decoder_elk,
70    idep_intel_compiler_elk,
71  ],
72  link_with : [
73    crocus_per_hw_ver_libs, libisl,
74    libintel_perf
75  ],
76)
77
78driver_crocus = declare_dependency(
79  compile_args : '-DGALLIUM_CROCUS',
80  link_with : [libcrocus, libcrocuswinsys],
81)
82