summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorEllie Hermaszewska <ellieh@nvidia.com>2023-09-14 00:56:53 +0800
committerGitHub <noreply@github.com>2023-09-13 09:56:53 -0700
commitc12779b831477a39f7c8db3c88e75fc39c767bb0 (patch)
tree80fa12614e2325b3ceff5b1129d24289d1c49ede
parent894237e54b035fe4722c0cd38d0eb4ebcb38fe1e (diff)
Fix build with --enable-xlib=false (#3203)
* Fix build with --enable-xlib=false * Correct brace location --------- Co-authored-by: Yong He <yonghe@outlook.com>
-rw-r--r--tools/gfx/vulkan/vk-api.h5
-rw-r--r--tools/gfx/vulkan/vk-device.cpp4
-rw-r--r--tools/gfx/vulkan/vk-swap-chain.cpp4
3 files changed, 10 insertions, 3 deletions
diff --git a/tools/gfx/vulkan/vk-api.h b/tools/gfx/vulkan/vk-api.h
index 3df6436d9..d20cd555c 100644
--- a/tools/gfx/vulkan/vk-api.h
+++ b/tools/gfx/vulkan/vk-api.h
@@ -141,10 +141,13 @@ namespace gfx {
# define VK_API_INSTANCE_PLATFORM_KHR_PROCS(x) \
x(vkCreateWin32SurfaceKHR) \
/* */
-#else
+#elif SLANG_ENABLE_XLIB
# define VK_API_INSTANCE_PLATFORM_KHR_PROCS(x) \
x(vkCreateXlibSurfaceKHR) \
/* */
+#else
+# define VK_API_INSTANCE_PLATFORM_KHR_PROCS(x) \
+ /* */
#endif
#define VK_API_INSTANCE_KHR_PROCS(x) \
diff --git a/tools/gfx/vulkan/vk-device.cpp b/tools/gfx/vulkan/vk-device.cpp
index e71337ef6..4fbf987e9 100644
--- a/tools/gfx/vulkan/vk-device.cpp
+++ b/tools/gfx/vulkan/vk-device.cpp
@@ -171,11 +171,13 @@ Result DeviceImpl::initVulkanInstanceAndDevice(
#if SLANG_WINDOWS_FAMILY
instanceExtensions.add(VK_KHR_WIN32_SURFACE_EXTENSION_NAME);
#elif defined(SLANG_ENABLE_XLIB)
+
instanceExtensions.add(VK_KHR_XLIB_SURFACE_EXTENSION_NAME);
#endif
+ }
+
if (ENABLE_VALIDATION_LAYER || isGfxDebugLayerEnabled())
instanceExtensions.add(VK_EXT_DEBUG_REPORT_EXTENSION_NAME);
- }
VkInstanceCreateInfo instanceCreateInfo = { VK_STRUCTURE_TYPE_INSTANCE_CREATE_INFO };
instanceCreateInfo.pApplicationInfo = &applicationInfo;
diff --git a/tools/gfx/vulkan/vk-swap-chain.cpp b/tools/gfx/vulkan/vk-swap-chain.cpp
index 158919197..384ca86ed 100644
--- a/tools/gfx/vulkan/vk-swap-chain.cpp
+++ b/tools/gfx/vulkan/vk-swap-chain.cpp
@@ -221,13 +221,15 @@ Result SwapchainImpl::init(DeviceImpl* renderer, const ISwapchain::Desc& desc, W
surfaceCreateInfo.hwnd = (HWND)window.handleValues[0];
SLANG_VK_RETURN_ON_FAIL(
m_api->vkCreateWin32SurfaceKHR(m_api->m_instance, &surfaceCreateInfo, nullptr, &m_surface));
-#else
+#elif SLANG_ENABLE_XLIB
VkXlibSurfaceCreateInfoKHR surfaceCreateInfo = {};
surfaceCreateInfo.sType = VK_STRUCTURE_TYPE_XLIB_SURFACE_CREATE_INFO_KHR;
surfaceCreateInfo.dpy = (Display*)window.handleValues[0];
surfaceCreateInfo.window = (Window)window.handleValues[1];
SLANG_VK_RETURN_ON_FAIL(
m_api->vkCreateXlibSurfaceKHR(m_api->m_instance, &surfaceCreateInfo, nullptr, &m_surface));
+#else
+ return SLANG_E_NOT_AVAILABLE;
#endif
VkBool32 supported = false;