Revert "Check-in vulkan.h into third_party and use that instead of local sdk vulkan.h"
This reverts commit 3a3bc42b7d
.
Reason for revert: still breaking android
Original change's description:
> Check-in vulkan.h into third_party and use that instead of local sdk vulkan.h
>
> This change is needed since once we start getting support for varrying of extensions
> and newer version support in general, we need a common vulkan header to compile off of.
> Otherwise we will run into problems if clients have older headers that don't include
> functions/symbols we are trying to use.
>
> Additionally it has the benefit of not needing to add if SK_VULKAN around code in
> include which wants to use vulkan symbols.
>
> This is a reupload of CL: https://skia-review.googlesource.com/13651
>
> Bug: skia:
> Change-Id: I091f526b8c4a61774c34834cd7bfb7e2c822ff5c
> Reviewed-on: https://skia-review.googlesource.com/13804
> Reviewed-by: Derek Sollenberger <djsollen@google.com>
> Commit-Queue: Greg Daniel <egdaniel@google.com>
>
TBR=djsollen@google.com,egdaniel@google.com,mtklein@google.com,jvanverth@google.com,reviews@skia.org
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
Change-Id: Ic595e32005761170156499cfb6efc1acfce96001
Reviewed-on: https://skia-review.googlesource.com/13806
Reviewed-by: Greg Daniel <egdaniel@google.com>
Commit-Queue: Greg Daniel <egdaniel@google.com>
This commit is contained in:
parent
3a3bc42b7d
commit
5238f994bf
20
BUILD.gn
20
BUILD.gn
@ -54,6 +54,13 @@ declare_args() {
|
||||
} else {
|
||||
skia_use_vulkan = skia_vulkan_sdk != ""
|
||||
}
|
||||
if (is_win) {
|
||||
skia_vulkan_headers_path = "$skia_vulkan_sdk/Include"
|
||||
} else if (is_fuchsia) {
|
||||
skia_vulkan_headers_path = "$fuchsia_vulkan_sdk/include"
|
||||
} else {
|
||||
skia_vulkan_headers_path = "$skia_vulkan_sdk/include"
|
||||
}
|
||||
}
|
||||
|
||||
# Our tools require static linking (they use non-exported symbols).
|
||||
@ -75,7 +82,7 @@ skia_public_includes = [
|
||||
"include/svg",
|
||||
"include/utils",
|
||||
"include/utils/mac",
|
||||
"third_party/vulkan",
|
||||
skia_vulkan_headers_path,
|
||||
]
|
||||
|
||||
# Skia public API, generally provided by :skia.
|
||||
@ -743,8 +750,15 @@ if (skia_enable_tools) {
|
||||
public_configs = [ ":skia.h_config" ]
|
||||
skia_h = "$target_gen_dir/skia.h"
|
||||
script = "gn/find_headers.py"
|
||||
args = [ rebase_path(skia_h, root_build_dir) ] +
|
||||
rebase_path(skia_public_includes)
|
||||
if (skia_use_vulkan) {
|
||||
use_vulkan_string = "True"
|
||||
} else {
|
||||
use_vulkan_string = "False"
|
||||
}
|
||||
args = [
|
||||
rebase_path(skia_h, root_build_dir),
|
||||
use_vulkan_string,
|
||||
] + rebase_path(skia_public_includes - [ skia_vulkan_headers_path ])
|
||||
depfile = "$skia_h.deps"
|
||||
outputs = [
|
||||
skia_h,
|
||||
|
@ -15,7 +15,8 @@ import sys
|
||||
# very same mechanism Ninja uses to know which .h files affect which .cpp files.
|
||||
|
||||
skia_h = sys.argv[1]
|
||||
include_dirs = sys.argv[2:]
|
||||
use_vulkan = eval(sys.argv[2])
|
||||
include_dirs = sys.argv[3:]
|
||||
|
||||
blacklist = {
|
||||
"GrGLConfig_chrome.h",
|
||||
@ -26,8 +27,9 @@ headers = []
|
||||
for directory in include_dirs:
|
||||
for d, _, files in os.walk(directory):
|
||||
for f in files:
|
||||
if f.endswith('.h') and f not in blacklist:
|
||||
headers.append(os.path.join(d,f))
|
||||
if not d.endswith('vk') or use_vulkan:
|
||||
if f.endswith('.h') and f not in blacklist:
|
||||
headers.append(os.path.join(d,f))
|
||||
headers.sort()
|
||||
|
||||
with open(skia_h, "w") as f:
|
||||
|
@ -127,7 +127,6 @@ cc_library {
|
||||
"libicuuc",
|
||||
"libjpeg",
|
||||
"liblog",
|
||||
"libnativewindow",
|
||||
"libpiex",
|
||||
"libpng",
|
||||
"libvulkan",
|
||||
|
@ -33,6 +33,6 @@
|
||||
# pragma error "Macros unexpectedly defined."
|
||||
#endif
|
||||
|
||||
#include <vulkan.h>
|
||||
#include <vulkan/vulkan.h>
|
||||
|
||||
#endif
|
||||
|
120
third_party/vulkan/vk_platform.h
vendored
120
third_party/vulkan/vk_platform.h
vendored
@ -1,120 +0,0 @@
|
||||
//
|
||||
// File: vk_platform.h
|
||||
//
|
||||
/*
|
||||
** Copyright (c) 2014-2017 The Khronos Group Inc.
|
||||
**
|
||||
** Licensed under the Apache License, Version 2.0 (the "License");
|
||||
** you may not use this file except in compliance with the License.
|
||||
** You may obtain a copy of the License at
|
||||
**
|
||||
** http://www.apache.org/licenses/LICENSE-2.0
|
||||
**
|
||||
** Unless required by applicable law or agreed to in writing, software
|
||||
** distributed under the License is distributed on an "AS IS" BASIS,
|
||||
** WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
** See the License for the specific language governing permissions and
|
||||
** limitations under the License.
|
||||
*/
|
||||
|
||||
|
||||
#ifndef VK_PLATFORM_H_
|
||||
#define VK_PLATFORM_H_
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C"
|
||||
{
|
||||
#endif // __cplusplus
|
||||
|
||||
/*
|
||||
***************************************************************************************************
|
||||
* Platform-specific directives and type declarations
|
||||
***************************************************************************************************
|
||||
*/
|
||||
|
||||
/* Platform-specific calling convention macros.
|
||||
*
|
||||
* Platforms should define these so that Vulkan clients call Vulkan commands
|
||||
* with the same calling conventions that the Vulkan implementation expects.
|
||||
*
|
||||
* VKAPI_ATTR - Placed before the return type in function declarations.
|
||||
* Useful for C++11 and GCC/Clang-style function attribute syntax.
|
||||
* VKAPI_CALL - Placed after the return type in function declarations.
|
||||
* Useful for MSVC-style calling convention syntax.
|
||||
* VKAPI_PTR - Placed between the '(' and '*' in function pointer types.
|
||||
*
|
||||
* Function declaration: VKAPI_ATTR void VKAPI_CALL vkCommand(void);
|
||||
* Function pointer type: typedef void (VKAPI_PTR *PFN_vkCommand)(void);
|
||||
*/
|
||||
#if defined(_WIN32)
|
||||
// On Windows, Vulkan commands use the stdcall convention
|
||||
#define VKAPI_ATTR
|
||||
#define VKAPI_CALL __stdcall
|
||||
#define VKAPI_PTR VKAPI_CALL
|
||||
#elif defined(__ANDROID__) && defined(__ARM_ARCH) && __ARM_ARCH < 7
|
||||
#error "Vulkan isn't supported for the 'armeabi' NDK ABI"
|
||||
#elif defined(__ANDROID__) && defined(__ARM_ARCH) && __ARM_ARCH >= 7 && defined(__ARM_32BIT_STATE)
|
||||
// On Android 32-bit ARM targets, Vulkan functions use the "hardfloat"
|
||||
// calling convention, i.e. float parameters are passed in registers. This
|
||||
// is true even if the rest of the application passes floats on the stack,
|
||||
// as it does by default when compiling for the armeabi-v7a NDK ABI.
|
||||
#define VKAPI_ATTR __attribute__((pcs("aapcs-vfp")))
|
||||
#define VKAPI_CALL
|
||||
#define VKAPI_PTR VKAPI_ATTR
|
||||
#else
|
||||
// On other platforms, use the default calling convention
|
||||
#define VKAPI_ATTR
|
||||
#define VKAPI_CALL
|
||||
#define VKAPI_PTR
|
||||
#endif
|
||||
|
||||
#include <stddef.h>
|
||||
|
||||
#if !defined(VK_NO_STDINT_H)
|
||||
#if defined(_MSC_VER) && (_MSC_VER < 1600)
|
||||
typedef signed __int8 int8_t;
|
||||
typedef unsigned __int8 uint8_t;
|
||||
typedef signed __int16 int16_t;
|
||||
typedef unsigned __int16 uint16_t;
|
||||
typedef signed __int32 int32_t;
|
||||
typedef unsigned __int32 uint32_t;
|
||||
typedef signed __int64 int64_t;
|
||||
typedef unsigned __int64 uint64_t;
|
||||
#else
|
||||
#include <stdint.h>
|
||||
#endif
|
||||
#endif // !defined(VK_NO_STDINT_H)
|
||||
|
||||
#ifdef __cplusplus
|
||||
} // extern "C"
|
||||
#endif // __cplusplus
|
||||
|
||||
// Platform-specific headers required by platform window system extensions.
|
||||
// These are enabled prior to #including "vulkan.h". The same enable then
|
||||
// controls inclusion of the extension interfaces in vulkan.h.
|
||||
|
||||
#ifdef VK_USE_PLATFORM_ANDROID_KHR
|
||||
#include <android/native_window.h>
|
||||
#endif
|
||||
|
||||
#ifdef VK_USE_PLATFORM_MIR_KHR
|
||||
#include <mir_toolkit/client_types.h>
|
||||
#endif
|
||||
|
||||
#ifdef VK_USE_PLATFORM_WAYLAND_KHR
|
||||
#include <wayland-client.h>
|
||||
#endif
|
||||
|
||||
#ifdef VK_USE_PLATFORM_WIN32_KHR
|
||||
#include <windows.h>
|
||||
#endif
|
||||
|
||||
#ifdef VK_USE_PLATFORM_XLIB_KHR
|
||||
#include <X11/Xlib.h>
|
||||
#endif
|
||||
|
||||
#ifdef VK_USE_PLATFORM_XCB_KHR
|
||||
#include <xcb/xcb.h>
|
||||
#endif
|
||||
|
||||
#endif
|
5823
third_party/vulkan/vulkan.h
vendored
5823
third_party/vulkan/vulkan.h
vendored
File diff suppressed because it is too large
Load Diff
@ -11,7 +11,7 @@
|
||||
|
||||
#include "vk/GrVkInterface.h"
|
||||
#include "vk/GrVkUtil.h"
|
||||
#include <vulkan.h>
|
||||
#include <vulkan/vulkan.h>
|
||||
|
||||
namespace {
|
||||
/**
|
||||
|
Loading…
Reference in New Issue
Block a user