1*61046927SAndroid Build Coastguard Worker# Copyright © 2017 Intel Corporation 2*61046927SAndroid Build Coastguard Worker# SPDX-License-Identifier: MIT 3*61046927SAndroid Build Coastguard Worker 4*61046927SAndroid Build Coastguard Worker# Mesa-local imports in the Python files must be declared here for correct 5*61046927SAndroid Build Coastguard Worker# dependency tracking. 6*61046927SAndroid Build Coastguard Workervk_extensions_depend_files = [ 7*61046927SAndroid Build Coastguard Worker] 8*61046927SAndroid Build Coastguard Workervk_entrypoints_depend_files = [ 9*61046927SAndroid Build Coastguard Worker files('vk_extensions.py'), 10*61046927SAndroid Build Coastguard Worker vk_extensions_depend_files, 11*61046927SAndroid Build Coastguard Worker] 12*61046927SAndroid Build Coastguard Workervk_extensions_gen_depend_files = [ 13*61046927SAndroid Build Coastguard Worker files('vk_extensions.py'), 14*61046927SAndroid Build Coastguard Worker vk_extensions_depend_files, 15*61046927SAndroid Build Coastguard Worker] 16*61046927SAndroid Build Coastguard Workervk_dispatch_table_gen_depend_files = [ 17*61046927SAndroid Build Coastguard Worker files('vk_entrypoints.py'), 18*61046927SAndroid Build Coastguard Worker vk_entrypoints_depend_files, 19*61046927SAndroid Build Coastguard Worker] 20*61046927SAndroid Build Coastguard Workervk_dispatch_trampolines_gen_depend_files = [ 21*61046927SAndroid Build Coastguard Worker files('vk_entrypoints.py'), 22*61046927SAndroid Build Coastguard Worker vk_entrypoints_depend_files, 23*61046927SAndroid Build Coastguard Worker] 24*61046927SAndroid Build Coastguard Workervk_entrypoints_gen_depend_files = [ 25*61046927SAndroid Build Coastguard Worker files('vk_entrypoints.py'), 26*61046927SAndroid Build Coastguard Worker vk_entrypoints_depend_files, 27*61046927SAndroid Build Coastguard Worker] 28*61046927SAndroid Build Coastguard Workervk_cmd_queue_gen_depend_files = [ 29*61046927SAndroid Build Coastguard Worker files('vk_entrypoints.py'), 30*61046927SAndroid Build Coastguard Worker vk_entrypoints_depend_files, 31*61046927SAndroid Build Coastguard Worker] 32*61046927SAndroid Build Coastguard Workervk_physical_device_features_gen_depend_files = [ 33*61046927SAndroid Build Coastguard Worker files('vk_extensions.py'), 34*61046927SAndroid Build Coastguard Worker vk_extensions_depend_files, 35*61046927SAndroid Build Coastguard Worker] 36*61046927SAndroid Build Coastguard Workervk_physical_device_properties_gen_depend_files = [ 37*61046927SAndroid Build Coastguard Worker files('vk_extensions.py'), 38*61046927SAndroid Build Coastguard Worker vk_extensions_depend_files, 39*61046927SAndroid Build Coastguard Worker] 40*61046927SAndroid Build Coastguard Workervk_physical_device_spirv_caps_gen_depend_files = [ 41*61046927SAndroid Build Coastguard Worker files('vk_extensions.py'), 42*61046927SAndroid Build Coastguard Worker vk_extensions_depend_files, 43*61046927SAndroid Build Coastguard Worker files('vk_physical_device_features_gen.py'), 44*61046927SAndroid Build Coastguard Worker vk_physical_device_features_gen_depend_files, 45*61046927SAndroid Build Coastguard Worker] 46*61046927SAndroid Build Coastguard Workervk_synchronization_helpers_gen_depend_files = [ 47*61046927SAndroid Build Coastguard Worker files('vk_extensions.py'), 48*61046927SAndroid Build Coastguard Worker vk_extensions_depend_files, 49*61046927SAndroid Build Coastguard Worker] 50*61046927SAndroid Build Coastguard Workervk_enum_to_str_depend_files = [ 51*61046927SAndroid Build Coastguard Worker files('vk_extensions.py'), 52*61046927SAndroid Build Coastguard Worker vk_extensions_depend_files, 53*61046927SAndroid Build Coastguard Worker] 54*61046927SAndroid Build Coastguard Workervk_struct_type_cast_depend_files = [ 55*61046927SAndroid Build Coastguard Worker files('vk_extensions.py'), 56*61046927SAndroid Build Coastguard Worker vk_extensions_depend_files, 57*61046927SAndroid Build Coastguard Worker] 58*61046927SAndroid Build Coastguard Worker 59*61046927SAndroid Build Coastguard Workervk_entrypoints_gen = files('vk_entrypoints_gen.py') 60*61046927SAndroid Build Coastguard Workervk_extensions_gen = files('vk_extensions_gen.py') 61*61046927SAndroid Build Coastguard Workervk_icd_gen = files('vk_icd_gen.py') 62*61046927SAndroid Build Coastguard Workervk_cmd_queue_gen = files('vk_cmd_queue_gen.py') 63*61046927SAndroid Build Coastguard Workervk_dispatch_trampolines_gen = files('vk_dispatch_trampolines_gen.py') 64*61046927SAndroid Build Coastguard Workervk_physical_device_features_gen = files('vk_physical_device_features_gen.py') 65*61046927SAndroid Build Coastguard Workervk_physical_device_properties_gen = files('vk_physical_device_properties_gen.py') 66*61046927SAndroid Build Coastguard Workervk_physical_device_spirv_caps_gen = files('vk_physical_device_spirv_caps_gen.py') 67*61046927SAndroid Build Coastguard Workervk_synchronization_helpers_gen = files('vk_synchronization_helpers_gen.py') 68*61046927SAndroid Build Coastguard Worker 69*61046927SAndroid Build Coastguard Workerfiles_vulkan_util = files( 70*61046927SAndroid Build Coastguard Worker 'vk_alloc.c', 71*61046927SAndroid Build Coastguard Worker 'vk_format.c', 72*61046927SAndroid Build Coastguard Worker 'vk_util.c', 73*61046927SAndroid Build Coastguard Worker) 74*61046927SAndroid Build Coastguard Worker 75*61046927SAndroid Build Coastguard Workervk_dispatch_table = custom_target( 76*61046927SAndroid Build Coastguard Worker 'vk_dispatch_table', 77*61046927SAndroid Build Coastguard Worker input : ['vk_dispatch_table_gen.py', vk_api_xml], 78*61046927SAndroid Build Coastguard Worker output : ['vk_dispatch_table.c', 'vk_dispatch_table.h'], 79*61046927SAndroid Build Coastguard Worker command : [ 80*61046927SAndroid Build Coastguard Worker prog_python, '@INPUT0@', '--xml', '@INPUT1@', 81*61046927SAndroid Build Coastguard Worker '--out-c', '@OUTPUT0@', '--out-h', '@OUTPUT1@', 82*61046927SAndroid Build Coastguard Worker '--beta', with_vulkan_beta.to_string() 83*61046927SAndroid Build Coastguard Worker ], 84*61046927SAndroid Build Coastguard Worker depend_files : vk_dispatch_table_gen_depend_files, 85*61046927SAndroid Build Coastguard Worker) 86*61046927SAndroid Build Coastguard Worker 87*61046927SAndroid Build Coastguard Workervk_enum_to_str = custom_target( 88*61046927SAndroid Build Coastguard Worker 'vk_enum_to_str', 89*61046927SAndroid Build Coastguard Worker input : ['gen_enum_to_str.py', vk_api_xml], 90*61046927SAndroid Build Coastguard Worker output : ['vk_enum_to_str.c', 'vk_enum_to_str.h', 'vk_enum_defines.h'], 91*61046927SAndroid Build Coastguard Worker command : [ 92*61046927SAndroid Build Coastguard Worker prog_python, '@INPUT0@', '--xml', '@INPUT1@', 93*61046927SAndroid Build Coastguard Worker '--outdir', meson.current_build_dir(), 94*61046927SAndroid Build Coastguard Worker '--beta', with_vulkan_beta.to_string() 95*61046927SAndroid Build Coastguard Worker ], 96*61046927SAndroid Build Coastguard Worker depend_files : vk_enum_to_str_depend_files, 97*61046927SAndroid Build Coastguard Worker) 98*61046927SAndroid Build Coastguard Worker 99*61046927SAndroid Build Coastguard Workervk_struct_type_cast = custom_target( 100*61046927SAndroid Build Coastguard Worker 'vk_struct_type_cast', 101*61046927SAndroid Build Coastguard Worker input : ['vk_struct_type_cast_gen.py', vk_api_xml], 102*61046927SAndroid Build Coastguard Worker output : ['vk_struct_type_cast.h'], 103*61046927SAndroid Build Coastguard Worker command : [ 104*61046927SAndroid Build Coastguard Worker prog_python, '@INPUT0@', '--xml', '@INPUT1@', 105*61046927SAndroid Build Coastguard Worker '--outdir', meson.current_build_dir(), 106*61046927SAndroid Build Coastguard Worker '--beta', with_vulkan_beta.to_string() 107*61046927SAndroid Build Coastguard Worker ], 108*61046927SAndroid Build Coastguard Worker depend_files : vk_struct_type_cast_depend_files, 109*61046927SAndroid Build Coastguard Worker) 110*61046927SAndroid Build Coastguard Worker 111*61046927SAndroid Build Coastguard Workervk_extensions = custom_target( 112*61046927SAndroid Build Coastguard Worker 'vk_extensions', 113*61046927SAndroid Build Coastguard Worker input : ['vk_extensions_gen.py', vk_api_xml], 114*61046927SAndroid Build Coastguard Worker output : ['vk_extensions.c', 'vk_extensions.h'], 115*61046927SAndroid Build Coastguard Worker command : [ 116*61046927SAndroid Build Coastguard Worker prog_python, '@INPUT0@', '--xml', '@INPUT1@', 117*61046927SAndroid Build Coastguard Worker '--out-c', '@OUTPUT0@', '--out-h', '@OUTPUT1@' 118*61046927SAndroid Build Coastguard Worker ], 119*61046927SAndroid Build Coastguard Worker depend_files : vk_extensions_gen_depend_files, 120*61046927SAndroid Build Coastguard Worker) 121*61046927SAndroid Build Coastguard Worker 122*61046927SAndroid Build Coastguard Workerlibvulkan_util = static_library( 123*61046927SAndroid Build Coastguard Worker 'vulkan_util', 124*61046927SAndroid Build Coastguard Worker [files_vulkan_util, vk_dispatch_table, vk_enum_to_str, 125*61046927SAndroid Build Coastguard Worker vk_struct_type_cast, vk_extensions], 126*61046927SAndroid Build Coastguard Worker include_directories : [inc_include, inc_src], 127*61046927SAndroid Build Coastguard Worker dependencies : [vulkan_wsi_deps, idep_mesautil, idep_nir_headers], 128*61046927SAndroid Build Coastguard Worker c_args : [c_msvc_compat_args], 129*61046927SAndroid Build Coastguard Worker gnu_symbol_visibility : 'hidden', 130*61046927SAndroid Build Coastguard Worker build_by_default : false, 131*61046927SAndroid Build Coastguard Worker) 132*61046927SAndroid Build Coastguard Worker 133*61046927SAndroid Build Coastguard Workeridep_vulkan_util_headers = declare_dependency( 134*61046927SAndroid Build Coastguard Worker sources : [vk_dispatch_table[1], vk_enum_to_str[1], 135*61046927SAndroid Build Coastguard Worker vk_struct_type_cast[0], vk_extensions[1]], 136*61046927SAndroid Build Coastguard Worker include_directories : include_directories('.') 137*61046927SAndroid Build Coastguard Worker) 138*61046927SAndroid Build Coastguard Worker 139*61046927SAndroid Build Coastguard Workeridep_vulkan_util = declare_dependency( 140*61046927SAndroid Build Coastguard Worker link_with : libvulkan_util, 141*61046927SAndroid Build Coastguard Worker dependencies : [idep_vulkan_util_headers, idep_mesautil], 142*61046927SAndroid Build Coastguard Worker) 143