Replace vulkan.h includes with vulkan_core.h
vulkan_core.h only includes 'core' Vulkan declarations, while vulkan.h
consists of vulkan_core.h plus platform-specific headers.
Only Window System Integration (WSI) and closely related source files
should have a need to include vulkan.h. Everything else, in particular
our back-end, should not require anything Vulkan platform-specific.
This avoids issues such as Xlib defining global macros which clash with
C++ type and variable names.
Bug b/124265819
Change-Id: I6c250f27aef39b98a2a8b677c169df060698f104
Reviewed-on: https://swiftshader-review.googlesource.com/c/24709
Tested-by: Nicolas Capens <nicolascapens@google.com>
Kokoro-Presubmit: kokoro <noreply+kokoro@google.com>
Reviewed-by: Alexis Hétu <sugoi@google.com>
diff --git a/src/Device/Surface.hpp b/src/Device/Surface.hpp
index 19d0dd1..49f2e4e 100644
--- a/src/Device/Surface.hpp
+++ b/src/Device/Surface.hpp
@@ -18,7 +18,7 @@
#include "Color.hpp"
#include "Device/Config.hpp"
#include "System/Resource.hpp"
-#include <vulkan/vulkan.h>
+#include <vulkan/vulkan_core.h>
namespace sw
{
diff --git a/src/Vulkan/VkGetProcAddress.h b/src/Vulkan/VkGetProcAddress.h
index 2d5ba5f..e322892 100644
--- a/src/Vulkan/VkGetProcAddress.h
+++ b/src/Vulkan/VkGetProcAddress.h
@@ -15,7 +15,7 @@
#ifndef VK_UTILS_HPP_
#define VK_UTILS_HPP_
-#include <vulkan/vulkan.h>
+#include <vulkan/vulkan_core.h>
namespace vk
{
diff --git a/src/Vulkan/VkMemory.h b/src/Vulkan/VkMemory.h
index 29309b7..7fc3837 100644
--- a/src/Vulkan/VkMemory.h
+++ b/src/Vulkan/VkMemory.h
@@ -15,7 +15,7 @@
#ifndef VK_MEMORY_HPP_
#define VK_MEMORY_HPP_
-#include <vulkan/vulkan.h>
+#include <vulkan/vulkan_core.h>
namespace vk
{
diff --git a/src/Vulkan/VkObject.hpp b/src/Vulkan/VkObject.hpp
index 5a9a414..757d556 100644
--- a/src/Vulkan/VkObject.hpp
+++ b/src/Vulkan/VkObject.hpp
@@ -18,7 +18,8 @@
#include "VkConfig.h"
#include "VkDebug.hpp"
#include "VkMemory.h"
-#include <vulkan/vulkan.h>
+
+#include <vulkan/vulkan_core.h>
#include <vulkan/vk_icd.h>
namespace vk
diff --git a/src/Vulkan/VkPromotedExtensions.cpp b/src/Vulkan/VkPromotedExtensions.cpp
index 8bfe9c4..b244216 100644
--- a/src/Vulkan/VkPromotedExtensions.cpp
+++ b/src/Vulkan/VkPromotedExtensions.cpp
@@ -40,7 +40,7 @@
// VK_KHR_storage_buffer_storage_class (no functions in this extension)
// VK_KHR_variable_pointers (no functions in this extension)
-#include <vulkan/vulkan.h>
+#include <vulkan/vulkan_core.h>
extern "C"
{
diff --git a/src/Vulkan/libVulkan.cpp b/src/Vulkan/libVulkan.cpp
index 66c6a3e..9360e51 100644
--- a/src/Vulkan/libVulkan.cpp
+++ b/src/Vulkan/libVulkan.cpp
@@ -467,22 +467,22 @@
return VK_SUCCESS;
}
-VKAPI_ATTR VkResult VKAPI_CALL vkQueueWaitIdle(VkQueue queue)
-{
- TRACE("(VkQueue queue = 0x%X)", queue);
-
- vk::Cast(queue)->waitIdle();
-
- return VK_SUCCESS;
-}
-
-VKAPI_ATTR VkResult VKAPI_CALL vkDeviceWaitIdle(VkDevice device)
-{
- TRACE("(VkDevice device = 0x%X)", device);
-
- vk::Cast(device)->waitIdle();
-
- return VK_SUCCESS;
+VKAPI_ATTR VkResult VKAPI_CALL vkQueueWaitIdle(VkQueue queue)
+{
+ TRACE("(VkQueue queue = 0x%X)", queue);
+
+ vk::Cast(queue)->waitIdle();
+
+ return VK_SUCCESS;
+}
+
+VKAPI_ATTR VkResult VKAPI_CALL vkDeviceWaitIdle(VkDevice device)
+{
+ TRACE("(VkDevice device = 0x%X)", device);
+
+ vk::Cast(device)->waitIdle();
+
+ return VK_SUCCESS;
}
VKAPI_ATTR VkResult VKAPI_CALL vkAllocateMemory(VkDevice device, const VkMemoryAllocateInfo* pAllocateInfo, const VkAllocationCallbacks* pAllocator, VkDeviceMemory* pMemory)
@@ -1209,8 +1209,8 @@
VKAPI_ATTR VkResult VKAPI_CALL vkResetCommandPool(VkDevice device, VkCommandPool commandPool, VkCommandPoolResetFlags flags)
{
- TRACE("(VkDevice device = 0x%X, VkCommandPool commandPool = 0x%X, VkCommandPoolResetFlags flags = %d )",
- device, commandPool, flags);
+ TRACE("(VkDevice device = 0x%X, VkCommandPool commandPool = 0x%X, VkCommandPoolResetFlags flags = %d )",
+ device, commandPool, flags);
return vk::Cast(commandPool)->reset(flags);
}
@@ -1923,9 +1923,9 @@
VKAPI_ATTR void VKAPI_CALL vkTrimCommandPool(VkDevice device, VkCommandPool commandPool, VkCommandPoolTrimFlags flags)
{
- TRACE("(VkDevice device = 0x%X, VkCommandPool commandPool = 0x%X, VkCommandPoolTrimFlags flags = %d)",
- device, commandPool, flags);
-
+ TRACE("(VkDevice device = 0x%X, VkCommandPool commandPool = 0x%X, VkCommandPoolTrimFlags flags = %d)",
+ device, commandPool, flags);
+
vk::Cast(commandPool)->trim(flags);
}
diff --git a/tests/VulkanUnitTests/unittests.cpp b/tests/VulkanUnitTests/unittests.cpp
index dfde2f8..eb3c8bd 100644
--- a/tests/VulkanUnitTests/unittests.cpp
+++ b/tests/VulkanUnitTests/unittests.cpp
@@ -18,7 +18,7 @@
#include "gtest/gtest.h"
#include "gmock/gmock.h"
-#include <vulkan/vulkan.h>
+#include <vulkan/vulkan_core.h>
#include <vulkan/vk_icd.h>
#include <cstring>