summaryrefslogtreecommitdiff
path: root/external/vulkan/BUILD.gn
diff options
context:
space:
mode:
authorjsmall-nvidia <jsmall@nvidia.com>2020-08-21 16:04:42 -0400
committerGitHub <noreply@github.com>2020-08-21 13:04:42 -0700
commitfcac02e405661de311b5ceebbd6d3e2c78bf8aea (patch)
tree6e79865b39f0739d2ac9c3f91cc4129c244b6977 /external/vulkan/BUILD.gn
parent49067fd2e97b40649df3fa2ce096f78c2e45da5a (diff)
Vulkan update/NVAPI support (#1511)
* First pass at incorporating nvapi into test harness. * D3d12 Atomic Float Add via NVAPI working * Dx12 atomic float appears to work. * Atomic float add on Dx12. * Added atomic64 feature addition to vk. Fix correct output for atomic-float-byte-address.slang * Disable atomic float failing tests. * Upgraded VK headers. * Detect atomic float availability on VK. * Try to get test working for in64 atomic. * Made HLSL prelude controlled via the render-test requirements. * Added -enable-nvapi to premake. * Fix D3D12Renderer when NVAPI is not available. * Small improvements to VKRenderer. * Improve atomic documentation in target-compatibility.md.
Diffstat (limited to 'external/vulkan/BUILD.gn')
-rw-r--r--external/vulkan/BUILD.gn54
1 files changed, 54 insertions, 0 deletions
diff --git a/external/vulkan/BUILD.gn b/external/vulkan/BUILD.gn
new file mode 100644
index 000000000..67b9cf624
--- /dev/null
+++ b/external/vulkan/BUILD.gn
@@ -0,0 +1,54 @@
+# Copyright (C) 2018-2019 The ANGLE Project Authors.
+# Copyright (C) 2019 LunarG, 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
+#
+# https://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.
+
+import("//build_overrides/vulkan_headers.gni")
+
+config("vulkan_headers_config") {
+ include_dirs = [ "include" ]
+
+ if (is_win) {
+ defines = [ "VK_USE_PLATFORM_WIN32_KHR" ]
+ }
+ if (defined(vulkan_use_x11) && vulkan_use_x11) {
+ defines = [ "VK_USE_PLATFORM_XCB_KHR" ]
+ }
+ if (is_android) {
+ defines = [ "VK_USE_PLATFORM_ANDROID_KHR" ]
+ }
+ if (is_fuchsia) {
+ defines = [ "VK_USE_PLATFORM_FUCHSIA" ]
+ }
+ if (is_mac) {
+ defines = [ "VK_USE_PLATFORM_METAL_EXT" ]
+ }
+ if (defined(is_ggp) && is_ggp) {
+ defines = [ "VK_USE_PLATFORM_GGP" ]
+ }
+}
+
+# Vulkan headers only, no compiled sources.
+source_set("vulkan_headers") {
+ sources = [
+ "include/vulkan/vk_icd.h",
+ "include/vulkan/vk_layer.h",
+ "include/vulkan/vk_platform.h",
+ "include/vulkan/vk_sdk_platform.h",
+ "include/vulkan/vulkan.h",
+ "include/vulkan/vulkan.hpp",
+ "include/vulkan/vulkan_core.h",
+ ]
+ public_configs = [ ":vulkan_headers_config" ]
+}
+