Index: build/config/BUILDCONFIG.gn |
diff --git a/build/config/BUILDCONFIG.gn b/build/config/BUILDCONFIG.gn |
index d4d585ab4554bf16f66986b52fa7829f843d954e..c1146b7c6467bf6dac7f811a74130d421436ad53 100644 |
--- a/build/config/BUILDCONFIG.gn |
+++ b/build/config/BUILDCONFIG.gn |
@@ -180,10 +180,6 @@ if (is_win) { |
# to each assignment or appending to the sources variable and matches are |
# automatcally removed. |
# |
-# We define lists of filters for each platform for all builds so they can |
-# be used by individual targets if necessary (a target can always change |
-# sources_assignment_filter on itself if it needs something more specific). |
-# |
# Note that the patterns are NOT regular expressions. Only "*" and "\b" (path |
# boundary = end of string or slash) are supported, and the entire string |
# muct match the pattern (so you need "*.cc" to match all .cc files, for |
@@ -191,102 +187,91 @@ if (is_win) { |
# DO NOT ADD MORE PATTERNS TO THIS LIST, see set_sources_assignment_filter call |
# below. |
-windows_sources_filters = [ |
- "*_win.cc", |
- "*_win.h", |
- "*_win_unittest.cc", |
- "*\bwin/*", |
- "*.rc", |
-] |
-mac_sources_filters = [ |
- "*_mac.h", |
- "*_mac.cc", |
- "*_mac.mm", |
- "*_mac_unittest.h", |
- "*_mac_unittest.cc", |
- "*_mac_unittest.mm", |
- "*\bmac/*", |
- "*_cocoa.h", |
- "*_cocoa.cc", |
- "*_cocoa.mm", |
- "*_cocoa_unittest.h", |
- "*_cocoa_unittest.cc", |
- "*_cocoa_unittest.mm", |
- "*\bcocoa/*", |
-] |
-ios_sources_filters = [ |
- "*_ios.h", |
- "*_ios.cc", |
- "*_ios.mm", |
- "*_ios_unittest.h", |
- "*_ios_unittest.cc", |
- "*_ios_unittest.mm", |
- "*\bios/*", |
-] |
-objective_c_sources_filters = [ |
- "*.mm", |
-] |
-linux_sources_filters = [ |
- "*_linux.h", |
- "*_linux.cc", |
- "*_linux_unittest.h", |
- "*_linux_unittest.cc", |
- "*\blinux/*", |
-] |
-android_sources_filters = [ |
- "*_android.h", |
- "*_android.cc", |
- "*_android_unittest.h", |
- "*_android_unittest.cc", |
- "*\bandroid/*", |
-] |
-posix_sources_filters = [ |
- "*_posix.h", |
- "*_posix.cc", |
- "*_posix_unittest.h", |
- "*_posix_unittest.cc", |
- "*\bposix/*", |
-] |
-chromeos_sources_filters = [ |
- "*_chromeos.h", |
- "*_chromeos.cc", |
- "*_chromeos_unittest.h", |
- "*_chromeos_unittest.cc", |
- "*\bchromeos/*", |
-] |
-# DO NOT ADD MORE PATTERNS TO THIS LIST, see set_sources_assignment_filter call |
-# below. |
- |
-# Construct the full list of sources we're using for this platform. |
sources_assignment_filter = [] |
-if (is_win) { |
- sources_assignment_filter += posix_sources_filters |
-} else { |
- sources_assignment_filter += windows_sources_filters |
+if (!is_posix) { |
+ sources_assignment_filter += [ |
+ "*_posix.h", |
+ "*_posix.cc", |
+ "*_posix_unittest.h", |
+ "*_posix_unittest.cc", |
+ "*\bposix/*", |
+ ] |
+} |
+if (!is_win) { |
+ sources_assignment_filter += [ |
+ "*_win.cc", |
+ "*_win.h", |
+ "*_win_unittest.cc", |
+ "*\bwin/*", |
+ "*.rc", |
+ ] |
} |
if (!is_mac) { |
- sources_assignment_filter += mac_sources_filters |
+ sources_assignment_filter += [ |
+ "*_mac.h", |
+ "*_mac.cc", |
+ "*_mac.mm", |
+ "*_mac_unittest.h", |
+ "*_mac_unittest.cc", |
+ "*_mac_unittest.mm", |
+ "*\bmac/*", |
+ "*_cocoa.h", |
+ "*_cocoa.cc", |
+ "*_cocoa.mm", |
+ "*_cocoa_unittest.h", |
+ "*_cocoa_unittest.cc", |
+ "*_cocoa_unittest.mm", |
+ "*\bcocoa/*", |
+ ] |
} |
if (!is_ios) { |
- sources_assignment_filter += ios_sources_filters |
+ sources_assignment_filter += [ |
+ "*_ios.h", |
+ "*_ios.cc", |
+ "*_ios.mm", |
+ "*_ios_unittest.h", |
+ "*_ios_unittest.cc", |
+ "*_ios_unittest.mm", |
+ "*\bios/*", |
+ ] |
} |
if (!is_mac && !is_ios) { |
- sources_assignment_filter += objective_c_sources_filters |
+ sources_assignment_filter += [ |
+ "*.mm", |
+ ] |
} |
if (!is_linux) { |
- sources_assignment_filter += linux_sources_filters |
+ sources_assignment_filter += [ |
+ "*_linux.h", |
+ "*_linux.cc", |
+ "*_linux_unittest.h", |
+ "*_linux_unittest.cc", |
+ "*\blinux/*", |
+ ] |
} |
if (!is_android) { |
- sources_assignment_filter += android_sources_filters |
+ sources_assignment_filter += [ |
+ "*_android.h", |
+ "*_android.cc", |
+ "*_android_unittest.h", |
+ "*_android_unittest.cc", |
+ "*\bandroid/*", |
+ ] |
} |
if (!is_chromeos) { |
- sources_assignment_filter += chromeos_sources_filters |
+ sources_assignment_filter += [ |
+ "*_chromeos.h", |
+ "*_chromeos.cc", |
+ "*_chromeos_unittest.h", |
+ "*_chromeos_unittest.cc", |
+ "*\bchromeos/*", |
+ ] |
} |
+# DO NOT ADD MORE PATTERNS TO THIS LIST, see set_sources_assignment_filter call |
+# below. |
# Actually save this list. |
# |
-# DO NOT ADD MORE PATTERNS TO THIS LIST. |
-# |
# These patterns are executed for every file in the source tree of every run. |
# Therefore, adding more patterns slows down the build for everybody. We should |
# only add automatic patterns for configurations affecting hundreds of files |
@@ -326,7 +311,7 @@ if (!is_clang && (is_asan || is_lsan || is_tsan || is_msan)) { |
# Holds all configs used for making native executables and libraries, to avoid |
# duplication in each target below. |
-native_compiler_configs = [ |
+_native_compiler_configs = [ |
"//build/config:feature_flags", |
"//build/config/compiler:compiler", |
@@ -336,25 +321,25 @@ native_compiler_configs = [ |
"//build/config/compiler:runtime_library", |
] |
if (is_win) { |
- native_compiler_configs += [ |
+ _native_compiler_configs += [ |
"//build/config/win:lean_and_mean", |
"//build/config/win:sdk", |
"//build/config/win:unicode", |
] |
} else if (is_linux) { |
- native_compiler_configs += [ "//build/config/linux:sdk", ] |
+ _native_compiler_configs += [ "//build/config/linux:sdk", ] |
} else if (is_mac) { |
- native_compiler_configs += [ "//build/config/mac:sdk", ] |
+ _native_compiler_configs += [ "//build/config/mac:sdk", ] |
} else if (is_ios) { |
- native_compiler_configs += [ "//build/config/ios:sdk", ] |
+ _native_compiler_configs += [ "//build/config/ios:sdk", ] |
} else if (is_android) { |
- native_compiler_configs += [ "//build/config/android:sdk", ] |
+ _native_compiler_configs += [ "//build/config/android:sdk", ] |
} |
if (!is_win) { |
- native_compiler_configs += [ "//build/config/gcc:symbol_visibility_hidden" ] |
+ _native_compiler_configs += [ "//build/config/gcc:symbol_visibility_hidden" ] |
} |
if (is_clang) { |
- native_compiler_configs += [ |
+ _native_compiler_configs += [ |
"//build/config/clang:find_bad_constructs", |
"//build/config/clang:extra_warnings", |
] |
@@ -362,13 +347,13 @@ if (is_clang) { |
# Optimizations and debug checking. |
if (is_debug) { |
- native_compiler_configs += [ "//build/config:debug" ] |
- default_optimization_config = "//build/config/compiler:no_optimize" |
+ _native_compiler_configs += [ "//build/config:debug" ] |
+ _default_optimization_config = "//build/config/compiler:no_optimize" |
} else { |
- native_compiler_configs += [ "//build/config:release" ] |
- default_optimization_config = "//build/config/compiler:optimize" |
+ _native_compiler_configs += [ "//build/config:release" ] |
+ _default_optimization_config = "//build/config/compiler:optimize" |
} |
-native_compiler_configs += [ default_optimization_config ] |
+_native_compiler_configs += [ _default_optimization_config ] |
# Symbol setup. |
if (is_clang && (is_linux || is_android)) { |
@@ -376,29 +361,29 @@ if (is_clang && (is_linux || is_android)) { |
# For now, don't create debug information with clang. |
# See http://crbug.com/70000 |
# TODO(brettw) This just copies GYP. Why not do this on Mac as well? |
- default_symbols_config = "//build/config/compiler:no_symbols" |
+ _default_symbols_config = "//build/config/compiler:no_symbols" |
} else if (symbol_level == 2) { |
- default_symbols_config = "//build/config/compiler:symbols" |
+ _default_symbols_config = "//build/config/compiler:symbols" |
} else if (symbol_level == 1) { |
- default_symbols_config = "//build/config/compiler:minimal_symbols" |
+ _default_symbols_config = "//build/config/compiler:minimal_symbols" |
} else if (symbol_level == 0) { |
- default_symbols_config = "//build/config/compiler:no_symbols" |
+ _default_symbols_config = "//build/config/compiler:no_symbols" |
} else { |
assert(false, "Bad value for symbol_level.") |
} |
-native_compiler_configs += [ default_symbols_config ] |
+_native_compiler_configs += [ _default_symbols_config ] |
# Windows linker setup for EXEs and DLLs. |
if (is_win) { |
if (is_debug) { |
- default_incremental_linking_config = |
+ _default_incremental_linking_config = |
"//build/config/win:incremental_linking" |
} else { |
- default_incremental_linking_config = |
+ _default_incremental_linking_config = |
"//build/config/win:no_incremental_linking" |
} |
- windows_linker_configs = [ |
- default_incremental_linking_config, |
+ _windows_linker_configs = [ |
+ _default_incremental_linking_config, |
"//build/config/win:sdk_link", |
"//build/config/win:common_linker_setup", |
# Default to console-mode apps. Most of our targets are tests and such |
@@ -408,11 +393,11 @@ if (is_win) { |
} |
set_defaults("executable") { |
- configs = native_compiler_configs + [ |
+ configs = _native_compiler_configs + [ |
"//build/config:default_libs", |
] |
if (is_win) { |
- configs += windows_linker_configs |
+ configs += _windows_linker_configs |
} else if (is_mac) { |
configs += [ |
"//build/config/mac:mac_dynamic_flags", |
@@ -423,22 +408,22 @@ set_defaults("executable") { |
} |
set_defaults("static_library") { |
- configs = native_compiler_configs |
+ configs = _native_compiler_configs |
} |
set_defaults("shared_library") { |
- configs = native_compiler_configs + [ |
+ configs = _native_compiler_configs + [ |
"//build/config:default_libs", |
] |
if (is_win) { |
- configs += windows_linker_configs |
+ configs += _windows_linker_configs |
} else if (is_mac) { |
configs += [ "//build/config/mac:mac_dynamic_flags" ] |
} |
} |
set_defaults("source_set") { |
- configs = native_compiler_configs |
+ configs = _native_compiler_configs |
} |
# ============================================================================== |