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