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