1
2lvp_entrypoints = custom_target(
3  'lvp_entrypoints.[ch]',
4  input : ['lvp_entrypoints_gen.py', vk_api_xml],
5  output : ['lvp_entrypoints.h', 'lvp_entrypoints.c'],
6  command : [
7    prog_python, '@INPUT0@', '--xml', '@INPUT1@', '--outdir',
8    meson.current_build_dir()
9  ],
10  depend_files : files('lvp_extensions.py'),
11)
12
13lvp_extensions_c = custom_target(
14  'lvp_extensions.c',
15  input : ['lvp_extensions.py', vk_api_xml],
16  output : ['lvp_extensions.c', 'lvp_extensions.h'],
17  command : [
18    prog_python, '@INPUT0@', '--xml', '@INPUT1@', '--out-c', '@OUTPUT0@',
19    '--out-h', '@OUTPUT1@'
20  ],
21)
22
23liblvp_files = files(
24    'lvp_device.c',
25    'lvp_cmd_buffer.c',
26    'lvp_descriptor_set.c',
27    'lvp_execute.c',
28    'lvp_util.c',
29    'lvp_image.c',
30    'lvp_formats.c',
31    'lvp_lower_vulkan_resource.c',
32    'lvp_lower_vulkan_resource.h',
33    'lvp_lower_input_attachments.c',
34    'lvp_pass.c',
35    'lvp_pipeline.c',
36    'lvp_pipeline_cache.c',
37    'lvp_query.c',
38    'lvp_wsi.c')
39
40lvp_deps = []
41lvp_flags = []
42
43if with_platform_x11
44  lvp_deps += dep_xcb_dri3
45  lvp_flags += [
46    '-DVK_USE_PLATFORM_XCB_KHR',
47    '-DVK_USE_PLATFORM_XLIB_KHR',
48  ]
49  liblvp_files += files('lvp_wsi_x11.c')
50endif
51
52if with_platform_wayland
53  lvp_deps += dep_wayland_client
54  lvp_flags += '-DVK_USE_PLATFORM_WAYLAND_KHR'
55  liblvp_files += files('lvp_wsi_wayland.c')
56endif
57
58liblavapipe_st = static_library(
59  'lavapipe_st',
60  [liblvp_files, lvp_entrypoints, lvp_extensions_c ],
61  link_with : [ libvulkan_wsi ],
62  c_args : [ lvp_flags ],
63  gnu_symbol_visibility : 'hidden',
64  include_directories : [ inc_include, inc_src, inc_util, inc_gallium, inc_compiler, inc_gallium_aux, inc_vulkan_wsi ],
65  dependencies : [ idep_nir, idep_mesautil, idep_vulkan_util ]
66)
67