# Copyright 2016 The Chromium Authors. All rights reserved. # Use of this source code is governed by a BSD-style license that can be # found in the LICENSE file. import("//build/config/jumbo.gni") import("//testing/test.gni") cc_remove_configs = [] cc_add_configs = [ "//build/config:precompiled_headers" ] if (!is_debug && (is_win || is_android)) { cc_remove_configs += [ "//build/config/compiler:default_optimization" ] cc_add_configs += [ "//build/config/compiler:optimize_max" ] } template("cc_source_set") { jumbo_source_set(target_name) { forward_variables_from(invoker, "*", [ "configs" ]) if (defined(invoker.configs)) { configs += invoker.configs } configs -= cc_remove_configs configs += cc_add_configs } } template("cc_component") { jumbo_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_static_library") { jumbo_static_library(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") { test(target_name) { forward_variables_from(invoker, "*", [ "configs" ]) if (defined(invoker.configs)) { configs += invoker.configs } configs -= cc_remove_configs configs += cc_add_configs } }