xref: /aosp_15_r20/external/mesa3d/src/vulkan/meson.build (revision 6104692788411f58d303aa86923a9ff6ecaded22)
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 Workervk_api_xml = files('registry/vk.xml')
5*61046927SAndroid Build Coastguard Worker
6*61046927SAndroid Build Coastguard Workervulkan_icd_link_args = []
7*61046927SAndroid Build Coastguard Workervulkan_icd_link_depends = []
8*61046927SAndroid Build Coastguard Worker
9*61046927SAndroid Build Coastguard Workerif with_platform_android
10*61046927SAndroid Build Coastguard Worker  vulkan_icd_symbols = files('vulkan-icd-android-symbols.txt')
11*61046927SAndroid Build Coastguard Worker  if with_ld_version_script
12*61046927SAndroid Build Coastguard Worker    vulkan_icd_link_args += ['-Wl,--version-script', join_paths(meson.current_source_dir(), 'vulkan-android.sym')]
13*61046927SAndroid Build Coastguard Worker    vulkan_icd_link_depends += files('vulkan-android.sym')
14*61046927SAndroid Build Coastguard Worker  endif
15*61046927SAndroid Build Coastguard Workerelse
16*61046927SAndroid Build Coastguard Worker  vulkan_icd_symbols = files('vulkan-icd-symbols.txt')
17*61046927SAndroid Build Coastguard Worker  if with_ld_version_script
18*61046927SAndroid Build Coastguard Worker    vulkan_icd_link_args += ['-Wl,--version-script', join_paths(meson.current_source_dir(), 'vulkan.sym')]
19*61046927SAndroid Build Coastguard Worker    vulkan_icd_link_depends += files('vulkan.sym')
20*61046927SAndroid Build Coastguard Worker  endif
21*61046927SAndroid Build Coastguard Workerendif
22*61046927SAndroid Build Coastguard Worker
23*61046927SAndroid Build Coastguard Workerinc_vulkan_util = include_directories('util')
24*61046927SAndroid Build Coastguard Worker
25*61046927SAndroid Build Coastguard Workervulkan_wsi_deps = []
26*61046927SAndroid Build Coastguard Workervulkan_wsi_list = []
27*61046927SAndroid Build Coastguard Worker
28*61046927SAndroid Build Coastguard Workervulkan_api_def = custom_target(
29*61046927SAndroid Build Coastguard Worker  'vulkan_api.def',
30*61046927SAndroid Build Coastguard Worker  input: 'vulkan_api.def.in',
31*61046927SAndroid Build Coastguard Worker  output : 'vulkan_api.def',
32*61046927SAndroid Build Coastguard Worker  command : gen_vs_module_defs_normal_command,
33*61046927SAndroid Build Coastguard Worker)
34*61046927SAndroid Build Coastguard Worker
35*61046927SAndroid Build Coastguard Workerif with_platform_x11
36*61046927SAndroid Build Coastguard Worker  vulkan_wsi_deps += [
37*61046927SAndroid Build Coastguard Worker    dep_xcb,
38*61046927SAndroid Build Coastguard Worker    dep_x11_xcb,
39*61046927SAndroid Build Coastguard Worker    dep_xcb_dri3,
40*61046927SAndroid Build Coastguard Worker    dep_xcb_present,
41*61046927SAndroid Build Coastguard Worker    dep_xcb_xfixes,
42*61046927SAndroid Build Coastguard Worker    dep_xcb_sync,
43*61046927SAndroid Build Coastguard Worker    dep_xcb_xrandr,
44*61046927SAndroid Build Coastguard Worker    dep_xcb_shm,
45*61046927SAndroid Build Coastguard Worker    dep_xshmfence,
46*61046927SAndroid Build Coastguard Worker  ]
47*61046927SAndroid Build Coastguard Worker  vulkan_wsi_list += '-DVK_USE_PLATFORM_XCB_KHR'
48*61046927SAndroid Build Coastguard Worker  vulkan_wsi_list += '-DVK_USE_PLATFORM_XLIB_KHR'
49*61046927SAndroid Build Coastguard Worker  if with_xcb_keysyms
50*61046927SAndroid Build Coastguard Worker    vulkan_wsi_deps += dep_xcb_keysyms
51*61046927SAndroid Build Coastguard Worker  endif
52*61046927SAndroid Build Coastguard Workerendif
53*61046927SAndroid Build Coastguard Workerif with_platform_wayland
54*61046927SAndroid Build Coastguard Worker  vulkan_wsi_deps += dep_wayland_client
55*61046927SAndroid Build Coastguard Worker  vulkan_wsi_list += '-DVK_USE_PLATFORM_WAYLAND_KHR'
56*61046927SAndroid Build Coastguard Workerendif
57*61046927SAndroid Build Coastguard Workerif system_has_kms_drm and not with_platform_android
58*61046927SAndroid Build Coastguard Worker  vulkan_wsi_deps += [dep_libdrm]
59*61046927SAndroid Build Coastguard Worker  vulkan_wsi_list += '-DVK_USE_PLATFORM_DISPLAY_KHR'
60*61046927SAndroid Build Coastguard Workerendif
61*61046927SAndroid Build Coastguard Workerif with_xlib_lease
62*61046927SAndroid Build Coastguard Worker  vulkan_wsi_deps += [dep_xlib_xrandr]
63*61046927SAndroid Build Coastguard Worker  vulkan_wsi_list += '-DVK_USE_PLATFORM_XLIB_XRANDR_EXT'
64*61046927SAndroid Build Coastguard Workerendif
65*61046927SAndroid Build Coastguard Workerif with_platform_android
66*61046927SAndroid Build Coastguard Worker  vulkan_wsi_list += '-DVK_USE_PLATFORM_ANDROID_KHR'
67*61046927SAndroid Build Coastguard Workerendif
68*61046927SAndroid Build Coastguard Workerif with_platform_windows
69*61046927SAndroid Build Coastguard Worker  vulkan_wsi_list += '-DVK_USE_PLATFORM_WIN32_KHR'
70*61046927SAndroid Build Coastguard Workerendif
71*61046927SAndroid Build Coastguard Workerif with_platform_macos
72*61046927SAndroid Build Coastguard Worker  vulkan_wsi_list += '-DVK_USE_PLATFORM_MACOS_MVK'
73*61046927SAndroid Build Coastguard Worker  vulkan_wsi_list += '-DVK_USE_PLATFORM_METAL_EXT'
74*61046927SAndroid Build Coastguard Worker  vulkan_wsi_deps += dependency(
75*61046927SAndroid Build Coastguard Worker    'appleframeworks',
76*61046927SAndroid Build Coastguard Worker    modules : ['QuartzCore', 'Metal']
77*61046927SAndroid Build Coastguard Worker  )
78*61046927SAndroid Build Coastguard Workerendif
79*61046927SAndroid Build Coastguard Worker
80*61046927SAndroid Build Coastguard Workeridep_vulkan_wsi_defines = declare_dependency(
81*61046927SAndroid Build Coastguard Worker  compile_args : vulkan_wsi_list,
82*61046927SAndroid Build Coastguard Worker  dependencies : vulkan_wsi_deps,
83*61046927SAndroid Build Coastguard Worker)
84*61046927SAndroid Build Coastguard Workervulkan_wsi_deps += idep_vulkan_wsi_defines
85*61046927SAndroid Build Coastguard Worker
86*61046927SAndroid Build Coastguard Workersubdir('util')
87*61046927SAndroid Build Coastguard Workersubdir('runtime')
88*61046927SAndroid Build Coastguard Workersubdir('wsi')
89*61046927SAndroid Build Coastguard Workerif with_vulkan_overlay_layer
90*61046927SAndroid Build Coastguard Worker  subdir('overlay-layer')
91*61046927SAndroid Build Coastguard Workerendif
92*61046927SAndroid Build Coastguard Workerif with_vulkan_device_select_layer
93*61046927SAndroid Build Coastguard Worker  subdir('device-select-layer')
94*61046927SAndroid Build Coastguard Workerendif
95*61046927SAndroid Build Coastguard Workerif with_vulkan_screenshot_layer
96*61046927SAndroid Build Coastguard Worker  subdir('screenshot-layer')
97*61046927SAndroid Build Coastguard Workerendif
98