# Copyright 2016 The Chromium Authors
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.
import("//gpu/vulkan/features.gni")
import("//skia/features.gni")
import("//testing/test.gni")
# Fuchsia doesn't support GL rendering so there is no need to run tests for
# that code path.
enable_gl_backend_tests = !is_fuchsia
# TODO(samans): Support more configurations.
# CFI: TODO(crbug.com/40629477): Fix Control Flow Integrity check failure.
# Fuchsia: TODO(crbug.com/42050537): Enable on ARM64 when bots support Vulkan.
enable_vulkan_backend_tests =
enable_vulkan &&
((is_linux && !is_castos && !is_cfi) || (is_fuchsia && target_cpu == "x64"))
enable_skia_graphite_tests =
(skia_use_dawn || skia_use_metal) && enable_skia_graphite_gtests
# TODO(crbug.com/1336055): Determine whether is_cast_android needs this.
enable_cast_overlay_strategy = is_castos || is_cast_android
viz_remove_configs = []
viz_add_configs = [ "//build/config:precompiled_headers" ]
if (!is_debug) {
viz_remove_configs += [ "//build/config/compiler:default_optimization" ]
viz_add_configs += [ "//build/config/compiler:optimize_max" ]
}
template("viz_source_set") {
source_set(target_name) {
forward_variables_from(invoker, "*", [ "configs" ])
if (defined(invoker.configs)) {
configs += invoker.configs
}
configs -= viz_remove_configs
configs += viz_add_configs
}
}
template("viz_component") {
component(target_name) {
forward_variables_from(invoker, "*", [ "configs" ])
if (defined(invoker.configs)) {
configs += invoker.configs
}
configs -= viz_remove_configs
configs += viz_add_configs
}
}
template("viz_static_library") {
static_library(target_name) {
forward_variables_from(invoker, "*", [ "configs" ])
if (defined(invoker.configs)) {
configs += invoker.configs
}
configs -= viz_remove_configs
configs += viz_add_configs
}
}
template("viz_test") {
test(target_name) {
forward_variables_from(invoker, "*", [ "configs" ])
if (defined(invoker.configs)) {
configs += invoker.configs
}
configs -= viz_remove_configs
configs += viz_add_configs
}
}