| 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 25 matching lines...) Expand all Loading... |
| 36 # ASH is enabled. | 36 # ASH is enabled. |
| 37 # TODO(brettw) this should be moved out of the main build config file. | 37 # TODO(brettw) this should be moved out of the main build config file. |
| 38 use_ash = false | 38 use_ash = false |
| 39 # Aura is enabled. | 39 # Aura is enabled. |
| 40 # TODO(brettw) this should be moved out of the main build config file. | 40 # TODO(brettw) this should be moved out of the main build config file. |
| 41 use_aura = false | 41 use_aura = false |
| 42 # Ozone is enabled. | 42 # Ozone is enabled. |
| 43 # TODO(brettw) this should be moved out of the main build config file. | 43 # TODO(brettw) this should be moved out of the main build config file. |
| 44 use_ozone = false | 44 use_ozone = false |
| 45 | 45 |
| 46 # Forces a 64-bit build on Windows. Does nothing on other platforms. Normally |
| 47 # we build 32-bit on Windows regardless of the current host OS bit depth. |
| 48 # Setting this flag will override this logic and generate 64-bit toolchains. |
| 49 # |
| 50 # Normally this would get set automatically when you specify a target using |
| 51 # the 64-bit toolchain. You can also set this on the command line to convert |
| 52 # the default toolchain to 64-bit. |
| 53 force_win64 = false |
| 54 |
| 46 # Set to true on the command line when invoked by GYP. Build files can key | 55 # Set to true on the command line when invoked by GYP. Build files can key |
| 47 # off of this to make any GYP-output-specific changes to the build. | 56 # off of this to make any GYP-output-specific changes to the build. |
| 48 is_gyp = false | 57 is_gyp = false |
| 49 } | 58 } |
| 50 | 59 |
| 51 # ============================================================================= | 60 # ============================================================================= |
| 52 # OS DEFINITIONS | 61 # OS DEFINITIONS |
| 53 # ============================================================================= | 62 # ============================================================================= |
| 54 # | 63 # |
| 55 # We set these various is_FOO booleans for convenience in writing OS-based | 64 # We set these various is_FOO booleans for convenience in writing OS-based |
| (...skipping 75 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 131 is_nacl = false | 140 is_nacl = false |
| 132 is_posix = true | 141 is_posix = true |
| 133 is_win = false | 142 is_win = false |
| 134 } | 143 } |
| 135 | 144 |
| 136 # ============================================================================= | 145 # ============================================================================= |
| 137 # CPU ARCHITECTURE | 146 # CPU ARCHITECTURE |
| 138 # ============================================================================= | 147 # ============================================================================= |
| 139 | 148 |
| 140 if (is_win) { | 149 if (is_win) { |
| 141 # Always use 32-bit on Windows, even when compiling on a 64-bit host OS. | 150 # Always use 32-bit on Windows, even when compiling on a 64-bit host OS, |
| 142 # TODO(brettw) when we support 64-bit cross-compiles, we probably need to | 151 # unless the override flag is specified. |
| 143 # set a build arg in the toolchain to disable this override. | 152 if (force_win64) { |
| 144 cpu_arch = "ia32" | 153 cpu_arch = "x64" |
| 154 } else { |
| 155 cpu_arch = "x86" |
| 156 } |
| 145 } | 157 } |
| 146 | 158 |
| 147 # ============================================================================= | 159 # ============================================================================= |
| 148 # SOURCES FILTERS | 160 # SOURCES FILTERS |
| 149 # ============================================================================= | 161 # ============================================================================= |
| 150 # | 162 # |
| 151 # These patterns filter out platform-specific files when assigning to the | 163 # These patterns filter out platform-specific files when assigning to the |
| 152 # sources variable. The magic variable |sources_assignment_filter| is applied | 164 # sources variable. The magic variable |sources_assignment_filter| is applied |
| 153 # to each assignment or appending to the sources variable and matches are | 165 # to each assignment or appending to the sources variable and matches are |
| 154 # automatcally removed. | 166 # automatcally removed. |
| (...skipping 209 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 364 # ============================================================================== | 376 # ============================================================================== |
| 365 # TOOLCHAIN SETUP | 377 # TOOLCHAIN SETUP |
| 366 # ============================================================================== | 378 # ============================================================================== |
| 367 # | 379 # |
| 368 # Here we set the default toolchain, as well as the variable host_toolchain | 380 # Here we set the default toolchain, as well as the variable host_toolchain |
| 369 # which will identify the toolchain corresponding to the local system when | 381 # which will identify the toolchain corresponding to the local system when |
| 370 # doing cross-compiles. When not cross-compiling, this will be the same as the | 382 # doing cross-compiles. When not cross-compiling, this will be the same as the |
| 371 # default toolchain. | 383 # default toolchain. |
| 372 | 384 |
| 373 if (is_win) { | 385 if (is_win) { |
| 374 host_toolchain = "//build/toolchain/win:32" | 386 if (cpu_arch == "x64") { |
| 387 host_toolchain = "//build/toolchain/win:64" |
| 388 } else if (cpu_arch == "x86") { |
| 389 host_toolchain = "//build/toolchain/win:32" |
| 390 } |
| 375 set_default_toolchain(host_toolchain) | 391 set_default_toolchain(host_toolchain) |
| 376 } else if (is_linux) { | 392 } else if (is_linux) { |
| 377 host_toolchain = "//build/toolchain/linux:host" | 393 host_toolchain = "//build/toolchain/linux:host" |
| 378 if (cpu_arch == "arm" && build_cpu_arch != "arm") { | 394 if (cpu_arch == "arm" && build_cpu_arch != "arm") { |
| 379 # Special toolchain for ARM cross-compiling. | 395 # Special toolchain for ARM cross-compiling. |
| 380 set_default_toolchain("//build/toolchain/linux:arm-cross-compile") | 396 set_default_toolchain("//build/toolchain/linux:arm-cross-compile") |
| 381 } else { | 397 } else { |
| 382 # Use whatever GCC is on the current platform. | 398 # Use whatever GCC is on the current platform. |
| 383 set_default_toolchain(host_toolchain) | 399 set_default_toolchain(host_toolchain) |
| 384 } | 400 } |
| 385 } else if (is_mac) { | 401 } else if (is_mac) { |
| 386 host_toolchain = "//build/toolchain/mac:clang" | 402 host_toolchain = "//build/toolchain/mac:clang" |
| 387 set_default_toolchain(host_toolchain) | 403 set_default_toolchain(host_toolchain) |
| 388 } | 404 } |
| OLD | NEW |