mirror of
https://github.com/encounter/dawn-cmake.git
synced 2025-05-13 10:51:35 +00:00
On macOS we can't rely on having the Vulkan loader installed in the system. So we add the Vulkan loader as an optional dependency of Dawn and use it on macOS when building Dawn in standalone with Vulkan support. Usage of building our own loader might broaden if the loader gains features that are useful on other OSes. For example the ability to pass in the "root ICD" entrypoint to the loader so we can have both Swiftshader and the system driver at the same time. Bug: dawn:388 Change-Id: I7ade4961cce0463c66846ad17aebf95224f1afcc Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/19723 Reviewed-by: Austin Eng <enga@chromium.org> Reviewed-by: Kai Ninomiya <kainino@chromium.org> Commit-Queue: Corentin Wallez <cwallez@chromium.org>
74 lines
2.0 KiB
Plaintext
74 lines
2.0 KiB
Plaintext
# Copyright 2018 The Dawn Authors
|
|
#
|
|
# 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.
|
|
|
|
# This files imports the overrides for Dawn but sets the defaults so that
|
|
# projects including Dawn don't have to set dirs if they happen to use the
|
|
# same.
|
|
# It takes advantage of GN's variable scoping rules to define global variables
|
|
# inside if constructs.
|
|
|
|
import("//build_overrides/dawn.gni")
|
|
|
|
if (!defined(dawn_standalone)) {
|
|
dawn_standalone = false
|
|
}
|
|
|
|
if (!defined(dawn_has_build)) {
|
|
dawn_has_build = true
|
|
}
|
|
|
|
if (!defined(dawn_root)) {
|
|
dawn_root = get_path_info("..", "abspath")
|
|
}
|
|
dawn_gen_root = get_path_info("${dawn_root}", "gen_dir")
|
|
|
|
if (!defined(dawn_jinja2_dir)) {
|
|
dawn_jinja2_dir = "//third_party/jinja2"
|
|
}
|
|
|
|
if (!defined(dawn_glfw_dir)) {
|
|
dawn_glfw_dir = "//third_party/glfw"
|
|
}
|
|
|
|
if (!defined(dawn_googletest_dir)) {
|
|
dawn_googletest_dir = "//third_party/googletest"
|
|
}
|
|
|
|
if (!defined(dawn_shaderc_dir)) {
|
|
dawn_shaderc_dir = "//third_party/shaderc"
|
|
}
|
|
|
|
if (!defined(dawn_spirv_cross_dir)) {
|
|
dawn_spirv_cross_dir = "//third_party/spirv-cross"
|
|
}
|
|
|
|
if (!defined(dawn_spirv_tools_dir)) {
|
|
dawn_spirv_tools_dir = "//third_party/SPIRV-Tools"
|
|
}
|
|
|
|
if (!defined(dawn_swiftshader_dir)) {
|
|
# Default to swiftshader not being available.
|
|
dawn_swiftshader_dir = ""
|
|
}
|
|
|
|
if (!defined(dawn_vulkan_loader_dir)) {
|
|
# Default to the Vulkan loader not being available.
|
|
dawn_vulkan_loader_dir = ""
|
|
}
|
|
|
|
if (!defined(dawn_vulkan_validation_layers_dir)) {
|
|
# Default to VVLs not being available.
|
|
dawn_vulkan_validation_layers_dir = ""
|
|
}
|