Module: Mesa
Branch: main
Commit: e02cdb397e62ae40e901568cb60a3fe0b59db706
URL:    
http://cgit.freedesktop.org/mesa/mesa/commit/?id=e02cdb397e62ae40e901568cb60a3fe0b59db706

Author: Erik Faye-Lund <[email protected]>
Date:   Fri Feb 17 16:29:58 2023 +0100

zink: prefer vulkan_core.h over vulkan.h

There's just two places where we need any of the WSI specific vulkan
includes, the rest of Zink should do just fine with vulkan_core.h. So
let's include the win32-specific header explicitly in those two places,
and reduce the need for WSI specifics inside zink itself. Kopper
handles the rest of the WSI integration.

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21441>

---

 src/gallium/drivers/zink/nir_to_spirv/nir_to_spirv.h | 2 +-
 src/gallium/drivers/zink/zink_batch.h                | 2 +-
 src/gallium/drivers/zink/zink_device_info.py         | 7 ++++++-
 src/gallium/drivers/zink/zink_fence.c                | 5 +++++
 src/gallium/drivers/zink/zink_format.h               | 2 +-
 src/gallium/drivers/zink/zink_instance.py            | 2 +-
 src/gallium/drivers/zink/zink_types.h                | 2 +-
 7 files changed, 16 insertions(+), 6 deletions(-)

diff --git a/src/gallium/drivers/zink/nir_to_spirv/nir_to_spirv.h 
b/src/gallium/drivers/zink/nir_to_spirv/nir_to_spirv.h
index 25a26a6d76a..67a56464d19 100644
--- a/src/gallium/drivers/zink/nir_to_spirv/nir_to_spirv.h
+++ b/src/gallium/drivers/zink/nir_to_spirv/nir_to_spirv.h
@@ -26,7 +26,7 @@
 
 #include <stdlib.h>
 #include <stdint.h>
-#include <vulkan/vulkan.h>
+#include <vulkan/vulkan_core.h>
 
 #include "compiler/nir/nir.h"
 #include "compiler/shader_enums.h"
diff --git a/src/gallium/drivers/zink/zink_batch.h 
b/src/gallium/drivers/zink/zink_batch.h
index 557a60e04ef..0ee460ac3de 100644
--- a/src/gallium/drivers/zink/zink_batch.h
+++ b/src/gallium/drivers/zink/zink_batch.h
@@ -24,7 +24,7 @@
 #ifndef ZINK_BATCH_H
 #define ZINK_BATCH_H
 
-#include <vulkan/vulkan.h>
+#include <vulkan/vulkan_core.h>
 #include "zink_types.h"
 
 #include "util/list.h"
diff --git a/src/gallium/drivers/zink/zink_device_info.py 
b/src/gallium/drivers/zink/zink_device_info.py
index 42be30aa4ce..1c2b8287a8b 100644
--- a/src/gallium/drivers/zink/zink_device_info.py
+++ b/src/gallium/drivers/zink/zink_device_info.py
@@ -347,7 +347,12 @@ header_code = """
 
 #include "util/u_memory.h"
 
-#include <vulkan/vulkan.h>
+#include <vulkan/vulkan_core.h>
+
+#ifdef _WIN32
+#include <windows.h>
+#include <vulkan/vulkan_win32.h>
+#endif
 
 struct zink_screen;
 
diff --git a/src/gallium/drivers/zink/zink_fence.c 
b/src/gallium/drivers/zink/zink_fence.c
index a669750e282..ee1101fb516 100644
--- a/src/gallium/drivers/zink/zink_fence.c
+++ b/src/gallium/drivers/zink/zink_fence.c
@@ -32,6 +32,11 @@
 #include "util/set.h"
 #include "util/u_memory.h"
 
+#ifdef _WIN32
+#include <windows.h>
+#include <vulkan/vulkan_win32.h>
+#endif
+
 static void
 destroy_fence(struct zink_screen *screen, struct zink_tc_fence *mfence)
 {
diff --git a/src/gallium/drivers/zink/zink_format.h 
b/src/gallium/drivers/zink/zink_format.h
index fc9aa27063d..c0fa84dc6d9 100644
--- a/src/gallium/drivers/zink/zink_format.h
+++ b/src/gallium/drivers/zink/zink_format.h
@@ -28,7 +28,7 @@
 #include "util/format/u_format.h"
 
 #include <stdbool.h>
-#include <vulkan/vulkan.h>
+#include <vulkan/vulkan_core.h>
 
 union pipe_color_union;
 
diff --git a/src/gallium/drivers/zink/zink_instance.py 
b/src/gallium/drivers/zink/zink_instance.py
index d6f09e7972b..c3bd231d494 100644
--- a/src/gallium/drivers/zink/zink_instance.py
+++ b/src/gallium/drivers/zink/zink_instance.py
@@ -69,7 +69,7 @@ header_code = """
 
 #include "os/os_process.h"
 
-#include <vulkan/vulkan.h>
+#include <vulkan/vulkan_core.h>
 
 #if defined(__APPLE__)
 // Source of MVK_VERSION
diff --git a/src/gallium/drivers/zink/zink_types.h 
b/src/gallium/drivers/zink/zink_types.h
index c0025b74700..88460bd7a4d 100644
--- a/src/gallium/drivers/zink/zink_types.h
+++ b/src/gallium/drivers/zink/zink_types.h
@@ -27,7 +27,7 @@
 #ifndef ZINK_TYPES_H
 #define ZINK_TYPES_H
 
-#include <vulkan/vulkan.h>
+#include <vulkan/vulkan_core.h>
 
 #include "compiler/nir/nir.h"
 

Reply via email to