| # Copyright 2017 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") |
| |
| platform_config_add = [ |
| "//build/config/compiler:no_size_t_to_int_warning", |
| "//build/config/compiler:wexit_time_destructors", |
| "//third_party/blink/renderer:config", |
| "//third_party/blink/renderer:inside_blink", |
| "//third_party/blink/renderer:non_test_config", |
| "//third_party/blink/renderer/platform:blink_platform_config", |
| "//third_party/blink/renderer/platform:blink_platform_implementation", |
| "//third_party/blink/renderer/platform:blink_platform_pch", |
| ] |
| platform_config_remove = [] |
| |
| template("blink_platform_sources") { |
| jumbo_source_set(target_name) { |
| # Only platform can directly depend on this. |
| # Any target outside platform should instead depend on platform. |
| visibility = [ "//third_party/blink/renderer/platform" ] |
| |
| assert( |
| !defined(invoker.public_deps), |
| "$target_name's public_deps should be moved to //third_party/blink/renderer/platform:blink_platform_public_deps") |
| deps = [ |
| "//third_party/blink/renderer/platform:blink_platform_public_deps", |
| ] |
| if (defined(invoker.deps)) { |
| deps += invoker.deps |
| } |
| |
| assert( |
| !defined(invoker.public_configs), |
| "$target_name's public_configs should be moved to //third_party/blink/renderer/platform:blink_platform_public_deps") |
| assert( |
| !defined(invoker.all_dependent_configs), |
| "$target_name's all_dependent_configs should be moved to //third_party/blink/renderer/platform:blink_platform_public_deps") |
| configs = [] |
| if (defined(invoker.configs)) { |
| configs += invoker.configs |
| } |
| |
| forward_variables_from(invoker, |
| "*", |
| [ |
| "deps", |
| "configs", |
| ]) |
| } |
| } |
| |
| set_defaults("blink_platform_sources") { |
| configs = |
| default_compiler_configs + platform_config_add - platform_config_remove |
| } |