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

Unified Diff: build/config/BUILDCONFIG.gn

Issue 951673002: Revert "Pull chromium at 2c3ffb2355a27c32f45e508ef861416b820c823b" (Closed) Base URL: git@github.com:domokit/mojo.git@master
Patch Set: Created 5 years, 10 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 | « build/config/BUILD.gn ('k') | build/config/allocator.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 a554f12dc5b427ddbff8a0fff1116eb9bc6cbbdd..d806a1763a4e2cb35513d9834ace1dcc99c92ab7 100644
--- a/build/config/BUILDCONFIG.gn
+++ b/build/config/BUILDCONFIG.gn
@@ -16,53 +16,7 @@
# KEEP IN ALPHABETICAL ORDER and write a good description for everything.
# Use "is_*" names for intrinsic platform descriptions and build modes, and
# "use_*" names for optional features libraries, and configurations.
-
-# TODO(dpranke): The os and cpu_arch variables exist for backwards
-# compatibility and should be deleted once all of the build files and
-# bots have been updated to use current_cpu/target_cpu and
-# current_os/target_os instead.
-
-if (target_os == "") {
- if (defined(os)) {
- # If os is defined, it was set in an args file and needs to be
- # used for backwards-compatibility.
- target_os = os
- } else {
- target_os = host_os
- }
-}
-
-if (target_cpu == "") {
- if (defined(cpu_arch)) {
- # If cpu_arch is defined, it was set in an args file and needs to be
- # used for backwards-compatibility.
- target_cpu = cpu_arch
- } else if (target_os == "android") {
- # If we're building for Android, we should assume that we want to
- # build for ARM by default, not the host_cpu (which is likely x64).
- # This allows us to not have to specify both target_os and target_cpu
- # on the command line.
- target_cpu = "arm"
- } else {
- target_cpu = host_cpu
- }
-}
-
-if (current_cpu == "") {
- current_cpu = target_cpu
-}
-if (current_os == "") {
- current_os = target_os
-}
-
declare_args() {
- # TODO(dpranke): These values are here for backwards compatibility and
- # should be deleted when all of the builders and configs have been updated.
- cpu_arch = target_cpu
- os = target_os
- build_cpu_arch = host_cpu
- build_os = host_os
-
# How many symbols to include in the build. This affects the performance of
# the build since the symbols are large and dealing with them is slow.
# 2 means regular build with symbols.
@@ -78,12 +32,11 @@ declare_args() {
is_debug = true
# Whether we're a traditional desktop unix.
- is_desktop_linux = current_os == "linux" && current_os != "chromeos"
+ is_desktop_linux = os == "linux" && os != "chromeos"
# Set to true when compiling with the Clang compiler. Typically this is used
# to configure warnings.
- is_clang = current_os == "mac" || current_os == "ios" ||
- current_os == "linux" || current_os == "chromeos"
+ is_clang = os == "mac" || os == "ios" || os == "linux" || os == "chromeos"
# Selects the desired build flavor. Official builds get additional
# processing to prepare for release. Normally you will want to develop and
@@ -107,23 +60,29 @@ declare_args() {
# Compile for Thread Sanitizer to find threading bugs.
is_tsan = false
- if (current_os == "chromeos") {
+ if (os == "chromeos") {
# Allows the target toolchain to be injected as arguments. This is needed
# to support the CrOS build system which supports per-build-configuration
# toolchains.
cros_use_custom_toolchain = false
}
+ # TODO(cjhopman): Make target_arch work for all platforms.
+
+ # Architecture of the target device. For Android builds, this will be equal to
+ # the cpu_arch of the default toolchain. When checking the CPU architecture
+ # for source files and build dependencies you should almost alway use cpu_arch
+ # instead. cpu_arch is the architecture of the current toolchain and allows
+ # cross-compiles (compiling the same target for multiple toolchains in the
+ # same build) to work.
+ target_arch = "arm"
+
# TODO(brettw) remove this flag (and therefore enable linking all targets) on
# Windows when we have sufficient bot capacity. In the meantime, you can
# enable linking for local compiles.
link_chrome_on_windows = true
}
-# TODO(dpranke): Remove these asserts when os and cpu_arch are removed.
-assert(current_cpu == cpu_arch)
-assert(current_os == os)
-
# =============================================================================
# OS DEFINITIONS
# =============================================================================
@@ -139,10 +98,10 @@ assert(current_os == os)
# generally too different despite being based on the Linux kernel).
#
# Do not add more is_* variants here for random lesser-used Unix systems like
-# aix or one of the BSDs. If you need to check these, just check the
-# current_os value directly.
+# aix or one of the BSDs. If you need to check these, just check the os value
+# directly.
-if (current_os == "win") {
+if (os == "win") {
is_android = false
is_chromeos = false
is_ios = false
@@ -151,7 +110,7 @@ if (current_os == "win") {
is_nacl = false
is_posix = false
is_win = true
-} else if (current_os == "mac") {
+} else if (os == "mac") {
is_android = false
is_chromeos = false
is_ios = false
@@ -160,7 +119,7 @@ if (current_os == "win") {
is_nacl = false
is_posix = true
is_win = false
-} else if (current_os == "android") {
+} else if (os == "android") {
is_android = true
is_chromeos = false
is_ios = false
@@ -169,7 +128,7 @@ if (current_os == "win") {
is_nacl = false
is_posix = true
is_win = false
-} else if (current_os == "chromeos") {
+} else if (os == "chromeos") {
is_android = false
is_chromeos = true
is_ios = false
@@ -178,10 +137,9 @@ if (current_os == "win") {
is_nacl = false
is_posix = true
is_win = false
-} else if (current_os == "nacl") {
- # current_os == "nacl" will be passed by the nacl toolchain definition.
- # It is not set by default or on the command line. We treat is as a
- # Posix variant.
+} else if (os == "nacl") {
+ # os == "nacl" will be passed by the nacl toolchain definition. It is not
+ # set by default or on the command line. We treat is as a Posix variant.
is_android = false
is_chromeos = false
is_ios = false
@@ -190,7 +148,7 @@ if (current_os == "win") {
is_nacl = true
is_posix = true
is_win = false
-} else if (current_os == "ios") {
+} else if (os == "ios") {
is_android = false
is_chromeos = false
is_ios = true
@@ -199,7 +157,7 @@ if (current_os == "win") {
is_nacl = false
is_posix = true
is_win = false
-} else if (current_os == "linux") {
+} else if (os == "linux") {
is_android = false
is_chromeos = false
is_ios = false
@@ -211,6 +169,18 @@ if (current_os == "win") {
}
# =============================================================================
+# CPU ARCHITECTURE
+# =============================================================================
+
+if (is_android) {
+ # TODO(cjhopman): enable this assert once bots are updated to not set
+ # cpu_arch.
+ #assert(cpu_arch == build_cpu_arch, "Android device target architecture should
+ # be set with 'target_arch', not 'cpu_arch'")
+ cpu_arch = target_arch
+}
+
+# =============================================================================
# SOURCES FILTERS
# =============================================================================
#
@@ -471,11 +441,6 @@ if (is_win) {
_shared_library_configs += _windows_linker_configs
} else if (is_mac) {
_shared_library_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.
- _shared_library_configs +=
- [ "//build/config/android:hide_native_jni_exports" ]
}
set_defaults("shared_library") {
configs = _shared_library_configs
@@ -516,28 +481,28 @@ set_defaults("test") {
if (is_win) {
# On windows we use the same toolchain for host and target by default.
- # TODO(dpranke): rename the toolchains to x64 and x86 to match current_cpu.
- if (current_cpu == "x64") {
+ # TODO(dpranke): rename the toolchains to x64 and x86 to match cpu_arch.
+ if (cpu_arch == "x64") {
host_toolchain = "//build/toolchain/win:64"
- } else if (current_cpu == "x86") {
+ } else if (cpu_arch == "x86") {
host_toolchain = "//build/toolchain/win:32"
}
set_default_toolchain("$host_toolchain")
} else if (is_android) {
# Use clang for the x86/64 Linux host builds.
- if (host_cpu == "x86" || host_cpu == "x64") {
- host_toolchain = "//build/toolchain/linux:clang_$host_cpu"
+ if (build_cpu_arch == "x86" || build_cpu_arch == "x64") {
+ host_toolchain = "//build/toolchain/linux:clang_$build_cpu_arch"
} else {
- host_toolchain = "//build/toolchain/linux:$host_cpu"
+ host_toolchain = "//build/toolchain/linux:$build_cpu_arch"
}
- set_default_toolchain("//build/toolchain/android:$current_cpu")
+ set_default_toolchain("//build/toolchain/android:$cpu_arch")
} else if (is_linux) {
if (is_clang) {
- host_toolchain = "//build/toolchain/linux:clang_$host_cpu"
- set_default_toolchain("//build/toolchain/linux:clang_$current_cpu")
+ host_toolchain = "//build/toolchain/linux:clang_$build_cpu_arch"
+ set_default_toolchain("//build/toolchain/linux:clang_$cpu_arch")
} else {
- host_toolchain = "//build/toolchain/linux:$host_cpu"
- set_default_toolchain("//build/toolchain/linux:$current_cpu")
+ host_toolchain = "//build/toolchain/linux:$build_cpu_arch"
+ set_default_toolchain("//build/toolchain/linux:$cpu_arch")
}
if (is_chromeos && cros_use_custom_toolchain) {
set_default_toolchain("//build/toolchain/cros:target")
« no previous file with comments | « build/config/BUILD.gn ('k') | build/config/allocator.gni » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698