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

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

Issue 1556923002: clang: Makes builds with clang less dependent on absolute file path (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 4 years, 11 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
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() {
(...skipping 19 matching lines...) Expand all
30 sysroot = rebase_path("$android_ndk_root/$arm64_android_sysroot_subdir") 30 sysroot = rebase_path("$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 = rebase_path("$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 =
41 rebase_path("//build/linux/debian_wheezy_amd64-sysroot", root_build_dir)
41 } else if (current_cpu == "x86") { 42 } else if (current_cpu == "x86") {
42 sysroot = rebase_path("//build/linux/debian_wheezy_i386-sysroot") 43 sysroot =
44 rebase_path("//build/linux/debian_wheezy_i386-sysroot", root_build_dir)
43 } else if (current_cpu == "mipsel") { 45 } else if (current_cpu == "mipsel") {
44 sysroot = rebase_path("//build/linux/debian_wheezy_mips-sysroot") 46 sysroot =
47 rebase_path("//build/linux/debian_wheezy_mips-sysroot", root_build_dir)
45 } else if (current_cpu == "arm") { 48 } else if (current_cpu == "arm") {
46 sysroot = rebase_path("//build/linux/debian_wheezy_arm-sysroot") 49 sysroot =
50 rebase_path("//build/linux/debian_wheezy_arm-sysroot", root_build_dir)
47 } else { 51 } else {
48 # Any other builds don't use a sysroot. 52 # Any other builds don't use a sysroot.
49 sysroot = "" 53 sysroot = ""
50 } 54 }
51 55
52 if (sysroot != "") { 56 if (sysroot != "") {
53 # Our sysroot images only contains gcc 4.6 headers, but chromium requires 57 # 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 58 # 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 59 # gcc is not. This check can be removed if we ever update to a more modern
56 # sysroot. 60 # sysroot.
57 assert(is_clang, "sysroot images require clang (try use_sysroot=false)") 61 assert(is_clang, "sysroot images require clang (try use_sysroot=false)")
58 62
59 _script_arch = current_cpu 63 _script_arch = current_cpu
60 if (_script_arch == "x86") { 64 if (_script_arch == "x86") {
61 _script_arch = "i386" 65 _script_arch = "i386"
62 } else if (_script_arch == "x64") { 66 } else if (_script_arch == "x64") {
63 _script_arch = "amd64" 67 _script_arch = "amd64"
64 } 68 }
65 assert( 69 assert(
66 exec_script("//build/dir_exists.py", [ sysroot ], "string") == "True", 70 exec_script("//build/dir_exists.py",
71 [ rebase_path(sysroot, "", root_build_dir) ],
72 "string") == "True",
67 "Missing sysroot ($sysroot). To fix, run: build/linux/sysroot_scripts/in stall-sysroot.py --arch=$_script_arch") 73 "Missing sysroot ($sysroot). To fix, run: build/linux/sysroot_scripts/in stall-sysroot.py --arch=$_script_arch")
68 } 74 }
69 } else if (is_mac) { 75 } else if (is_mac) {
70 import("//build/config/mac/mac_sdk.gni") 76 import("//build/config/mac/mac_sdk.gni")
71 sysroot = mac_sdk_path 77 sysroot = mac_sdk_path
72 } else if (is_ios) { 78 } else if (is_ios) {
73 import("//build/config/ios/ios_sdk.gni") 79 import("//build/config/ios/ios_sdk.gni")
74 sysroot = ios_sdk_path 80 sysroot = ios_sdk_path
75 } else { 81 } else {
76 sysroot = "" 82 sysroot = ""
77 } 83 }
OLDNEW
« build/config/compiler/BUILD.gn ('K') | « build/config/linux/pkg_config.gni ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698