• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
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  )
16  libintel_decoder_brw_files = files()
17  libintel_decoder_elk_files = files()
18else
19  libintel_decoder_deps += dep_expat
20  libintel_decoder_files += files(
21    'intel_decoder.c',
22    'intel_batch_decoder.c',
23  )
24  libintel_decoder_brw_files = files('intel_batch_decoder_brw.c')
25  libintel_decoder_elk_files = files('intel_batch_decoder_elk.c')
26endif
27
28libintel_decoder = static_library(
29  'intel_decoder',
30  [libintel_decoder_files, genX_xml_h, sha1_h],
31  include_directories : [inc_include, inc_src, inc_intel],
32  c_args : [no_override_init_args, sse2_args],
33  gnu_symbol_visibility : 'hidden',
34  dependencies : libintel_decoder_deps,
35  build_by_default : false,
36)
37
38idep_intel_decoder = declare_dependency(
39  link_with : [libintel_decoder],
40  dependencies : libintel_decoder_deps,
41)
42
43libintel_decoder_brw = static_library(
44  'intel_decoder_brw',
45  [libintel_decoder_brw_files, genX_xml_h, sha1_h],
46  include_directories : [inc_include, inc_src, inc_intel],
47  c_args : [no_override_init_args, sse2_args],
48  gnu_symbol_visibility : 'hidden',
49  dependencies : idep_intel_decoder,
50  build_by_default : false,
51)
52
53idep_intel_decoder_brw = declare_dependency(
54  link_with : [libintel_decoder_brw],
55  dependencies : idep_intel_decoder,
56)
57
58libintel_decoder_elk = static_library(
59  'intel_decoder_elk',
60  [libintel_decoder_elk_files, genX_xml_h, sha1_h],
61  include_directories : [inc_include, inc_src, inc_intel],
62  c_args : [no_override_init_args, sse2_args],
63  gnu_symbol_visibility : 'hidden',
64  dependencies : idep_intel_decoder,
65  build_by_default : false,
66)
67
68idep_intel_decoder_elk = declare_dependency(
69  link_with : [libintel_decoder_elk],
70  dependencies : idep_intel_decoder,
71)
72
73if with_tests and not with_platform_android
74  gentest_xml = 'tests/gentest.xml'
75  _name = 'gentest_pack.h'
76  gentest_pack = custom_target(
77    _name,
78    input : [gen_pack_header_py, gentest_xml],
79    output : _name,
80    command : [prog_python, '@INPUT@'],
81    capture : true,
82    depend_files: gen_pack_header_deps
83  )
84
85  genxml_path = join_paths(meson.current_source_dir(),
86                           '@0@'.format(gentest_xml))
87
88  test(
89    'genxml_test',
90    executable(
91      'genxml_test',
92      ['tests/genxml_test.c', gentest_pack],
93      include_directories : [
94        inc_include,
95        inc_src,
96        inc_intel
97      ],
98      dependencies : [
99        idep_libintel_common,
100        idep_intel_decoder_brw,
101        idep_intel_decoder_elk,
102        idep_mesautil,
103        idep_intel_dev,
104        idep_genxml,
105      ],
106      c_args : [
107        '-DGENXML_DIR="@0@"'.format(fs.parent(genxml_path)),
108        '-DGENXML_FILE="@0@"'.format(fs.name(genxml_path)),
109      ],
110    ),
111    args : ['-quiet'],
112    suite : ['intel'],
113  )
114endif
115