summaryrefslogtreecommitdiff
path: root/gnu
diff options
context:
space:
mode:
authorclack <git@a.tagmail.org>2026-07-13 10:19:00 +1000
committerNguyễn Gia Phong <cnx@loang.net>2026-07-15 15:15:44 +0900
commit0add6cc7e9739aee3a45f010822f486a0a30f809 (patch)
tree1794af7855233d85d79948ad7df499f923372b69 /gnu
parent058701d7ad329cfa7292998699baa3dfb8955752 (diff)
gnu: vkmark: Fix compatibility with vulkan-headers 1.4.333.
* gnu/packages/patches/vkmark-2025.1-fix-vulkan-headers-1.4.333.patch: New file. * gnu/local.mk (dist_patch_DATA): Register it. * gnu/packages/benchmark.scm (vkmark)[source]<patches>: Add it. Signed-off-by: Nguyễn Gia Phong <cnx@loang.net>
Diffstat (limited to 'gnu')
-rw-r--r--gnu/local.mk1
-rw-r--r--gnu/packages/benchmark.scm3
-rw-r--r--gnu/packages/patches/vkmark-2025.1-fix-vulkan-headers-1.4.333.patch58
3 files changed, 61 insertions, 1 deletions
diff --git a/gnu/local.mk b/gnu/local.mk
index 8d795b82458..a71dc5b68c1 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -2629,6 +2629,7 @@ dist_patch_DATA = \
2629 %D%/packages/patches/vcmi-disable-privacy-breach.patch \ 2629 %D%/packages/patches/vcmi-disable-privacy-breach.patch \
2630 %D%/packages/patches/vinagre-newer-freerdp.patch \ 2630 %D%/packages/patches/vinagre-newer-freerdp.patch \
2631 %D%/packages/patches/vinagre-newer-rdp-parameters.patch \ 2631 %D%/packages/patches/vinagre-newer-rdp-parameters.patch \
2632 %D%/packages/patches/vkmark-2025.1-fix-vulkan-headers-1.4.333.patch \
2632 %D%/packages/patches/vsearch-unbundle-cityhash.patch \ 2633 %D%/packages/patches/vsearch-unbundle-cityhash.patch \
2633 %D%/packages/patches/vst3sdk-3.7.7-allow-winelib-compilation.patch \ 2634 %D%/packages/patches/vst3sdk-3.7.7-allow-winelib-compilation.patch \
2634 %D%/packages/patches/vte-CVE-2012-2738-pt1.patch \ 2635 %D%/packages/patches/vte-CVE-2012-2738-pt1.patch \
diff --git a/gnu/packages/benchmark.scm b/gnu/packages/benchmark.scm
index 906021e314f..926daca2a87 100644
--- a/gnu/packages/benchmark.scm
+++ b/gnu/packages/benchmark.scm
@@ -899,7 +899,8 @@ user-provided Lua scripts.
899 (commit version))) 899 (commit version)))
900 (file-name (git-file-name name version)) 900 (file-name (git-file-name name version))
901 (sha256 901 (sha256
902 (base32 "0mpxyfwln1627zzi11fb6lgv7x1jz1p2w16w1mhhkdz1xsln6fj6")))) 902 (base32 "0mpxyfwln1627zzi11fb6lgv7x1jz1p2w16w1mhhkdz1xsln6fj6"))
903 (patches (search-patches "vkmark-2025.1-fix-vulkan-headers-1.4.333.patch"))))
903 (build-system meson-build-system) 904 (build-system meson-build-system)
904 (arguments 905 (arguments
905 (list 906 (list
diff --git a/gnu/packages/patches/vkmark-2025.1-fix-vulkan-headers-1.4.333.patch b/gnu/packages/patches/vkmark-2025.1-fix-vulkan-headers-1.4.333.patch
new file mode 100644
index 00000000000..7779954290f
--- /dev/null
+++ b/gnu/packages/patches/vkmark-2025.1-fix-vulkan-headers-1.4.333.patch
@@ -0,0 +1,58 @@
1From: Philipp Zabel <p.zabel@pengutronix.de>
2Date: Wed, 10 Dec 2025 10:59:49 +0100
3Subject: Register custom dispatcher with isDispatchLoader
4Upstream-status: https://github.com/vkmark/vkmark/pull/80
5
6Since Vulkan 1.4.333, custom dispatch loaders must be registered
7with isDispatchLoader to be recognized.
8
9diff --git a/src/vulkan_state.cpp b/src/vulkan_state.cpp
10index a36b299..3dbb48b 100644
11--- a/src/vulkan_state.cpp
12+++ b/src/vulkan_state.cpp
13@@ -65,6 +65,18 @@ class DebugUtilsDispatcher
14
15 }
16
17+#if VK_HEADER_VERSION >= 333 && VK_HEADER_VERSION <= 337
18+namespace vk::detail {
19+
20+template <>
21+struct isDispatchLoader<::DebugUtilsDispatcher>
22+{
23+ static VULKAN_HPP_CONST_OR_CONSTEXPR bool value = true;
24+};
25+
26+}
27+#endif
28+
29 VulkanState::VulkanState(VulkanWSI& vulkan_wsi, ChoosePhysicalDeviceStrategy const& pd_strategy, bool debug)
30 : debug_enabled(debug)
31 {
32diff --git a/src/ws/kms_window_system.cpp b/src/ws/kms_window_system.cpp
33index 4bf7838..d378778 100644
34--- a/src/ws/kms_window_system.cpp
35+++ b/src/ws/kms_window_system.cpp
36@@ -474,6 +474,22 @@ class GetFormatProperties2Dispatcher
37 PFN_vkGetPhysicalDeviceFormatProperties2KHR vkGetPhysicalDeviceFormatProperties2KHR;
38 };
39
40+}
41+
42+#if VK_HEADER_VERSION >= 333 && VK_HEADER_VERSION <= 337
43+namespace vk::detail {
44+
45+template <>
46+struct isDispatchLoader<::GetFormatProperties2Dispatcher>
47+{
48+ static VULKAN_HPP_CONST_OR_CONSTEXPR bool value = true;
49+};
50+
51+}
52+#endif
53+
54+namespace {
55+
56 std::vector<uint64_t> vk_get_supported_mods_for_format(VulkanState& vulkan,
57 vk::Format format)
58 {