xref: /aosp_15_r20/external/mesa3d/src/broadcom/meson.build (revision 6104692788411f58d303aa86923a9ff6ecaded22)
1*61046927SAndroid Build Coastguard Worker# Copyright © 2017 Broadcom
2*61046927SAndroid Build Coastguard Worker# SPDX-License-Identifier: MIT
3*61046927SAndroid Build Coastguard Worker
4*61046927SAndroid Build Coastguard Workerinc_broadcom = include_directories('.', 'cle')
5*61046927SAndroid Build Coastguard Worker
6*61046927SAndroid Build Coastguard Workersubdir('cle')
7*61046927SAndroid Build Coastguard Worker
8*61046927SAndroid Build Coastguard Workerv3d_versions = ['42', '71']
9*61046927SAndroid Build Coastguard Workerv3d_libs = []
10*61046927SAndroid Build Coastguard Worker
11*61046927SAndroid Build Coastguard Workerif with_gallium_v3d or with_broadcom_vk
12*61046927SAndroid Build Coastguard Worker  subdir('compiler')
13*61046927SAndroid Build Coastguard Worker  subdir('qpu')
14*61046927SAndroid Build Coastguard Worker  subdir('simulator')
15*61046927SAndroid Build Coastguard Workerendif
16*61046927SAndroid Build Coastguard Worker
17*61046927SAndroid Build Coastguard Workerif with_tools.contains('drm-shim')
18*61046927SAndroid Build Coastguard Worker  subdir('drm-shim')
19*61046927SAndroid Build Coastguard Workerendif
20*61046927SAndroid Build Coastguard Worker
21*61046927SAndroid Build Coastguard Workerper_version_libs = []
22*61046927SAndroid Build Coastguard Workerforeach ver : v3d_versions
23*61046927SAndroid Build Coastguard Worker  per_version_libs += static_library(
24*61046927SAndroid Build Coastguard Worker    'broadcom-v' + ver,
25*61046927SAndroid Build Coastguard Worker    [
26*61046927SAndroid Build Coastguard Worker      files('clif/v3dx_dump.c'),
27*61046927SAndroid Build Coastguard Worker      v3d_xml_pack
28*61046927SAndroid Build Coastguard Worker    ],
29*61046927SAndroid Build Coastguard Worker    include_directories : [inc_include, inc_src, inc_broadcom],
30*61046927SAndroid Build Coastguard Worker    c_args : [no_override_init_args, '-DV3D_VERSION=' + ver],
31*61046927SAndroid Build Coastguard Worker    gnu_symbol_visibility : 'hidden',
32*61046927SAndroid Build Coastguard Worker    dependencies: [dep_valgrind, dep_thread],
33*61046927SAndroid Build Coastguard Worker  )
34*61046927SAndroid Build Coastguard Workerendforeach
35*61046927SAndroid Build Coastguard Worker
36*61046927SAndroid Build Coastguard Workerv3d_args = ['-DV3D_BUILD_NEON']
37*61046927SAndroid Build Coastguard Worker
38*61046927SAndroid Build Coastguard Workerv3d_neon_c_args = []
39*61046927SAndroid Build Coastguard Workerif host_machine.cpu_family() == 'arm'
40*61046927SAndroid Build Coastguard Worker    v3d_neon_c_args = '-mfpu=neon'
41*61046927SAndroid Build Coastguard Workerendif
42*61046927SAndroid Build Coastguard Worker
43*61046927SAndroid Build Coastguard Workerlibv3d_neon = static_library(
44*61046927SAndroid Build Coastguard Worker  'v3d_neon',
45*61046927SAndroid Build Coastguard Worker  'common/v3d_tiling.c',
46*61046927SAndroid Build Coastguard Worker  include_directories : [
47*61046927SAndroid Build Coastguard Worker    inc_src, inc_include, inc_broadcom,
48*61046927SAndroid Build Coastguard Worker  ],
49*61046927SAndroid Build Coastguard Worker  c_args : [v3d_args, v3d_neon_c_args],
50*61046927SAndroid Build Coastguard Worker  gnu_symbol_visibility : 'hidden',
51*61046927SAndroid Build Coastguard Worker  dependencies : [dep_libdrm, dep_valgrind, idep_nir_headers, idep_mesautil],
52*61046927SAndroid Build Coastguard Worker)
53*61046927SAndroid Build Coastguard Worker
54*61046927SAndroid Build Coastguard Workerlibbroadcom_v3d = static_library(
55*61046927SAndroid Build Coastguard Worker  'broadcom_v3d',
56*61046927SAndroid Build Coastguard Worker  [
57*61046927SAndroid Build Coastguard Worker    files('common/v3d_debug.c', 'common/v3d_device_info.c', 'clif/clif_dump.c', 'common/v3d_util.c'),
58*61046927SAndroid Build Coastguard Worker    v3d_xml_pack,
59*61046927SAndroid Build Coastguard Worker  ],
60*61046927SAndroid Build Coastguard Worker  include_directories : [inc_include, inc_src, inc_broadcom],
61*61046927SAndroid Build Coastguard Worker  c_args : [no_override_init_args],
62*61046927SAndroid Build Coastguard Worker  gnu_symbol_visibility : 'hidden',
63*61046927SAndroid Build Coastguard Worker  link_whole : v3d_libs + per_version_libs,
64*61046927SAndroid Build Coastguard Worker  link_with: [libv3d_neon],
65*61046927SAndroid Build Coastguard Worker  build_by_default : false,
66*61046927SAndroid Build Coastguard Worker  dependencies: [dep_valgrind, dep_thread, idep_mesautil],
67*61046927SAndroid Build Coastguard Worker)
68*61046927SAndroid Build Coastguard Worker
69*61046927SAndroid Build Coastguard Workerif with_broadcom_vk
70*61046927SAndroid Build Coastguard Worker  subdir('vulkan')
71*61046927SAndroid Build Coastguard Workerendif
72