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:
Greg Daniel 2017-04-19 14:44:33 +00:00 committed by Skia Commit-Bot
parent 3a3bc42b7d
commit 5238f994bf
7 changed files with 24 additions and 5952 deletions

View File

@ -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,

View File

@ -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:

View File

@ -127,7 +127,6 @@ cc_library {
"libicuuc",
"libjpeg",
"liblog",
"libnativewindow",
"libpiex",
"libpng",
"libvulkan",

View File

@ -33,6 +33,6 @@
# pragma error "Macros unexpectedly defined."
#endif
#include <vulkan.h>
#include <vulkan/vulkan.h>
#endif

View File

@ -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

File diff suppressed because it is too large Load Diff

View File

@ -11,7 +11,7 @@
#include "vk/GrVkInterface.h"
#include "vk/GrVkUtil.h"
#include <vulkan.h>
#include <vulkan/vulkan.h>
namespace {
/**