blob: 7bf803549e8927913fd857ff3f6a1c122c1a928f [file] [log] [blame]
# Copyright 2017 The Fuchsia Authors
#
# Permission is hereby granted, free of charge, to any person obtaining a
# copy of this software and associated documentation files (the "Software"),
# to deal in the Software without restriction, including without limitation
# the rights to use, copy, modify, merge, publish, distribute, sublicense,
# and/or sell copies of the Software, and to permit persons to whom the
# Software is furnished to do so, subject to the following conditions:
#
# The above copyright notice and this permission notice (including the next
# paragraph) shall be included in all copies or substantial portions of the
# Software.
#
# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
# THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
# FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS
# IN THE SOFTWARE.
group("tests") {
testonly = true
public_deps = [
":layer_validation_tests",
":loader_validation_tests",
]
}
config("validation_tests_include_config") {
defines = [ "GTEST_HAS_PTHREAD=1" ]
cflags_cc = [ "-Wno-missing-field-initializers" ]
include_dirs = [
"../common",
"../layers",
"../submodules/googletest/googletest",
"../submodules/googletest/googletest/include",
# "gtest-1.7.0",
# "gtest-1.7.0/include",
"//third_party/glm",
]
}
# Some targets takes over a minute to compile with -O2 or -O3 optimization
# levels on an unloaded Intel(R) Xeon(R) CPU E5-2690 v4 @ 2.60GHz. This
# drops the optimization level down to -O1, which is still slow but
# bearable.
# TODO(TC-298): Remove once the pathological compiler behavior is fixed.
config("validation_tests_optimization") {
visibility = [ ":*" ]
cflags = [ "-O1" ]
}
source_set("validation_tests_common") {
testonly = true
public_configs = [ ":validation_tests_include_config" ]
defines = [ "VK_USE_PLATFORM_FUCHSIA" ]
sources = [
"../layers/vk_format_utils.cpp",
# "gtest-1.7.0/src/gtest-all.cc",
"../submodules/googletest/googletest/src/gtest-all.cc",
"test_environment.cpp",
"vkrenderframework.cpp",
"vktestbinding.cpp",
"vktestframework.cpp",
]
public_deps = [
"../:extra_vulkan_headers",
"../:vulkan",
"//third_party/glslang:glslang_sources",
]
configs += [ ":validation_tests_optimization" ]
}
executable("loader_validation_tests") {
testonly = true
sources = [
"loader_validation_tests.cpp",
]
deps = [
":validation_tests_common",
]
configs += [ ":validation_tests_optimization" ]
}
executable("layer_validation_tests") {
testonly = true
if (is_debug) {
defines = [ "SKIP_TESTS_CAUSING_DEBUG_ASSERT" ]
}
sources = [
"layer_validation_tests.cpp",
]
deps = [
":validation_tests_common",
]
configs += [ ":validation_tests_optimization" ]
}