From: Mathieu Baudier Date: Fri, 10 Oct 2025 13:47:30 +0000 (+0200) Subject: Temporarily fix Vulkan build X-Git-Tag: debian/0.9.4.185-1~8 X-Git-Url: https://git.djapps.eu/?a=commitdiff_plain;h=825c8671fd48ca43760a79b1a9c94e6af1328e0f;p=pkg%2Fggml%2Fsources%2Fggml Temporarily fix Vulkan build --- diff --git a/debian/patches/0002-revert-vulkan-dynamic-dispatcher.patch b/debian/patches/0002-revert-vulkan-dynamic-dispatcher.patch new file mode 100644 index 00000000..5262d97f --- /dev/null +++ b/debian/patches/0002-revert-vulkan-dynamic-dispatcher.patch @@ -0,0 +1,52 @@ +From: Mathieu Baudier +Date: Fri, 10 Oct 2025 15:38:31 +0200 +Subject: revert-vulkan-dynamic-dispatcher + +--- + src/ggml-vulkan/ggml-vulkan.cpp | 16 ++++------------ + 1 file changed, 4 insertions(+), 12 deletions(-) + +diff --git a/src/ggml-vulkan/ggml-vulkan.cpp b/src/ggml-vulkan/ggml-vulkan.cpp +index 2608cbd..1296caf 100644 +--- a/src/ggml-vulkan/ggml-vulkan.cpp ++++ b/src/ggml-vulkan/ggml-vulkan.cpp +@@ -7,14 +7,12 @@ + + // See https://github.com/KhronosGroup/Vulkan-Hpp?tab=readme-ov-file#extensions--per-device-function-pointers- + #define VULKAN_HPP_DISPATCH_LOADER_DYNAMIC 1 +-// We use VULKAN_HPP_DEFAULT_DISPATCHER, but not VULKAN_HPP_DEFAULT_DISPATCH_LOADER_DYNAMIC_STORAGE +-// to avoid conflicts with applications or other libraries who might use it. +-namespace vk::detail { class DispatchLoaderDynamic; } +-vk::detail::DispatchLoaderDynamic & ggml_vk_default_dispatcher(); +-#define VULKAN_HPP_DEFAULT_DISPATCHER ggml_vk_default_dispatcher() + + #include + ++// See https://github.com/KhronosGroup/Vulkan-Hpp?tab=readme-ov-file#extensions--per-device-function-pointers- ++VULKAN_HPP_DEFAULT_DISPATCH_LOADER_DYNAMIC_STORAGE ++ + #include + #include + #include +@@ -4538,12 +4536,6 @@ static bool ggml_vk_instance_portability_enumeration_ext_available(const std::ve + static bool ggml_vk_instance_debug_utils_ext_available(const std::vector & instance_extensions); + static bool ggml_vk_device_is_supported(const vk::PhysicalDevice & vkdev); + +-static vk::detail::DispatchLoaderDynamic ggml_vk_default_dispatcher_instance; +- +-vk::detail::DispatchLoaderDynamic & ggml_vk_default_dispatcher() { +- return ggml_vk_default_dispatcher_instance; +-} +- + static void ggml_vk_instance_init() { + if (vk_instance_initialized) { + return; +@@ -4551,7 +4543,7 @@ static void ggml_vk_instance_init() { + VK_LOG_DEBUG("ggml_vk_instance_init()"); + + // See https://github.com/KhronosGroup/Vulkan-Hpp?tab=readme-ov-file#extensions--per-device-function-pointers- +- ggml_vk_default_dispatcher_instance.init(vkGetInstanceProcAddr); ++ VULKAN_HPP_DEFAULT_DISPATCHER.init(vkGetInstanceProcAddr); + + uint32_t api_version = vk::enumerateInstanceVersion(); + diff --git a/debian/patches/series b/debian/patches/series index b9192bb5..96e9c398 100644 --- a/debian/patches/series +++ b/debian/patches/series @@ -1 +1,2 @@ 0001-improve-cmake-build.patch +0002-revert-vulkan-dynamic-dispatcher.patch