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 # 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 | 14 |
15 # The absolute path to directory containing sysroots for linux 32 and 64bit | 15 # The absolute path to directory containing sysroots for linux 32 and 64bit |
16 target_sysroot_dir = "" | 16 target_sysroot_dir = "" |
17 | 17 |
18 use_sysroot = true | 18 use_sysroot = true |
19 | |
20 # TODO(tonikitoo): Remove this arg when wheezy is finally dropped and we | |
21 # can just use debian/jessie everywhere by default. crbug.com/564904. | |
22 use_jessie_sysroot = false | |
23 } | 19 } |
24 | 20 |
25 if (is_linux && target_sysroot_dir != "") { | 21 if (is_linux && target_sysroot_dir != "") { |
26 if (current_cpu == "x64") { | 22 if (current_cpu == "x64") { |
27 sysroot = target_sysroot_dir + "/wheezy-x64" | 23 sysroot = target_sysroot_dir + "/wheezy-x64" |
28 } else if (current_cpu == "x86") { | 24 } else if (current_cpu == "x86") { |
29 sysroot = target_sysroot_dir + "/wheezy-ia32" | 25 sysroot = target_sysroot_dir + "/wheezy-ia32" |
30 } | 26 } |
31 } else if (current_os == target_os && current_cpu == target_cpu && | 27 } else if (current_os == target_os && current_cpu == target_cpu && |
32 target_sysroot != "") { | 28 target_sysroot != "") { |
(...skipping 17 matching lines...) Expand all Loading... |
50 } | 46 } |
51 } else if (is_linux && use_sysroot) { | 47 } else if (is_linux && use_sysroot) { |
52 # By default build against a sysroot image downloaded from Cloud Storage | 48 # By default build against a sysroot image downloaded from Cloud Storage |
53 # during gclient runhooks. | 49 # during gclient runhooks. |
54 if (is_chromeos) { | 50 if (is_chromeos) { |
55 # Regular ChromeOS builds use custom sysroots, but desktop ChromeOS (where | 51 # Regular ChromeOS builds use custom sysroots, but desktop ChromeOS (where |
56 # we're building linux desktop binaries but using the ChromeOS UI and | 52 # we're building linux desktop binaries but using the ChromeOS UI and |
57 # functionality where possible) needs to run on the buliders, which are | 53 # functionality where possible) needs to run on the buliders, which are |
58 # running precise. The precise build has a different set of dependencies | 54 # running precise. The precise build has a different set of dependencies |
59 # from the wheezy build, so we cannot use the wheezy sysroot. | 55 # from the wheezy build, so we cannot use the wheezy sysroot. |
| 56 # TODO(sbc): This condition can perhaps be eliminated now that we are |
| 57 # using jessie rather than wheezy. |
60 sysroot = "//build/linux/ubuntu_precise_amd64-sysroot" | 58 sysroot = "//build/linux/ubuntu_precise_amd64-sysroot" |
61 } else { | 59 } else { |
62 if (current_cpu == "x64") { | 60 if (current_cpu == "x64") { |
63 sysroot = "//build/linux/debian_wheezy_amd64-sysroot" | 61 sysroot = "//build/linux/debian_jessie_amd64-sysroot" |
64 | |
65 if (use_jessie_sysroot) { | |
66 sysroot = "//build/linux/debian_jessie_amd64-sysroot" | |
67 } | |
68 } else if (current_cpu == "x86") { | 62 } else if (current_cpu == "x86") { |
69 sysroot = "//build/linux/debian_wheezy_i386-sysroot" | 63 sysroot = "//build/linux/debian_jessie_i386-sysroot" |
70 } else if (current_cpu == "mipsel") { | 64 } else if (current_cpu == "mipsel") { |
71 sysroot = "//build/linux/debian_wheezy_mips-sysroot" | 65 sysroot = "//build/linux/debian_jessie_mips-sysroot" |
72 } else if (current_cpu == "arm") { | 66 } else if (current_cpu == "arm") { |
73 sysroot = "//build/linux/debian_wheezy_arm-sysroot" | 67 sysroot = "//build/linux/debian_jessie_arm-sysroot" |
74 } else if (current_cpu == "arm64") { | 68 } else if (current_cpu == "arm64") { |
75 sysroot = "//build/linux/debian_jessie_arm64-sysroot" | 69 sysroot = "//build/linux/debian_jessie_arm64-sysroot" |
76 } else { | 70 } else { |
77 # Any other builds don't use a sysroot. | 71 # Any other builds don't use a sysroot. |
78 sysroot = "" | 72 sysroot = "" |
79 } | 73 } |
80 } | 74 } |
81 | 75 |
82 if (sysroot != "") { | 76 if (sysroot != "") { |
83 # Our sysroot images only contains gcc 4.6 headers, but chromium requires | 77 # Our sysroot images only contains gcc 4.6 headers, but chromium requires |
(...skipping 16 matching lines...) Expand all Loading... |
100 } | 94 } |
101 } else if (is_mac) { | 95 } else if (is_mac) { |
102 import("//build/config/mac/mac_sdk.gni") | 96 import("//build/config/mac/mac_sdk.gni") |
103 sysroot = mac_sdk_path | 97 sysroot = mac_sdk_path |
104 } else if (is_ios) { | 98 } else if (is_ios) { |
105 import("//build/config/ios/ios_sdk.gni") | 99 import("//build/config/ios/ios_sdk.gni") |
106 sysroot = ios_sdk_path | 100 sysroot = ios_sdk_path |
107 } else { | 101 } else { |
108 sysroot = "" | 102 sysroot = "" |
109 } | 103 } |
OLD | NEW |