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

Side by Side Diff: build/config/sysroot.gni

Issue 1643523004: Reverts fdca07 and makes it possible to force absolute paths. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Adds missing dependency Created 4 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 unified diff | Download patch
« no previous file with comments | « build/config/posix/BUILD.gn ('k') | printing/BUILD.gn » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
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 # This header file defines the "sysroot" variable which is the absolute path 5 # This header file defines the "sysroot" variable which is the absolute path
6 # of the sysroot. If no sysroot applies, the variable will be an empty string. 6 # of the sysroot. If no sysroot applies, the variable will be an empty string.
7 7
8 import("//build/config/chrome_build.gni") 8 import("//build/config/chrome_build.gni")
9 9
10 declare_args() { 10 declare_args() {
11 # The absolute path of the sysroot that is applied when compiling using 11 # The absolute path of the sysroot that is applied when compiling using
12 # the target toolchain. 12 # the target toolchain.
13 target_sysroot = "" 13 target_sysroot = ""
14 use_sysroot = true 14 use_sysroot = true
15 } 15 }
16 16
17 if (current_toolchain == default_toolchain && target_sysroot != "") { 17 if (current_toolchain == default_toolchain && target_sysroot != "") {
18 sysroot = target_sysroot 18 sysroot = target_sysroot
19 } else if (is_android) { 19 } else if (is_android) {
20 import("//build/config/android/config.gni") 20 import("//build/config/android/config.gni")
21 if (current_cpu == "x86") { 21 if (current_cpu == "x86") {
22 sysroot = rebase_path("$android_ndk_root/$x86_android_sysroot_subdir") 22 sysroot = "$android_ndk_root/$x86_android_sysroot_subdir"
23 } else if (current_cpu == "arm") { 23 } else if (current_cpu == "arm") {
24 sysroot = rebase_path("$android_ndk_root/$arm_android_sysroot_subdir") 24 sysroot = "$android_ndk_root/$arm_android_sysroot_subdir"
25 } else if (current_cpu == "mipsel") { 25 } else if (current_cpu == "mipsel") {
26 sysroot = rebase_path("$android_ndk_root/$mips_android_sysroot_subdir") 26 sysroot = "$android_ndk_root/$mips_android_sysroot_subdir"
27 } else if (current_cpu == "x64") { 27 } else if (current_cpu == "x64") {
28 sysroot = rebase_path("$android_ndk_root/$x86_64_android_sysroot_subdir") 28 sysroot = "$android_ndk_root/$x86_64_android_sysroot_subdir"
29 } else if (current_cpu == "arm64") { 29 } else if (current_cpu == "arm64") {
30 sysroot = rebase_path("$android_ndk_root/$arm64_android_sysroot_subdir") 30 sysroot = "$android_ndk_root/$arm64_android_sysroot_subdir"
31 } else if (current_cpu == "mips64") { 31 } else if (current_cpu == "mips64") {
32 sysroot = rebase_path("$android_ndk_root/$mips64_android_sysroot_subdir") 32 sysroot = "$android_ndk_root/$mips64_android_sysroot_subdir"
33 } else { 33 } else {
34 sysroot = "" 34 sysroot = ""
35 } 35 }
36 } else if (is_linux && !is_chromeos && use_sysroot) { 36 } else if (is_linux && !is_chromeos && use_sysroot) {
37 # By default build against a sysroot image downloaded from Cloud Storage 37 # By default build against a sysroot image downloaded from Cloud Storage
38 # during gclient runhooks. 38 # during gclient runhooks.
39 if (current_cpu == "x64") { 39 if (current_cpu == "x64") {
40 sysroot = rebase_path("//build/linux/debian_wheezy_amd64-sysroot") 40 sysroot = "//build/linux/debian_wheezy_amd64-sysroot"
41 } else if (current_cpu == "x86") { 41 } else if (current_cpu == "x86") {
42 sysroot = rebase_path("//build/linux/debian_wheezy_i386-sysroot") 42 sysroot = "//build/linux/debian_wheezy_i386-sysroot"
43 } else if (current_cpu == "mipsel") { 43 } else if (current_cpu == "mipsel") {
44 sysroot = rebase_path("//build/linux/debian_wheezy_mips-sysroot") 44 sysroot = "//build/linux/debian_wheezy_mips-sysroot"
45 } else if (current_cpu == "arm") { 45 } else if (current_cpu == "arm") {
46 sysroot = rebase_path("//build/linux/debian_wheezy_arm-sysroot") 46 sysroot = "//build/linux/debian_wheezy_arm-sysroot"
47 } else { 47 } else {
48 # Any other builds don't use a sysroot. 48 # Any other builds don't use a sysroot.
49 sysroot = "" 49 sysroot = ""
50 } 50 }
51 51
52 if (sysroot != "") { 52 if (sysroot != "") {
53 # Our sysroot images only contains gcc 4.6 headers, but chromium requires 53 # Our sysroot images only contains gcc 4.6 headers, but chromium requires
54 # gcc 4.9. Clang is able to detect and work with the 4.6 headers while 54 # gcc 4.9. Clang is able to detect and work with the 4.6 headers while
55 # gcc is not. This check can be removed if we ever update to a more modern 55 # gcc is not. This check can be removed if we ever update to a more modern
56 # sysroot. 56 # sysroot.
57 assert(is_clang, "sysroot images require clang (try use_sysroot=false)") 57 assert(is_clang, "sysroot images require clang (try use_sysroot=false)")
58 58
59 _script_arch = current_cpu 59 _script_arch = current_cpu
60 if (_script_arch == "x86") { 60 if (_script_arch == "x86") {
61 _script_arch = "i386" 61 _script_arch = "i386"
62 } else if (_script_arch == "x64") { 62 } else if (_script_arch == "x64") {
63 _script_arch = "amd64" 63 _script_arch = "amd64"
64 } 64 }
65 assert( 65 assert(
66 exec_script("//build/dir_exists.py", [ sysroot ], "string") == "True", 66 exec_script("//build/dir_exists.py",
67 [ rebase_path(sysroot) ],
68 "string") == "True",
67 "Missing sysroot ($sysroot). To fix, run: build/linux/sysroot_scripts/in stall-sysroot.py --arch=$_script_arch") 69 "Missing sysroot ($sysroot). To fix, run: build/linux/sysroot_scripts/in stall-sysroot.py --arch=$_script_arch")
68 } 70 }
69 } else if (is_mac) { 71 } else if (is_mac) {
70 import("//build/config/mac/mac_sdk.gni") 72 import("//build/config/mac/mac_sdk.gni")
71 sysroot = mac_sdk_path 73 sysroot = mac_sdk_path
72 } else if (is_ios) { 74 } else if (is_ios) {
73 import("//build/config/ios/ios_sdk.gni") 75 import("//build/config/ios/ios_sdk.gni")
74 sysroot = ios_sdk_path 76 sysroot = ios_sdk_path
75 } else { 77 } else {
76 sysroot = "" 78 sysroot = ""
77 } 79 }
OLDNEW
« no previous file with comments | « build/config/posix/BUILD.gn ('k') | printing/BUILD.gn » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698