~mmach/netext73/mesa-haswell

« back to all changes in this revision

Viewing changes to src/amd/common/meson.build

  • Committer: mmach
  • Date: 2022-09-22 19:56:13 UTC
  • Revision ID: netbit73@gmail.com-20220922195613-wtik9mmy20tmor0i
2022-09-22 21:17:09

Show diffs side-by-side

added added

removed removed

Lines of Context:
1
 
# Copyright © 2017 Intel Corporation
2
 
 
3
 
# Permission is hereby granted, free of charge, to any person obtaining a copy
4
 
# of this software and associated documentation files (the "Software"), to deal
5
 
# in the Software without restriction, including without limitation the rights
6
 
# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
7
 
# copies of the Software, and to permit persons to whom the Software is
8
 
# furnished to do so, subject to the following conditions:
9
 
 
10
 
# The above copyright notice and this permission notice shall be included in
11
 
# all copies or substantial portions of the Software.
12
 
 
13
 
# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
14
 
# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
15
 
# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
16
 
# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
17
 
# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
18
 
# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
19
 
# SOFTWARE.
20
 
 
21
 
amd_json_files = [
22
 
  # Generated:
23
 
  '../registers/gfx6.json',
24
 
  '../registers/gfx7.json',
25
 
  '../registers/gfx8.json',
26
 
  '../registers/gfx81.json',
27
 
  '../registers/gfx9.json',
28
 
  '../registers/gfx10.json',
29
 
  '../registers/gfx103.json',
30
 
 
31
 
  # Manually written:
32
 
  '../registers/pkt3.json',
33
 
  '../registers/gfx10-rsrc.json',
34
 
  '../registers/registers-manually-defined.json',
35
 
]
36
 
 
37
 
sid_tables_h = custom_target(
38
 
  'sid_tables_h',
39
 
  input : ['sid_tables.py', 'sid.h'] + amd_json_files,
40
 
  output : 'sid_tables.h',
41
 
  command : [prog_python, '@INPUT@'],
42
 
  capture : true,
43
 
)
44
 
 
45
 
amdgfxregs_h = custom_target(
46
 
  'amdgfxregs_h',
47
 
  input : ['../registers/makeregheader.py'] + amd_json_files,
48
 
  output : 'amdgfxregs.h',
49
 
  command : [prog_python, '@INPUT@', '--sort', 'address', '--guard', 'AMDGFXREGS_H'],
50
 
  capture : true,
51
 
)
52
 
 
53
 
gfx10_format_table_c = custom_target(
54
 
  'gfx10_format_table.c',
55
 
  input : files(
56
 
    'gfx10_format_table.py',
57
 
    '../../util/format/u_format.csv', '../registers/gfx10-rsrc.json'
58
 
  ),
59
 
  output : 'gfx10_format_table.c',
60
 
  command : [prog_python, '@INPUT@'],
61
 
  capture : true,
62
 
  depend_files : ['../registers/regdb.py']
63
 
)
64
 
 
65
 
amd_common_files = files(
66
 
  'ac_binary.c',
67
 
  'ac_binary.h',
68
 
  'ac_shader_args.c',
69
 
  'ac_shader_args.h',
70
 
  'ac_shader_util.c',
71
 
  'ac_shader_util.h',
72
 
  'ac_gpu_info.c',
73
 
  'ac_gpu_info.h',
74
 
  'ac_rtld.c',
75
 
  'ac_rtld.h',
76
 
  'ac_surface.c',
77
 
  'ac_surface.h',
78
 
  'ac_debug.c',
79
 
  'ac_debug.h',
80
 
  'ac_shadowed_regs.c',
81
 
  'ac_shadowed_regs.h',
82
 
  'ac_spm.c',
83
 
  'ac_spm.h',
84
 
  'ac_sqtt.c',
85
 
  'ac_sqtt.h',
86
 
  'ac_rgp.c',
87
 
  'ac_rgp.h',
88
 
  'ac_msgpack.c',
89
 
  'ac_msgpack.h',
90
 
  'ac_rgp_elf_object_pack.c',
91
 
  'ac_nir.c',
92
 
  'ac_nir.h',
93
 
  'ac_nir_cull.c',
94
 
  'ac_nir_lower_esgs_io_to_mem.c',
95
 
  'ac_nir_lower_global_access.c',
96
 
  'ac_nir_lower_tess_io_to_mem.c',
97
 
  'ac_nir_lower_ngg.c',
98
 
  'amd_family.c',
99
 
  'ac_perfcounter.c',
100
 
  'ac_perfcounter.h',
101
 
)
102
 
 
103
 
libamd_common = static_library(
104
 
  'amd_common',
105
 
  [amd_common_files, sid_tables_h, amdgfxregs_h, gfx10_format_table_c],
106
 
  include_directories : [
107
 
    inc_include, inc_src, inc_mapi, inc_mesa, inc_gallium, inc_gallium_aux, inc_compiler, inc_mapi, inc_amd,
108
 
  ],
109
 
  dependencies : [
110
 
    dep_thread, dep_elf, dep_libdrm_amdgpu, dep_valgrind,
111
 
    idep_mesautil, idep_nir_headers, idep_nir
112
 
  ],
113
 
  gnu_symbol_visibility : 'hidden',
114
 
  c_args : ['-DADDR_FASTCALL=']
115
 
)
116
 
 
117
 
idep_amdgfxregs_h = declare_dependency(sources : [amdgfxregs_h])
118
 
 
119
 
 
120
 
if with_tests and not with_platform_windows
121
 
  test(
122
 
    'ac_surface_modifier_test',
123
 
    executable(
124
 
      'ac_surface_modifier_test',
125
 
      ['ac_surface_modifier_test.c'],
126
 
      link_with: [libamd_common, libamdgpu_addrlib],
127
 
      include_directories : [
128
 
        inc_amd, inc_gallium, inc_include, inc_src,
129
 
      ],
130
 
      dependencies: [idep_amdgfxregs_h, dep_libdrm_amdgpu, idep_mesautil],
131
 
    ),
132
 
    suite: ['amd']
133
 
  )
134
 
 
135
 
  # Limit this to only a few architectures for the Gitlab CI.
136
 
  if ['x86', 'x86_64', 'aarch64'].contains(host_machine.cpu_family())
137
 
    test(
138
 
      'ac_surface_meta_address_test',
139
 
      executable(
140
 
        'ac_surface_meta_address_test',
141
 
        ['ac_surface_meta_address_test.c'],
142
 
        link_with: [libamd_common, libamdgpu_addrlib],
143
 
        include_directories : [
144
 
          inc_amd, inc_gallium, inc_include, inc_src,
145
 
        ],
146
 
        dependencies: [idep_amdgfxregs_h, dep_libdrm_amdgpu, idep_mesautil, dep_openmp],
147
 
      ),
148
 
      suite: ['amd']
149
 
    )
150
 
  endif
151
 
endif