2016-03-28 14:03:06 +00:00
|
|
|
|
|
|
|
/*
|
|
|
|
* Copyright 2016 Google Inc.
|
|
|
|
*
|
|
|
|
* Use of this source code is governed by a BSD-style license that can be
|
|
|
|
* found in the LICENSE file.
|
|
|
|
*/
|
|
|
|
|
|
|
|
#ifndef GrVkDefines_DEFINED
|
|
|
|
#define GrVkDefines_DEFINED
|
|
|
|
|
2017-05-01 13:50:58 +00:00
|
|
|
#ifdef SK_VULKAN
|
|
|
|
|
2017-12-07 17:48:30 +00:00
|
|
|
#ifdef SK_VULKAN_HEADER
|
|
|
|
#include SK_VULKAN_HEADER
|
|
|
|
#else
|
|
|
|
// This is deprecated and all clients should define their own custum header shim that sets up
|
|
|
|
// defines and includes the vulkan.h header. Then they should define SK_VULKAN_HEADER or set the
|
|
|
|
// skia_vulkan_header in gn to point to their custom header.
|
2018-01-24 17:42:55 +00:00
|
|
|
# if defined(SK_BUILD_FOR_WIN)
|
2017-12-07 17:48:30 +00:00
|
|
|
# if !defined(VK_USE_PLATFORM_WIN32_KHR)
|
|
|
|
# define VK_USE_PLATFORM_WIN32_KHR
|
2017-04-05 16:52:55 +00:00
|
|
|
# endif
|
2017-12-07 17:48:30 +00:00
|
|
|
# elif defined(SK_BUILD_FOR_ANDROID)
|
|
|
|
# if !defined(VK_USE_PLATFORM_ANDROID_KHR)
|
|
|
|
# define VK_USE_PLATFORM_ANDROID_KHR
|
2017-04-05 16:52:55 +00:00
|
|
|
# endif
|
2017-12-07 17:48:30 +00:00
|
|
|
# elif defined(SK_BUILD_FOR_UNIX)
|
|
|
|
# if defined(__Fuchsia__)
|
|
|
|
# if !defined(VK_USE_PLATFORM_MAGMA_KHR)
|
|
|
|
# define VK_USE_PLATFORM_MAGMA_KHR
|
|
|
|
# endif
|
|
|
|
# else
|
|
|
|
# if !defined(VK_USE_PLATFORM_XCB_KHR)
|
|
|
|
# define VK_USE_PLATFORM_XCB_KHR
|
|
|
|
# endif
|
|
|
|
# endif
|
|
|
|
# endif
|
2016-05-11 17:09:18 +00:00
|
|
|
|
2017-11-10 15:11:57 +00:00
|
|
|
// We create our own function table and never directly call any functions via vk*(). So no need to
|
|
|
|
// include the prototype functions.
|
2017-12-07 17:48:30 +00:00
|
|
|
# if !defined(VK_NO_PROTOTYPES) && !defined(SK_BUILD_FOR_ANDROID_FRAMEWORK)
|
|
|
|
# define VK_NO_PROTOTYPES
|
|
|
|
# endif
|
2017-11-10 15:11:57 +00:00
|
|
|
|
2017-12-07 17:48:30 +00:00
|
|
|
# include <vulkan/vulkan.h>
|
|
|
|
#endif // SK_VULKAN_HEADER
|
2017-04-25 17:38:26 +00:00
|
|
|
|
|
|
|
#define SKIA_REQUIRED_VULKAN_HEADER_VERSION 17
|
|
|
|
#if VK_HEADER_VERSION < SKIA_REQUIRED_VULKAN_HEADER_VERSION
|
|
|
|
#error "Vulkan header version is too low"
|
|
|
|
#endif
|
2016-03-28 14:03:06 +00:00
|
|
|
|
2017-11-02 16:56:09 +00:00
|
|
|
#endif
|
2017-11-01 23:15:06 +00:00
|
|
|
|
2017-11-02 16:56:09 +00:00
|
|
|
#endif
|