Chromium Code Reviews| OLD | NEW |
|---|---|
| 1 # Copyright (c) 2013 The Chromium Authors. All rights reserved. | 1 # Copyright (c) 2013 The Chromium Authors. All rights reserved. |
| 2 # Use of this source code is governed by a BSD-style license that can be | 2 # Use of this source code is governed by a BSD-style license that can be |
| 3 # found in the LICENSE file. | 3 # found in the LICENSE file. |
| 4 | 4 |
| 5 # ============================================================================= | 5 # ============================================================================= |
| 6 # BUILD FLAGS | 6 # BUILD FLAGS |
| 7 # ============================================================================= | 7 # ============================================================================= |
| 8 # | 8 # |
| 9 # This block lists input arguments to the build, along with their default | 9 # This block lists input arguments to the build, along with their default |
| 10 # values. GN requires listing them explicitly so it can validate input and have | 10 # values. GN requires listing them explicitly so it can validate input and have |
| (...skipping 53 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 64 | 64 |
| 65 # Compile for Thread Sanitizer to find threading bugs. | 65 # Compile for Thread Sanitizer to find threading bugs. |
| 66 is_tsan = false | 66 is_tsan = false |
| 67 | 67 |
| 68 if (os == "chromeos") { | 68 if (os == "chromeos") { |
| 69 # Allows the target toolchain to be injected as arguments. This is needed | 69 # Allows the target toolchain to be injected as arguments. This is needed |
| 70 # to support the CrOS build system which supports per-build-configuration | 70 # to support the CrOS build system which supports per-build-configuration |
| 71 # toolchains. | 71 # toolchains. |
| 72 cros_use_custom_toolchain = false | 72 cros_use_custom_toolchain = false |
| 73 } | 73 } |
| 74 | |
| 75 # TODO(cjhopman): Make target_arch work for all platforms. | |
| 76 | |
| 77 # Architecture of the target device. For Android builds, this will be equal to | |
|
cjhopman
2014/10/16 21:29:59
This can't be guarded by (os == "android") because
| |
| 78 # the cpu_arch of the default toolchain. When checking the CPU architecture | |
| 79 # for source files and build dependencies you should almost alway use cpu_arch | |
| 80 # instead. cpu_arch is the architecture of the current toolchain and allows | |
| 81 # cross-compiles (compiling the same target for multiple toolchains in the | |
| 82 # same build) to work. | |
| 83 target_arch = "arm" | |
| 74 } | 84 } |
| 75 | 85 |
| 76 # ============================================================================= | 86 # ============================================================================= |
| 77 # OS DEFINITIONS | 87 # OS DEFINITIONS |
| 78 # ============================================================================= | 88 # ============================================================================= |
| 79 # | 89 # |
| 80 # We set these various is_FOO booleans for convenience in writing OS-based | 90 # We set these various is_FOO booleans for convenience in writing OS-based |
| 81 # conditions. | 91 # conditions. |
| 82 # | 92 # |
| 83 # - is_android, is_chromeos, is_ios, and is_win should be obvious. | 93 # - is_android, is_chromeos, is_ios, and is_win should be obvious. |
| (...skipping 83 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 167 if (is_win) { | 177 if (is_win) { |
| 168 # Always use 32-bit on Windows, even when compiling on a 64-bit host OS, | 178 # Always use 32-bit on Windows, even when compiling on a 64-bit host OS, |
| 169 # unless the override flag is specified. | 179 # unless the override flag is specified. |
| 170 if (force_win64) { | 180 if (force_win64) { |
| 171 cpu_arch = "x64" | 181 cpu_arch = "x64" |
| 172 } else { | 182 } else { |
| 173 cpu_arch = "x86" | 183 cpu_arch = "x86" |
| 174 } | 184 } |
| 175 } | 185 } |
| 176 | 186 |
| 187 if (is_android) { | |
| 188 # TODO(cjhopman): enable this assert once bots are updated to not set | |
| 189 # cpu_arch. | |
| 190 #assert(cpu_arch == build_cpu_arch, "Android device target architecture should | |
| 191 # be set with 'target_arch', not 'cpu_arch'") | |
| 192 cpu_arch = target_arch | |
| 193 } | |
| 194 | |
| 177 # ============================================================================= | 195 # ============================================================================= |
| 178 # SOURCES FILTERS | 196 # SOURCES FILTERS |
| 179 # ============================================================================= | 197 # ============================================================================= |
| 180 # | 198 # |
| 181 # These patterns filter out platform-specific files when assigning to the | 199 # These patterns filter out platform-specific files when assigning to the |
| 182 # sources variable. The magic variable |sources_assignment_filter| is applied | 200 # sources variable. The magic variable |sources_assignment_filter| is applied |
| 183 # to each assignment or appending to the sources variable and matches are | 201 # to each assignment or appending to the sources variable and matches are |
| 184 # automatcally removed. | 202 # automatcally removed. |
| 185 # | 203 # |
| 186 # Note that the patterns are NOT regular expressions. Only "*" and "\b" (path | 204 # Note that the patterns are NOT regular expressions. Only "*" and "\b" (path |
| (...skipping 496 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 683 if (defined(invoker.output_extension)) { output_extension = invoker.output _extension } | 701 if (defined(invoker.output_extension)) { output_extension = invoker.output _extension } |
| 684 if (defined(invoker.output_name)) { output_name = invoker.output_name } | 702 if (defined(invoker.output_name)) { output_name = invoker.output_name } |
| 685 if (defined(invoker.public)) { public = invoker.public } | 703 if (defined(invoker.public)) { public = invoker.public } |
| 686 if (defined(invoker.public_configs)) { public_configs = invoker.public_con figs } | 704 if (defined(invoker.public_configs)) { public_configs = invoker.public_con figs } |
| 687 if (defined(invoker.public_deps)) { public_deps = invoker.public_deps } | 705 if (defined(invoker.public_deps)) { public_deps = invoker.public_deps } |
| 688 if (defined(invoker.sources)) { sources = invoker.sources } | 706 if (defined(invoker.sources)) { sources = invoker.sources } |
| 689 if (defined(invoker.visibility)) { visibility = invoker.visibility } | 707 if (defined(invoker.visibility)) { visibility = invoker.visibility } |
| 690 } | 708 } |
| 691 } | 709 } |
| 692 } | 710 } |
| OLD | NEW |