# 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("//testing/test.gni") cc_remove_configs = [] cc_add_configs = [ "//build/config:precompiled_headers", "//build/config/compiler:wexit_time_destructors", ] if (!is_debug) { cc_remove_configs += [ "//build/config/compiler:default_optimization" ] cc_add_configs += [ "//build/config/compiler:optimize_max" ] } template("cc_component") { component(target_name) { forward_variables_from(invoker, "*", [ "configs" ]) if (defined(invoker.configs)) { configs += invoker.configs } configs -= cc_remove_configs configs += cc_add_configs } } template("cc_test_static_library") { static_library(target_name) { forward_variables_from(invoker, "*", [ "configs" ]) if (defined(invoker.configs)) { configs += invoker.configs } configs -= cc_remove_configs configs += cc_add_configs # Not needed in test code. configs -= [ "//build/config/compiler:wexit_time_destructors" ] } } template("cc_test") { test(target_name) { forward_variables_from(invoker, "*", [ "configs" ]) if (defined(invoker.configs)) { configs += invoker.configs } configs -= cc_remove_configs configs += cc_add_configs # Not needed in test code. configs -= [ "//build/config/compiler:wexit_time_destructors" ] } }