Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(2121)

Unified Diff: build/config/BUILD.gn

Issue 1476923004: [Chromecast] Include all stdlibc++/libgcc symbols in cast_shell. (Closed) Base URL: https://chromium.googlesource.com/chromium/src@master
Patch Set: Refactor executable and shlib defaults Created 5 years ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « build/common.gypi ('k') | build/config/BUILDCONFIG.gn » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: build/config/BUILD.gn
diff --git a/build/config/BUILD.gn b/build/config/BUILD.gn
index 643d4d9db4c6997e3c47ffb8091abdaa4e9a10b6..2a5a39a92425a6c6d2779d5904f4eef26dba94ba 100644
--- a/build/config/BUILD.gn
+++ b/build/config/BUILD.gn
@@ -4,6 +4,7 @@
import("//build/config/allocator.gni")
import("//build/config/chrome_build.gni")
+import("//build/config/chromecast_build.gni")
import("//build/config/crypto.gni")
import("//build/config/features.gni")
import("//build/config/sanitizers/sanitizers.gni")
@@ -408,6 +409,61 @@ config("default_libs") {
}
}
+# Executable configs -----------------------------------------------------------
+
+# Windows linker setup for EXEs and DLLs.
+if (is_win) {
+ _windows_linker_configs = [
+ "//build/config/win:default_incremental_linking",
+ "//build/config/win:sdk_link",
+ "//build/config/win:common_linker_setup",
+
+ # Default to console-mode apps. Most of our targets are tests and such
+ # that shouldn't use the windows subsystem.
+ "//build/config/win:console",
+ ]
+}
+
+# This config defines the configs applied to all executables.
+config("executable_config") {
slan 2015/12/07 16:13:32 Hmmm. Though it appears to be legal, (meaning GN t
Dirk Pranke 2015/12/07 21:03:42 This is valid and recommended in some cases. See
slan 2015/12/07 21:07:47 Thanks for the tip! bcf@, feel free to ignore my s
+ configs = []
+
+ if (is_win) {
+ configs += _windows_linker_configs
+ } else if (is_mac) {
+ configs += [
+ "//build/config/mac:mac_dynamic_flags",
+ "//build/config/mac:mac_executable_flags",
+ ]
+ } else if (is_linux || is_android || is_chromecast) {
slan 2015/12/07 16:13:32 is_chromecast not needed here. The OS flags should
bcf 2015/12/07 21:39:49 Done.
+ configs += [ "//build/config/gcc:executable_ldconfig" ]
+ if (is_android) {
+ configs += [ "//build/config/android:executable_config" ]
+ } else if (is_chromecast) {
+ configs += [ "//build/config/chromecast:executable_config" ]
+ }
+ }
+}
+
+# Shared library configs -------------------------------------------------------
+
+# This config defines the configs applied to all shared libraries.
+config("shared_library_config") {
+ configs = []
+
+ if (is_win) {
+ configs += _windows_linker_configs
+ } else if (is_mac) {
+ configs += [ "//build/config/mac:mac_dynamic_flags" ]
+ } else if (is_android) {
+ # Strip native JNI exports from shared libraries by default. Binaries that
+ # want this can remove this config.
+ configs += [ "//build/config/android:hide_native_jni_exports" ]
+ } else if (is_chromecast) {
+ configs += [ "//build/config/chromecast:shlib_config" ]
slan 2015/12/07 16:13:32 nit: Can this be shared_library_config to match th
bcf 2015/12/07 21:39:49 Done.
+ }
+}
+
# Add this config to your target to enable precompiled headers.
#
# Precompiled headers are done on a per-target basis. If you have just a couple
« no previous file with comments | « build/common.gypi ('k') | build/config/BUILDCONFIG.gn » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698