Module: wine Branch: master Commit: 6380d57c698d157f21e11bd6f16382a2d8effc47 URL: https://source.winehq.org/git/wine.git/?a=commit;h=6380d57c698d157f21e11bd6f...
Author: Józef Kucia jkucia@codeweavers.com Date: Tue Apr 3 11:13:10 2018 +0200
winevulkan: Support VK_NO_PROTOTYPES in our Vulkan header.
Signed-off-by: Józef Kucia jkucia@codeweavers.com Signed-off-by: Alexandre Julliard julliard@winehq.org
---
dlls/vulkan-1/vulkan.c | 1 + dlls/winevulkan/make_vulkan | 7 ++----- dlls/winevulkan/vulkan.c | 4 ---- dlls/winevulkan/vulkan_private.h | 6 ++++++ dlls/winevulkan/vulkan_thunks.c | 4 ---- dlls/winex11.drv/vulkan.c | 1 + include/wine/vulkan.h | 2 ++ 7 files changed, 12 insertions(+), 13 deletions(-)
diff --git a/dlls/vulkan-1/vulkan.c b/dlls/vulkan-1/vulkan.c index 6f7ab43..82fd868 100644 --- a/dlls/vulkan-1/vulkan.c +++ b/dlls/vulkan-1/vulkan.c @@ -23,6 +23,7 @@ #include "winbase.h"
#include "wine/debug.h" +#define VK_NO_PROTOTYPES #include "wine/vulkan.h"
WINE_DEFAULT_DEBUG_CHANNEL(vulkan); diff --git a/dlls/winevulkan/make_vulkan b/dlls/winevulkan/make_vulkan index edaaadb..7465395 100755 --- a/dlls/winevulkan/make_vulkan +++ b/dlls/winevulkan/make_vulkan @@ -1792,10 +1792,6 @@ class VkGenerator(object): f.write("#include "config.h"\n") f.write("#include "wine/port.h"\n\n")
- f.write("#include "wine/debug.h"\n") - f.write("#include "wine/heap.h"\n") - f.write("#include "wine/vulkan.h"\n") - f.write("#include "wine/vulkan_driver.h"\n") f.write("#include "vulkan_private.h"\n\n")
f.write("WINE_DEFAULT_DEBUG_CHANNEL(vulkan);\n\n") @@ -2071,6 +2067,7 @@ class VkGenerator(object): LOGGER.debug("Generating struct: {0}".format(struct.name)) f.write(struct.definition(align=True))
+ f.write("#ifndef VK_NO_PROTOTYPES\n") for func in self.registry.funcs.values(): if not func.is_required(): LOGGER.debug("Skipping API definition for: {0}".format(func.name)) @@ -2078,7 +2075,7 @@ class VkGenerator(object):
LOGGER.debug("Generating API definition for: {0}".format(func.name)) f.write("{0};\n".format(func.prototype(call_conv="VKAPI_CALL"))) - f.write("\n") + f.write("#endif /* VK_NO_PROTOTYPES */\n\n")
f.write("#endif /* __WINE_VULKAN_H */\n")
diff --git a/dlls/winevulkan/vulkan.c b/dlls/winevulkan/vulkan.c index 886b345..c507e37 100644 --- a/dlls/winevulkan/vulkan.c +++ b/dlls/winevulkan/vulkan.c @@ -23,10 +23,6 @@ #include "winbase.h" #include "winuser.h"
-#include "wine/debug.h" -#include "wine/heap.h" -#include "wine/vulkan.h" -#include "wine/vulkan_driver.h" #include "vulkan_private.h"
WINE_DEFAULT_DEBUG_CHANNEL(vulkan); diff --git a/dlls/winevulkan/vulkan_private.h b/dlls/winevulkan/vulkan_private.h index 30ab625..ce13b1a 100644 --- a/dlls/winevulkan/vulkan_private.h +++ b/dlls/winevulkan/vulkan_private.h @@ -25,6 +25,12 @@ #define USE_STRUCT_CONVERSION #endif
+#include "wine/debug.h" +#include "wine/heap.h" +#define VK_NO_PROTOTYPES +#include "wine/vulkan.h" +#include "wine/vulkan_driver.h" + #include "vulkan_thunks.h"
/* Magic value defined by Vulkan ICD / Loader spec */ diff --git a/dlls/winevulkan/vulkan_thunks.c b/dlls/winevulkan/vulkan_thunks.c index 17a2d2f..31f78dc 100644 --- a/dlls/winevulkan/vulkan_thunks.c +++ b/dlls/winevulkan/vulkan_thunks.c @@ -3,10 +3,6 @@ #include "config.h" #include "wine/port.h"
-#include "wine/debug.h" -#include "wine/heap.h" -#include "wine/vulkan.h" -#include "wine/vulkan_driver.h" #include "vulkan_private.h"
WINE_DEFAULT_DEBUG_CHANNEL(vulkan); diff --git a/dlls/winex11.drv/vulkan.c b/dlls/winex11.drv/vulkan.c index 28563f8..148908b 100644 --- a/dlls/winex11.drv/vulkan.c +++ b/dlls/winex11.drv/vulkan.c @@ -33,6 +33,7 @@
/* We only want host compatible structures and don't need alignment. */ #define WINE_VK_ALIGN(x) +#define VK_NO_PROTOTYPES
#include "wine/vulkan.h" #include "wine/vulkan_driver.h" diff --git a/include/wine/vulkan.h b/include/wine/vulkan.h index 1ab2701..490af53 100644 --- a/include/wine/vulkan.h +++ b/include/wine/vulkan.h @@ -2617,6 +2617,7 @@ typedef struct VkPhysicalDeviceProperties2KHR VkPhysicalDeviceProperties WINE_VK_ALIGN(8) properties; } VkPhysicalDeviceProperties2KHR;
+#ifndef VK_NO_PROTOTYPES VkResult VKAPI_CALL vkAcquireNextImageKHR(VkDevice device, VkSwapchainKHR swapchain, uint64_t timeout, VkSemaphore semaphore, VkFence fence, uint32_t *pImageIndex); VkResult VKAPI_CALL vkAllocateCommandBuffers(VkDevice device, const VkCommandBufferAllocateInfo *pAllocateInfo, VkCommandBuffer *pCommandBuffers); VkResult VKAPI_CALL vkAllocateDescriptorSets(VkDevice device, const VkDescriptorSetAllocateInfo *pAllocateInfo, VkDescriptorSet *pDescriptorSets); @@ -2783,5 +2784,6 @@ void VKAPI_CALL vkUnmapMemory(VkDevice device, VkDeviceMemory memory); void VKAPI_CALL vkUpdateDescriptorSetWithTemplateKHR(VkDevice device, VkDescriptorSet descriptorSet, VkDescriptorUpdateTemplateKHR descriptorUpdateTemplate, const void *pData); void VKAPI_CALL vkUpdateDescriptorSets(VkDevice device, uint32_t descriptorWriteCount, const VkWriteDescriptorSet *pDescriptorWrites, uint32_t descriptorCopyCount, const VkCopyDescriptorSet *pDescriptorCopies); VkResult VKAPI_CALL vkWaitForFences(VkDevice device, uint32_t fenceCount, const VkFence *pFences, VkBool32 waitAll, uint64_t timeout); +#endif /* VK_NO_PROTOTYPES */
#endif /* __WINE_VULKAN_H */