Use Jamie's 7-layer burrito of Vulkan DEPS.

This allows us to roll all Vulkan- and SPIRV-related dependencies
simultaneously (which are often inter-dependent).

This change also implicitly rolls the dependencies to the revs in ANGLE.

Change-Id: I50a1e5b2ef706ffbfbc22f5783321820bb50ae96
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/36500
Commit-Queue: Stephen White <senorblanco@chromium.org>
Reviewed-by: Austin Eng <enga@chromium.org>
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
This commit is contained in:
Stephen White 2021-01-06 17:41:50 +00:00 committed by Commit Bot service account
parent bc21cfa6cc
commit f1fa60b912
12 changed files with 30 additions and 62 deletions

8
.gitignore vendored
View File

@ -7,12 +7,10 @@
build build
buildtools buildtools
testing testing
third_party/SPIRV-Tools/
third_party/binutils/ third_party/binutils/
third_party/clang-format/ third_party/clang-format/
third_party/glfw/ third_party/glfw/
third_party/glm/ third_party/glm/
third_party/glslang/
third_party/googletest/ third_party/googletest/
third_party/jinja2/ third_party/jinja2/
third_party/jsoncpp/ third_party/jsoncpp/
@ -20,12 +18,8 @@ third_party/llvm-build
third_party/markupsafe/ third_party/markupsafe/
third_party/shaderc/ third_party/shaderc/
third_party/swiftshader/ third_party/swiftshader/
third_party/spirv-cross/
third_party/spirv-headers/
third_party/tint/ third_party/tint/
third_party/vulkan-headers/ third_party/vulkan-deps/
third_party/vulkan-loader/
third_party/vulkan-validation-layers/
tools tools
out out

View File

@ -79,12 +79,12 @@ set(DAWN_THIRD_PARTY_DIR "${Dawn_SOURCE_DIR}/third_party" CACHE STRING "Director
set(DAWN_GLFW_DIR "${DAWN_THIRD_PARTY_DIR}/glfw" CACHE STRING "Directory in which to find GLFW") set(DAWN_GLFW_DIR "${DAWN_THIRD_PARTY_DIR}/glfw" CACHE STRING "Directory in which to find GLFW")
set(DAWN_GLM_DIR "${DAWN_THIRD_PARTY_DIR}/glm" CACHE STRING "Directory in which to find GLM") set(DAWN_GLM_DIR "${DAWN_THIRD_PARTY_DIR}/glm" CACHE STRING "Directory in which to find GLM")
set(DAWN_GLSLANG_DIR "${DAWN_THIRD_PARTY_DIR}/glslang" CACHE STRING "Directory in which to find GLSLang") set(DAWN_GLSLANG_DIR "${DAWN_THIRD_PARTY_DIR}/vulkan-deps/glslang/src" CACHE STRING "Directory in which to find GLSLang")
set(DAWN_JINJA2_DIR "${DAWN_THIRD_PARTY_DIR}/jinja2" CACHE STRING "Directory in which to find Jinja2") set(DAWN_JINJA2_DIR "${DAWN_THIRD_PARTY_DIR}/jinja2" CACHE STRING "Directory in which to find Jinja2")
set(DAWN_SHADERC_DIR "${DAWN_THIRD_PARTY_DIR}/shaderc" CACHE STRING "Directory in which to find shaderc") set(DAWN_SHADERC_DIR "${DAWN_THIRD_PARTY_DIR}/shaderc" CACHE STRING "Directory in which to find shaderc")
set(DAWN_SPIRV_CROSS_DIR "${DAWN_THIRD_PARTY_DIR}/spirv-cross" CACHE STRING "Directory in which to find SPIRV-Cross") set(DAWN_SPIRV_CROSS_DIR "${DAWN_THIRD_PARTY_DIR}/vulkan_deps/spirv-cross/src" CACHE STRING "Directory in which to find SPIRV-Cross")
set(DAWN_SPIRV_HEADERS_DIR "${DAWN_THIRD_PARTY_DIR}/spirv-headers" CACHE STRING "Directory in which to find SPIRV-Headers") set(DAWN_SPIRV_HEADERS_DIR "${DAWN_THIRD_PARTY_DIR}/vulkan-deps/spirv-headers/src" CACHE STRING "Directory in which to find SPIRV-Headers")
set(DAWN_SPIRV_TOOLS_DIR "${DAWN_THIRD_PARTY_DIR}/SPIRV-Tools" CACHE STRING "Directory in which to find SPIRV-Tools") set(DAWN_SPIRV_TOOLS_DIR "${DAWN_THIRD_PARTY_DIR}/vulkan-deps/spirv-tools/src" CACHE STRING "Directory in which to find SPIRV-Tools")
set(DAWN_TINT_DIR "${DAWN_THIRD_PARTY_DIR}/tint" CACHE STRING "Directory in which to find Tint") set(DAWN_TINT_DIR "${DAWN_THIRD_PARTY_DIR}/tint" CACHE STRING "Directory in which to find Tint")
################################################################################ ################################################################################

39
DEPS
View File

@ -56,25 +56,7 @@ deps = {
'condition': 'dawn_standalone', 'condition': 'dawn_standalone',
}, },
# SPIRV-Cross # SPIRV compiler dependencies: shaderc
'third_party/spirv-cross': {
'url': '{chromium_git}/external/github.com/KhronosGroup/SPIRV-Cross@be527632a6c80291ab012a79758e0e41224ad5e2',
'condition': 'dawn_standalone',
},
# SPIRV compiler dependencies: SPIRV-Tools, SPIRV-headers, glslang and shaderc
'third_party/SPIRV-Tools': {
'url': '{chromium_git}/external/github.com/KhronosGroup/SPIRV-Tools@671914c28e8249f0a555726a0f3f38691fe5c1df',
'condition': 'dawn_standalone',
},
'third_party/spirv-headers': {
'url': '{chromium_git}/external/github.com/KhronosGroup/SPIRV-Headers@5ab5c96198f30804a6a29961b8905f292a8ae600',
'condition': 'dawn_standalone',
},
'third_party/glslang': {
'url': '{chromium_git}/external/github.com/KhronosGroup/glslang@4d41da3b810bc11c1c8a954e516638e437360a67',
'condition': 'dawn_standalone',
},
'third_party/shaderc': { 'third_party/shaderc': {
'url': '{chromium_git}/external/github.com/google/shaderc@6216d098d8abe3ccda8781016c4f69372c48afb9', 'url': '{chromium_git}/external/github.com/google/shaderc@6216d098d8abe3ccda8781016c4f69372c48afb9',
'condition': 'dawn_standalone', 'condition': 'dawn_standalone',
@ -98,25 +80,15 @@ deps = {
'condition': 'dawn_standalone', 'condition': 'dawn_standalone',
}, },
# Khronos Vulkan headers, validation layers and loader.
'third_party/vulkan-headers': {
'url': '{chromium_git}/external/github.com/KhronosGroup/Vulkan-Headers@30e70cbd9850560cb55bffadb8017e90c04c42f5',
'condition': 'dawn_standalone',
},
'third_party/vulkan-validation-layers': {
'url': '{chromium_git}/external/github.com/KhronosGroup/Vulkan-ValidationLayers@8756b1cb930a6a6125dc070b01e4fce5dc6f352a',
'condition': 'dawn_standalone',
},
'third_party/vulkan-loader': {
'url': '{chromium_git}/external/github.com/KhronosGroup/Vulkan-Loader@d846ea5a2427eb0119cf98288aa337eced10edbd',
'condition': 'dawn_standalone',
},
'third_party/swiftshader': { 'third_party/swiftshader': {
'url': '{swiftshader_git}/SwiftShader@df17a76102dfabb3f1bd6e51449cece9f77b45e3', 'url': '{swiftshader_git}/SwiftShader@df17a76102dfabb3f1bd6e51449cece9f77b45e3',
'condition': 'dawn_standalone', 'condition': 'dawn_standalone',
}, },
'third_party/vulkan-deps': {
'url': '{chromium_git}/vulkan-deps@b08eace32e9cb8dd7dce9866f051558ac57acb15',
'condition': 'dawn_standalone',
},
} }
hooks = [ hooks = [
@ -216,4 +188,5 @@ hooks = [
recursedeps = [ recursedeps = [
# buildtools provides clang_format, libc++, and libc++abi # buildtools provides clang_format, libc++, and libc++abi
'buildtools', 'buildtools',
'third_party/vulkan-deps',
] ]

View File

@ -32,9 +32,10 @@ dawn_glfw_dir = "//third_party/glfw"
dawn_glm_dir = "//third_party/glm" dawn_glm_dir = "//third_party/glm"
dawn_googletest_dir = "//third_party/googletest" dawn_googletest_dir = "//third_party/googletest"
dawn_shaderc_dir = "//third_party/shaderc" dawn_shaderc_dir = "//third_party/shaderc"
dawn_spirv_tools_dir = "//third_party/SPIRV-Tools" dawn_spirv_tools_dir = "//third_party/vulkan-deps/spirv-tools/src"
dawn_spirv_cross_dir = "//third_party/spirv-cross" dawn_spirv_cross_dir = "//third_party/vulkan-deps/spirv-cross/src"
dawn_swiftshader_dir = "//third_party/swiftshader" dawn_swiftshader_dir = "//third_party/swiftshader"
dawn_tint_dir = "//third_party/tint" dawn_tint_dir = "//third_party/tint"
dawn_vulkan_loader_dir = "//third_party/vulkan-loader" dawn_vulkan_loader_dir = "//third_party/vulkan-deps/vulkan-loader/src"
dawn_vulkan_validation_layers_dir = "//third_party/vulkan-validation-layers" dawn_vulkan_validation_layers_dir =
"//third_party/vulkan-deps/vulkan-validation-layers/src"

View File

@ -12,4 +12,4 @@
# See the License for the specific language governing permissions and # See the License for the specific language governing permissions and
# limitations under the License. # limitations under the License.
glslang_spirv_tools_dir = "//third_party/SPIRV-Tools" glslang_spirv_tools_dir = "//third_party/vulkan-deps/spirv-tools/src"

View File

@ -12,6 +12,6 @@
# See the License for the specific language governing permissions and # See the License for the specific language governing permissions and
# limitations under the License. # limitations under the License.
shaderc_glslang_dir = "//third_party/glslang" shaderc_glslang_dir = "//third_party/vulkan-deps/glslang/src"
shaderc_spirv_tools_dir = "//third_party/SPIRV-Tools" shaderc_spirv_tools_dir = "//third_party/vulkan-deps/spirv-tools/src"
shaderc_spirv_headers_dir = "//third_party/spirv-headers" shaderc_spirv_headers_dir = "//third_party/vulkan-deps/spirv-headers/src"

View File

@ -17,4 +17,4 @@ spirv_tools_standalone = false
# Paths to SPIRV-Tools dependencies in Dawn # Paths to SPIRV-Tools dependencies in Dawn
spirv_tools_googletest_dir = "//third_party/googletest" spirv_tools_googletest_dir = "//third_party/googletest"
spirv_tools_spirv_headers_dir = "//third_party/spirv-headers" spirv_tools_spirv_headers_dir = "//third_party/vulkan-deps/spirv-headers/src"

View File

@ -19,4 +19,4 @@ swiftshader_standalone = false
swiftshader_dir = "//third_party/swiftshader" swiftshader_dir = "//third_party/swiftshader"
# Paths to SwiftShader dependencies in Dawn # Paths to SwiftShader dependencies in Dawn
swiftshader_spirv_tools_dir = "//third_party/SPIRV-Tools" swiftshader_spirv_tools_dir = "//third_party/vulkan-deps/spirv-tools/src"

View File

@ -13,9 +13,9 @@
# limitations under the License. # limitations under the License.
tint_root_dir = "//third_party/tint" tint_root_dir = "//third_party/tint"
tint_spirv_tools_dir = "//third_party/SPIRV-Tools" tint_spirv_tools_dir = "//third_party/vulkan-deps/spirv-tools/src"
tint_googletest_dir = "//third_party/googletest" tint_googletest_dir = "//third_party/googletest"
tint_spirv_headers_dir = "//third_party/spirv-headers" tint_spirv_headers_dir = "//third_party/vulkan-deps/spirv-headers/src"
tint_build_spv_reader = true tint_build_spv_reader = true
tint_build_spv_writer = true tint_build_spv_writer = true

View File

@ -12,7 +12,7 @@
# See the License for the specific language governing permissions and # See the License for the specific language governing permissions and
# limitations under the License. # limitations under the License.
vulkan_headers_dir = "//third_party/vulkan-headers" vulkan_headers_dir = "//third_party/vulkan-deps/vulkan-headers/src"
vulkan_gen_subdir = "vulkan_loader" vulkan_gen_subdir = "vulkan_loader"
vulkan_loader_shared = true vulkan_loader_shared = true

View File

@ -15,9 +15,9 @@
# These are variables that are overridable by projects that include Dawn. # These are variables that are overridable by projects that include Dawn.
# The values in this file are the defaults for when we are building from # The values in this file are the defaults for when we are building from
# Dawn's repository. # Dawn's repository.
vulkan_headers_dir = "//third_party/vulkan-headers" vulkan_headers_dir = "//third_party/vulkan-deps/vulkan-headers/src"
vvl_spirv_tools_dir = "//third_party/SPIRV-Tools" vvl_spirv_tools_dir = "//third_party/vulkan-deps/spirv-tools/src"
vvl_glslang_dir = "//third_party/glslang" vvl_glslang_dir = "//third_party/vulkan-deps/glslang/src"
# Subdirectories for generated files # Subdirectories for generated files
vulkan_data_subdir = "vulkandata" vulkan_data_subdir = "vulkandata"

View File

@ -54,11 +54,11 @@ if (!defined(dawn_shaderc_dir)) {
} }
if (!defined(dawn_spirv_cross_dir)) { if (!defined(dawn_spirv_cross_dir)) {
dawn_spirv_cross_dir = "//third_party/spirv-cross" dawn_spirv_cross_dir = "//third_party/vulkan-deps/spirv-cross/src"
} }
if (!defined(dawn_spirv_tools_dir)) { if (!defined(dawn_spirv_tools_dir)) {
dawn_spirv_tools_dir = "//third_party/SPIRV-Tools" dawn_spirv_tools_dir = "//third_party/vulkan-deps/spirv-tools/src"
} }
if (!defined(dawn_swiftshader_dir)) { if (!defined(dawn_swiftshader_dir)) {