Mesa (master): zink: fix build on windows

GitLab Mirror gitlab-mirror at kemper.freedesktop.org
Thu Nov 12 14:23:14 UTC 2020


Module: Mesa
Branch: master
Commit: 5f999625407e8845cbd919b0b43b647e8e410e97
URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=5f999625407e8845cbd919b0b43b647e8e410e97

Author: Michel Zou <xantares09 at hotmail.com>
Date:   Tue Nov  3 18:42:58 2020 +0100

zink: fix build on windows

guard the drm includes that are not available on this platform

Reviewed-by: Erik Faye-Lund <erik.faye-lund at collabora.com>
Reviewed-By: Mike Blumenkrantz <michael.blumenkrantz at gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/7432>

---

 src/gallium/drivers/zink/zink_resource.c | 14 ++++++++++++++
 1 file changed, 14 insertions(+)

diff --git a/src/gallium/drivers/zink/zink_resource.c b/src/gallium/drivers/zink/zink_resource.c
index c2aaf0ccf34..b5bded805a4 100644
--- a/src/gallium/drivers/zink/zink_resource.c
+++ b/src/gallium/drivers/zink/zink_resource.c
@@ -38,7 +38,13 @@
 
 #include "frontend/sw_winsys.h"
 
+#ifndef _WIN32
+#define ZINK_USE_DMABUF
+#endif
+
+#ifdef ZINK_USE_DMABUF
 #include "drm-uapi/drm_fourcc.h"
+#endif
 
 static void
 zink_resource_destroy(struct pipe_screen *pscreen,
@@ -360,6 +366,7 @@ zink_resource_get_handle(struct pipe_screen *pscreen,
    }
 
    if (whandle->type == WINSYS_HANDLE_TYPE_FD) {
+#ifdef ZINK_USE_DMABUF
       fd_info.sType = VK_STRUCTURE_TYPE_MEMORY_GET_FD_INFO_KHR;
       fd_info.memory = res->mem;
       fd_info.handleType = VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_FD_BIT;
@@ -368,6 +375,9 @@ zink_resource_get_handle(struct pipe_screen *pscreen,
          return false;
       whandle->handle = fd;
       whandle->modifier = DRM_FORMAT_MOD_INVALID;
+#else
+      return false;
+#endif
    }
    return true;
 }
@@ -378,10 +388,14 @@ zink_resource_from_handle(struct pipe_screen *pscreen,
                  struct winsys_handle *whandle,
                  unsigned usage)
 {
+#ifdef ZINK_USE_DMABUF
    if (whandle->modifier != DRM_FORMAT_MOD_INVALID)
       return NULL;
 
    return resource_create(pscreen, templ, whandle, usage);
+#else
+   return NULL;
+#endif
 }
 
 static bool



More information about the mesa-commit mailing list