skia2/tools/gpu/vk/GrVulkanDefines.h
Greg Daniel da16cce7d9 Use our own checked in Vulkan header to build skia source code.
Core Skia will always include our own SkiaVulkan.h which basically just
includes vulkan_core.h. All platform vulkan specific stuff must be
include by the client in their own vulkan.h file. Our public interface
is set up that we only use vulkan objects that will be present in all
versions of vulkan headers that the client could include.

Bug: skia:
Change-Id: I6673fd91498eabcc923d65d20f2b5e0a89b4ccf6
Reviewed-on: https://skia-review.googlesource.com/142985
Commit-Queue: Greg Daniel <egdaniel@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>
2018-08-01 16:52:20 +00:00

44 lines
1.2 KiB
C

/*
* Copyright 2017 Google Inc.
*
* Use of this source code is governed by a BSD-style license that can be
* found in the LICENSE file.
*/
#ifndef GrVulkanDefines_DEFINED
#define GrVulkanDefines_DEFINED
#include "SkTypes.h"
#if defined(SK_BUILD_FOR_WIN)
# if !defined(VK_USE_PLATFORM_WIN32_KHR)
# define VK_USE_PLATFORM_WIN32_KHR
# endif
#elif defined(SK_BUILD_FOR_ANDROID)
# if !defined(VK_USE_PLATFORM_ANDROID_KHR)
# define VK_USE_PLATFORM_ANDROID_KHR
# endif
#elif defined(SK_BUILD_FOR_UNIX)
# if !defined(VK_USE_PLATFORM_XCB_KHR)
# define VK_USE_PLATFORM_XCB_KHR
# endif
#elif defined(SK_BUILD_FOR_MAC)
# if !defined(VK_USE_PLATFORM_MACOS_MVK)
# define VK_USE_PLATFORM_MACOS_MVK
# endif
#elif defined(SK_BUILD_FOR_IOS)
# if !defined(VK_USE_PLATFORM_IOS_MVK)
# define VK_USE_PLATFORM_IOS_MVK
# endif
#endif
// We create our own function table and never directly call any functions via vk*(). So no
// need to include the prototype functions. We do them for molten vk however.
#if !defined(SK_MOLTENVK) && !defined(VK_NO_PROTOTYPES)
#define VK_NO_PROTOTYPES
#endif
#include <vulkan/vulkan.h> // IWYU pragma: export
#endif