OLD | NEW |
1 # Copyright 2013 The Chromium Authors. All rights reserved. | 1 # Copyright 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 import("//build/config/sysroot.gni") | 5 import("//build/config/sysroot.gni") |
6 import("//build/toolchain/ccache.gni") | 6 import("//build/toolchain/ccache.gni") |
7 import("//build/toolchain/clang.gni") | 7 import("//build/toolchain/clang.gni") |
8 import("//build/toolchain/gcc_toolchain.gni") | 8 import("//build/toolchain/gcc_toolchain.gni") |
9 import("//build/toolchain/goma.gni") | 9 import("//build/toolchain/goma.gni") |
10 | 10 |
11 declare_args() { | 11 declare_args() { |
12 toolchain_prefix = "" | 12 toolchain_prefix = "" |
| 13 # TODO(zra): Add an argument for overriding the host toolchain. |
13 } | 14 } |
14 | 15 |
15 if (use_goma) { | 16 if (use_goma) { |
16 assert(!use_ccache, "Goma and ccache can't be used together.") | 17 assert(!use_ccache, "Goma and ccache can't be used together.") |
17 compiler_prefix = "$goma_dir/gomacc " | 18 compiler_prefix = "$goma_dir/gomacc " |
18 } else if (use_ccache) { | 19 } else if (use_ccache) { |
19 compiler_prefix = "ccache " | 20 compiler_prefix = "ccache " |
20 } else { | 21 } else { |
21 compiler_prefix = "" | 22 compiler_prefix = "" |
22 } | 23 } |
(...skipping 34 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
57 strip = "${prefix}strip" | 58 strip = "${prefix}strip" |
58 | 59 |
59 toolchain_cpu = "arm64" | 60 toolchain_cpu = "arm64" |
60 toolchain_os = "linux" | 61 toolchain_os = "linux" |
61 is_clang = false | 62 is_clang = false |
62 } | 63 } |
63 | 64 |
64 gcc_toolchain("clang_x86") { | 65 gcc_toolchain("clang_x86") { |
65 prefix = rebase_path("//buildtools/toolchain/clang+llvm-x86_64-linux/bin", | 66 prefix = rebase_path("//buildtools/toolchain/clang+llvm-x86_64-linux/bin", |
66 root_build_dir) | 67 root_build_dir) |
67 if (toolchain_prefix != "") { | |
68 prefix = toolchain_prefix | |
69 } | |
70 cc = "${compiler_prefix}${prefix}/clang" | 68 cc = "${compiler_prefix}${prefix}/clang" |
71 cxx = "${compiler_prefix}${prefix}/clang++" | 69 cxx = "${compiler_prefix}${prefix}/clang++" |
72 readelf = "readelf" | 70 readelf = "readelf" |
73 nm = "${prefix}/llvm-nm" | 71 nm = "${prefix}/llvm-nm" |
74 ar = "${prefix}/llvm-ar" | 72 ar = "${prefix}/llvm-ar" |
75 ld = cxx | 73 ld = cxx |
76 strip = "${prefix}/strip" | 74 strip = "${prefix}/strip" |
77 | 75 |
78 toolchain_cpu = "x86" | 76 toolchain_cpu = "x86" |
79 toolchain_os = "linux" | 77 toolchain_os = "linux" |
80 is_clang = true | 78 is_clang = true |
81 } | 79 } |
82 | 80 |
83 gcc_toolchain("x86") { | 81 gcc_toolchain("x86") { |
84 prefix = "" | 82 prefix = "" |
85 if (toolchain_prefix != "") { | |
86 prefix = toolchain_prefix | |
87 } | |
88 cc = "${compiler_prefix}${prefix}gcc" | 83 cc = "${compiler_prefix}${prefix}gcc" |
89 cxx = "${compiler_prefix}${prefix}g++" | 84 cxx = "${compiler_prefix}${prefix}g++" |
90 | 85 |
91 readelf = "${prefix}readelf" | 86 readelf = "${prefix}readelf" |
92 nm = "${prefix}nm" | 87 nm = "${prefix}nm" |
93 ar = "${prefix}ar" | 88 ar = "${prefix}ar" |
94 ld = cxx | 89 ld = cxx |
95 strip = "${prefix}strip" | 90 strip = "${prefix}strip" |
96 | 91 |
97 toolchain_cpu = "x86" | 92 toolchain_cpu = "x86" |
98 toolchain_os = "linux" | 93 toolchain_os = "linux" |
99 is_clang = false | 94 is_clang = false |
100 } | 95 } |
101 | 96 |
102 gcc_toolchain("clang_x64") { | 97 gcc_toolchain("clang_x64") { |
103 prefix = rebase_path("//buildtools/toolchain/clang+llvm-x86_64-linux/bin", | 98 prefix = rebase_path("//buildtools/toolchain/clang+llvm-x86_64-linux/bin", |
104 root_build_dir) | 99 root_build_dir) |
105 if (toolchain_prefix != "") { | |
106 prefix = toolchain_prefix | |
107 } | |
108 cc = "${compiler_prefix}${prefix}/clang" | 100 cc = "${compiler_prefix}${prefix}/clang" |
109 cxx = "${compiler_prefix}${prefix}/clang++" | 101 cxx = "${compiler_prefix}${prefix}/clang++" |
110 | 102 |
111 readelf = "readelf" | 103 readelf = "readelf" |
112 nm = "${prefix}/llvm-nm" | 104 nm = "${prefix}/llvm-nm" |
113 ar = "${prefix}/llvm-ar" | 105 ar = "${prefix}/llvm-ar" |
114 ld = cxx | 106 ld = cxx |
115 strip = "${prefix}/strip" | 107 strip = "${prefix}/strip" |
116 | 108 |
117 toolchain_cpu = "x64" | 109 toolchain_cpu = "x64" |
118 toolchain_os = "linux" | 110 toolchain_os = "linux" |
119 is_clang = true | 111 is_clang = true |
120 } | 112 } |
121 | 113 |
122 gcc_toolchain("x64") { | 114 gcc_toolchain("x64") { |
123 prefix = "" | 115 prefix = "" |
124 if (toolchain_prefix != "") { | |
125 prefix = toolchain_prefix | |
126 } | |
127 cc = "${compiler_prefix}${prefix}gcc" | 116 cc = "${compiler_prefix}${prefix}gcc" |
128 cxx = "${compiler_prefix}${prefix}g++" | 117 cxx = "${compiler_prefix}${prefix}g++" |
129 | 118 |
130 readelf = "${prefix}readelf" | 119 readelf = "${prefix}readelf" |
131 nm = "${prefix}nm" | 120 nm = "${prefix}nm" |
132 ar = "${prefix}ar" | 121 ar = "${prefix}ar" |
133 ld = cxx | 122 ld = cxx |
134 strip = "${prefix}strip" | 123 strip = "${prefix}strip" |
135 | 124 |
136 toolchain_cpu = "x64" | 125 toolchain_cpu = "x64" |
137 toolchain_os = "linux" | 126 toolchain_os = "linux" |
138 is_clang = false | 127 is_clang = false |
139 } | 128 } |
140 | 129 |
141 gcc_toolchain("mipsel") { | 130 gcc_toolchain("mipsel") { |
142 cc = "${compiler_prefix}${toolchain_prefix}gcc" | 131 cc = "${compiler_prefix}${toolchain_prefix}gcc" |
143 cxx = "${compiler_prefix}${toolchain_prefix}g++" | 132 cxx = "${compiler_prefix}${toolchain_prefix}g++" |
144 ar = "${toolchain_prefix}ar" | 133 ar = "${toolchain_prefix}ar" |
145 ld = cxx | 134 ld = cxx |
146 readelf = "${toolchain_prefix}readelf" | 135 readelf = "${toolchain_prefix}readelf" |
147 nm = "${toolchain_prefix}nm" | 136 nm = "${toolchain_prefix}nm" |
148 strip = "${toolchain_prefix}strip" | 137 strip = "${toolchain_prefix}strip" |
149 | 138 |
150 toolchain_cpu = "${target_cpu}" | 139 toolchain_cpu = "${target_cpu}" |
151 toolchain_os = "linux" | 140 toolchain_os = "linux" |
152 is_clang = is_clang | 141 is_clang = is_clang |
153 } | 142 } |
OLD | NEW |