xref: /aosp_15_r20/external/mesa3d/src/intel/decoder/meson.build (revision 6104692788411f58d303aa86923a9ff6ecaded22)
1# Copyright © 2017 Intel Corporation
2# SPDX-License-Identifier: MIT
3
4libintel_decoder_files = files(
5  'intel_decoder.h',
6  )
7
8libintel_decoder_deps = [
9  idep_intel_dev
10]
11
12if not dep_expat.found()
13  libintel_decoder_files += files(
14    'intel_batch_decoder_stub.c',
15  )
16else
17  libintel_decoder_deps += dep_expat
18  libintel_decoder_files += files(
19    'intel_decoder.c',
20    'intel_batch_decoder.c',
21  )
22endif
23
24libintel_decoder_brw = static_library(
25  'intel_decoder_brw',
26  [libintel_decoder_files, 'intel_batch_decoder_brw.c', genX_xml_h, sha1_h],
27  include_directories : [inc_include, inc_src, inc_intel],
28  c_args : [no_override_init_args, sse2_args],
29  gnu_symbol_visibility : 'hidden',
30  dependencies : libintel_decoder_deps,
31  build_by_default : false,
32)
33
34idep_intel_decoder_brw = declare_dependency(
35  link_with : [libintel_decoder_brw],
36  dependencies : libintel_decoder_deps,
37)
38
39libintel_decoder_elk = static_library(
40  'intel_decoder_elk',
41  [libintel_decoder_files, 'intel_batch_decoder_elk.c', genX_xml_h, sha1_h],
42  include_directories : [inc_include, inc_src, inc_intel],
43  c_args : [no_override_init_args, sse2_args],
44  gnu_symbol_visibility : 'hidden',
45  dependencies : libintel_decoder_deps,
46  build_by_default : false,
47)
48
49idep_intel_decoder_elk = declare_dependency(
50  link_with : [libintel_decoder_elk],
51  dependencies : libintel_decoder_deps,
52)
53
54if with_tests and not with_platform_android
55  gentest_xml = 'tests/gentest.xml'
56  _name = 'gentest_pack.h'
57  gentest_pack = custom_target(
58    _name,
59    input : [gen_pack_header_py, gentest_xml],
60    output : _name,
61    command : [prog_python, '@INPUT@'],
62    capture : true,
63    depend_files: gen_pack_header_deps
64  )
65
66  genxml_path = join_paths(meson.current_source_dir(),
67                           '@0@'.format(gentest_xml))
68
69  test(
70    'genxml_test',
71    executable(
72      'genxml_test',
73      ['tests/genxml_test.c', gentest_pack],
74      include_directories : [
75        inc_include,
76        inc_src,
77        inc_intel
78      ],
79      dependencies : [
80        idep_libintel_common,
81        idep_intel_decoder_brw,
82        idep_intel_decoder_elk,
83        idep_mesautil,
84        idep_intel_dev,
85        idep_genxml,
86      ],
87      c_args : [
88        '-DGENXML_DIR="@0@"'.format(fs.parent(genxml_path)),
89        '-DGENXML_FILE="@0@"'.format(fs.name(genxml_path)),
90      ],
91    ),
92    args : ['-quiet'],
93    suite : ['intel'],
94  )
95endif
96