1 2lvp_entrypoints = custom_target( 3 'lvp_entrypoints', 4 input : [vk_entrypoints_gen, vk_api_xml], 5 output : ['lvp_entrypoints.h', 'lvp_entrypoints.c'], 6 command : [ 7 prog_python, '@INPUT0@', '--xml', '@INPUT1@', '--proto', '--weak', 8 '--out-h', '@OUTPUT0@', '--out-c', '@OUTPUT1@', '--prefix', 'lvp', 9 '--beta', with_vulkan_beta.to_string(), 10 ], 11 depend_files : vk_entrypoints_gen_depend_files, 12) 13 14liblvp_files = files( 15 'lvp_acceleration_structure.c', 16 'lvp_device.c', 17 'lvp_device_generated_commands.c', 18 'lvp_cmd_buffer.c', 19 'lvp_descriptor_set.c', 20 'lvp_execute.c', 21 'lvp_util.c', 22 'lvp_image.c', 23 'lvp_formats.c', 24 'lvp_inline_uniforms.c', 25 'lvp_lower_exec_graph.c', 26 'lvp_lower_vulkan_resource.c', 27 'lvp_lower_vulkan_resource.h', 28 'lvp_lower_input_attachments.c', 29 'lvp_nir_lower_ray_queries.c', 30 'lvp_nir_lower_sparse_residency.c', 31 'lvp_nir_ray_tracing.c', 32 'lvp_nir_ray_tracing.h', 33 'lvp_pipe_sync.c', 34 'lvp_pipeline.c', 35 'lvp_pipeline_cache.c', 36 'lvp_query.c', 37 'lvp_ray_tracing_pipeline.c', 38 'lvp_wsi.c') 39 40if with_platform_android 41 liblvp_files += 'lvp_android.c' 42endif 43 44lvp_deps = [] 45lvp_flags = [] 46 47if with_platform_x11 48 lvp_deps += dep_xcb_dri3 49endif 50 51if with_platform_wayland 52 lvp_deps += dep_wayland_client 53endif 54 55liblavapipe_st = static_library( 56 'lavapipe_st', 57 [liblvp_files, lvp_entrypoints, sha1_h], 58 c_args : [ c_msvc_compat_args, lvp_flags], 59 gnu_symbol_visibility : 'hidden', 60 include_directories : [ inc_include, inc_src, inc_util, inc_gallium, inc_gallium_aux, inc_llvmpipe ], 61 dependencies : [ dep_llvm, idep_nir, idep_mesautil, idep_vulkan_util, idep_vulkan_wsi, 62 idep_vulkan_runtime, lvp_deps ] 63) 64