xref: /third_party/mesa3d/src/tool/pps/meson.build (revision bf215546)
1bf215546Sopenharmony_ci# Copyright © 2020-2021 Collabora, Ltd.
2bf215546Sopenharmony_ci# Author: Antonio Caggiano <antonio.caggiano@collabora.com>
3bf215546Sopenharmony_ci#
4bf215546Sopenharmony_ci# SPDX-License-Identifier: MIT
5bf215546Sopenharmony_ci
6bf215546Sopenharmony_cipps_sources = [
7bf215546Sopenharmony_ci  'pps.cc',
8bf215546Sopenharmony_ci  'pps_device.cc',
9bf215546Sopenharmony_ci  'pps_driver.cc',
10bf215546Sopenharmony_ci  'pps_counter.cc',
11bf215546Sopenharmony_ci]
12bf215546Sopenharmony_ci
13bf215546Sopenharmony_ciinclude_pps = include_directories('../')
14bf215546Sopenharmony_ci
15bf215546Sopenharmony_cidep_drm = dependency('libdrm')
16bf215546Sopenharmony_cipps_deps = [dep_drm, dep_perfetto]
17bf215546Sopenharmony_cipps_deps += pps_datasources
18bf215546Sopenharmony_ci
19bf215546Sopenharmony_cilib_pps = static_library(
20bf215546Sopenharmony_ci  'pps',
21bf215546Sopenharmony_ci  sources: pps_sources,
22bf215546Sopenharmony_ci  include_directories: [include_pps, inc_src, pps_includes],
23bf215546Sopenharmony_ci  dependencies: pps_deps,
24bf215546Sopenharmony_ci  override_options: ['cpp_std=c++17'],
25bf215546Sopenharmony_ci)
26bf215546Sopenharmony_ci
27bf215546Sopenharmony_cidep_pps = declare_dependency(
28bf215546Sopenharmony_ci  link_with: lib_pps,
29bf215546Sopenharmony_ci  include_directories: [include_pps, inc_src]
30bf215546Sopenharmony_ci)
31bf215546Sopenharmony_ci
32bf215546Sopenharmony_ciproducer_sources = [
33bf215546Sopenharmony_ci  'pps_datasource.cc',
34bf215546Sopenharmony_ci  'pps_producer.cc'
35bf215546Sopenharmony_ci]
36bf215546Sopenharmony_ci
37bf215546Sopenharmony_ciexecutable(
38bf215546Sopenharmony_ci  'pps-producer',
39bf215546Sopenharmony_ci  sources: producer_sources,
40bf215546Sopenharmony_ci  include_directories: [include_pps, inc_src],
41bf215546Sopenharmony_ci  dependencies: [dep_pps, dep_perfetto],
42bf215546Sopenharmony_ci  override_options: ['cpp_std=c++17'],
43bf215546Sopenharmony_ci  install: true
44bf215546Sopenharmony_ci)
45bf215546Sopenharmony_ci
46bf215546Sopenharmony_ciconfig_sources = [
47bf215546Sopenharmony_ci  'pps_config.cc'
48bf215546Sopenharmony_ci]
49bf215546Sopenharmony_ci
50bf215546Sopenharmony_cidep_docopt = dependency('docopt', required: false)
51bf215546Sopenharmony_ci
52bf215546Sopenharmony_ciif dep_docopt.found()
53bf215546Sopenharmony_ci  executable(
54bf215546Sopenharmony_ci    'pps-config',
55bf215546Sopenharmony_ci    sources: config_sources,
56bf215546Sopenharmony_ci    include_directories: [include_pps, inc_src],
57bf215546Sopenharmony_ci    dependencies: [dep_pps, dep_docopt],
58bf215546Sopenharmony_ci    override_options: ['cpp_std=c++17'],
59bf215546Sopenharmony_ci    install: true
60bf215546Sopenharmony_ci  )
61bf215546Sopenharmony_ciendif
62