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

Unified Diff: build/config/BUILDCONFIG.gn

Issue 1168223003: Move build flags to .gni file. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 5 years, 5 months 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 | « no previous file | build/config/chrome_build.gni » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: build/config/BUILDCONFIG.gn
diff --git a/build/config/BUILDCONFIG.gn b/build/config/BUILDCONFIG.gn
index 10d9d3fb189ed8f756ac51f13813eaa4807ed887..5822d61a06f80a99575f6e99886b637e85d439c2 100644
--- a/build/config/BUILDCONFIG.gn
+++ b/build/config/BUILDCONFIG.gn
@@ -2,6 +2,38 @@
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.
+# =============================================================================
+# PLATFORM SELECTION
+# =============================================================================
+#
+# There are two main things to set: "os" and "cpu". The "toolchain" is the name
+# of the GN thing that encodes combinations of these things.
+#
+# Users typically only set the variables "target_os" and "target_cpu" in "gn
+# args", the rest are set up by our build and internal to GN.
+#
+# There are three different types of each of these things: The "host"
+# represents the computer doing the compile and never changes. The "target"
+# represents the main thing we're trying to build. The "current" represents
+# which configuration is currently being defined, which can be either the
+# host, the target, or something completely different (like nacl). GN will
+# run the same build file multiple times for the different required
+# configuration in the same build.
+#
+# This gives the following variables:
+# - host_os, host_cpu, host_toolchain
+# - target_os, target_cpu, default_toolchain
+# - current_os, current_cpu, current_toolchain.
+#
+# Note the default_toolchain isn't symmetrical (you would expect
+# target_toolchain). This is because the "default" toolchain is a GN built-in
+# concept, and "target" is something our build sets up that's symmetrical with
+# its GYP counterpart. Potentially the built-in default_toolchain variable
+# could be renamed in the future.
+#
+# When writing build files, to do something only for the host:
+# if (current_toolchain == host_toolchain) { ...
+
if (target_os == "") {
target_os = host_os
}
@@ -101,18 +133,6 @@ declare_args() {
is_clang = current_os == "mac" || current_os == "ios" ||
current_os == "linux" || current_os == "chromeos"
- # Selects the desired build flavor. Official builds get additional
- # processing to prepare for release. Normally you will want to develop and
- # test with this flag off.
- # TODO(brettw) move to chrome_build.gni when DEPS are updated.
- is_official_build = false
-
- # Select the desired branding flavor. False means normal Chromium branding,
- # true means official Google Chrome branding (requires extra Google-internal
- # resources).
- # TODO(brettw) move to chrome_build.gni when DEPS are updated.
- is_chrome_branded = false
-
# Compile for Address Sanitizer to find memory bugs.
is_asan = false
« no previous file with comments | « no previous file | build/config/chrome_build.gni » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698