Merge branch 'dab_vulkan_macos' into 'main'

vulkan: fix macos build

See merge request gstreamer/gstreamer!6669
This commit is contained in:
Stéphane Cerveau 2024-05-03 20:49:01 +00:00
commit 10d854abbe

View file

@ -108,13 +108,17 @@ foreach option : vulkan_conf_options
endforeach
if ['ios', 'darwin'].contains(host_system)
# - ios does not support the loader/validation layers
# - We need to link directly to MoltenVK to be able to use
# MoltenVK-specific functions that use dispatchable handles (like
# retrieving the metal device from the VkDevice) which is currently waiting
# on implementing a proper Metal extension for Vulkan
# https://github.com/KhronosGroup/MoltenVK/issues/492
vulkan_dep = cc.find_library('MoltenVK', required : get_option('vulkan'))
vulkan_dep = dependency('vulkan', method: 'pkg-config', required : false)
if not vulkan_dep.found()
# - ios does not support the loader/validation layers
# - We need to link directly to MoltenVK to be able to use
# MoltenVK-specific functions that use dispatchable handles (like
# retrieving the metal device from the VkDevice) which is currently waiting
# on implementing a proper Metal extension for Vulkan
# https://github.com/KhronosGroup/MoltenVK/issues/492
vulkan_dep = cc.find_library('MoltenVK', required : get_option('vulkan'))
endif
elif host_system == 'windows'
vulkan_root = run_command(python3, '-c', 'import os; print(os.environ.get("VK_SDK_PATH"))', check: false).stdout().strip()
if vulkan_root != '' and vulkan_root != 'None'
@ -145,7 +149,7 @@ else
endif
if host_system != 'windows'
has_vulkan_header = cc.has_header('vulkan/vulkan_core.h')
has_vulkan_header = cc.has_header('vulkan/vulkan_core.h', dependencies: vulkan_dep)
endif
if not has_vulkan_header and get_option('vulkan').enabled()