xref: /aosp_15_r20/external/mesa3d/src/intel/ds/meson.build (revision 6104692788411f58d303aa86923a9ff6ecaded22)
1# Copyright © 2020-2021 Collabora, Ltd.
2# Author: Antonio Caggiano <[email protected]>
3# SPDX-License-Identifier: MIT
4
5intel_tracepoint_files = custom_target(
6  'intel_tracepoints.[ch]',
7  input : 'intel_tracepoints.py',
8  output : ['intel_tracepoints.h',
9            'intel_tracepoints_perfetto.h',
10            'intel_tracepoints.c'],
11  command : [
12    prog_python, '@INPUT@',
13    '-p', join_paths(dir_source_root, 'src/util/perf/'),
14    '--utrace-hdr', '@OUTPUT0@',
15    '--perfetto-hdr', '@OUTPUT1@',
16    '--utrace-src', '@OUTPUT2@',
17  ],
18  depend_files : u_trace_py,
19)
20
21libintel_driver_ds_deps = [
22  idep_mesautil,
23  idep_nir_headers,
24]
25
26if with_perfetto
27  libintel_driver_ds_deps += dep_perfetto
28endif
29
30idep_intel_driver_ds_headers = declare_dependency(
31  sources : intel_tracepoint_files[0],
32  dependencies: [idep_intel_dev_wa, idep_intel_dev_info_gen],
33  include_directories : [inc_include, inc_intel],
34)
35
36libintel_driver_ds = static_library(
37  'intel-driver-ds',
38  sources : ['intel_driver_ds.cc', intel_tracepoint_files],
39  include_directories : [inc_src, inc_include, inc_intel],
40  link_with : [libintel_perf, libintel_common],
41  dependencies : [libintel_driver_ds_deps, idep_intel_dev, idep_intel_blorp],
42  gnu_symbol_visibility : 'hidden',
43)
44
45idep_intel_driver_ds = declare_dependency(
46  link_with : libintel_driver_ds,
47  include_directories : [inc_include, inc_intel],
48  dependencies : idep_intel_driver_ds_headers,
49)
50
51if with_perfetto and (with_datasources.contains('intel') or with_datasources.contains('auto'))
52  pps_intel_sources = files(
53    'intel_pps_perf.cc',
54    'intel_pps_driver.cc',
55  )
56
57  pps_intel_lib = static_library(
58    'pps-intel',
59    sources: pps_intel_sources,
60    include_directories: [inc_tool, inc_src, inc_include, inc_intel],
61    link_with: [libintel_perf, libintel_common],
62    dependencies: [dep_perfetto, dep_libdrm, idep_mesautil, idep_intel_dev],
63  )
64
65  compile_args_pps_intel = ['-DPPS_INTEL']
66
67  pps_intel_dep = declare_dependency(
68    link_with: pps_intel_lib,
69    include_directories: [inc_tool, inc_include],
70    compile_args: compile_args_pps_intel,
71  )
72
73  pps_datasources += pps_intel_dep
74  if not with_datasources.contains('intel')
75    with_datasources += 'intel'
76  endif
77endif
78