| 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 # TODO(brettw) Use "gcc_toolchain.gni" like the Linux toolchains. This requires | 5 # TODO(brettw) Use "gcc_toolchain.gni" like the Linux toolchains. This requires |
| 6 # some enhancements since the commands on Mac are slightly different than on | 6 # some enhancements since the commands on Mac are slightly different than on |
| 7 # Linux. | 7 # Linux. |
| 8 | 8 |
| 9 import("../goma.gni") | 9 import("../goma.gni") |
| 10 import("//build/config/ios/ios_sdk.gni") |
| 10 | 11 |
| 11 assert(host_os == "mac") | 12 assert(host_os == "mac") |
| 12 | 13 |
| 13 import("//build/toolchain/clang.gni") | 14 import("//build/toolchain/clang.gni") |
| 14 import("//build/toolchain/goma.gni") | 15 import("//build/toolchain/goma.gni") |
| 15 | 16 |
| 16 if (use_goma) { | 17 if (use_goma) { |
| 17 goma_prefix = "$goma_dir/gomacc " | 18 goma_prefix = "$goma_dir/gomacc " |
| 18 } else { | 19 } else { |
| 19 goma_prefix = "" | 20 goma_prefix = "" |
| (...skipping 54 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 74 command = "$cc -MMD -MF $depfile {{defines}} {{include_dirs}} {{cflags}} {
{cflags_c}} -c {{source}} -o {{output}}" | 75 command = "$cc -MMD -MF $depfile {{defines}} {{include_dirs}} {{cflags}} {
{cflags_c}} -c {{source}} -o {{output}}" |
| 75 depsformat = "gcc" | 76 depsformat = "gcc" |
| 76 description = "ASM {{output}}" | 77 description = "ASM {{output}}" |
| 77 outputs = [ | 78 outputs = [ |
| 78 "{{target_out_dir}}/{{target_output_name}}/{{source_name_part}}.o", | 79 "{{target_out_dir}}/{{target_output_name}}/{{source_name_part}}.o", |
| 79 ] | 80 ] |
| 80 } | 81 } |
| 81 | 82 |
| 82 tool("objc") { | 83 tool("objc") { |
| 83 depfile = "{{output}}.d" | 84 depfile = "{{output}}.d" |
| 84 command = "$cxx -MMD -MF $depfile {{defines}} {{include_dirs}} {{cflags}}
{{cflags_objc}} -c {{source}} -o {{output}}" | 85 command = "$cxx -MMD -MF $depfile {{defines}} {{include_dirs}} {{cflags}}
{{cflags_c}} {{cflags_objc}} -c {{source}} -o {{output}}" |
| 85 depsformat = "gcc" | 86 depsformat = "gcc" |
| 86 description = "OBJC {{output}}" | 87 description = "OBJC {{output}}" |
| 87 outputs = [ | 88 outputs = [ |
| 88 "{{target_out_dir}}/{{target_output_name}}/{{source_name_part}}.o", | 89 "{{target_out_dir}}/{{target_output_name}}/{{source_name_part}}.o", |
| 89 ] | 90 ] |
| 90 } | 91 } |
| 91 | 92 |
| 92 tool("objcxx") { | 93 tool("objcxx") { |
| 93 depfile = "{{output}}.d" | 94 depfile = "{{output}}.d" |
| 94 command = "$cxx -MMD -MF $depfile {{defines}} {{include_dirs}} {{cflags}}
{{cflags_objcc}} -c {{source}} -o {{output}}" | 95 command = "$cxx -MMD -MF $depfile {{defines}} {{include_dirs}} {{cflags}}
{{cflags_cc}} {{cflags_objcc}} -c {{source}} -o {{output}}" |
| 95 depsformat = "gcc" | 96 depsformat = "gcc" |
| 96 description = "OBJCXX {{output}}" | 97 description = "OBJCXX {{output}}" |
| 97 outputs = [ | 98 outputs = [ |
| 98 "{{target_out_dir}}/{{target_output_name}}/{{source_name_part}}.o", | 99 "{{target_out_dir}}/{{target_output_name}}/{{source_name_part}}.o", |
| 99 ] | 100 ] |
| 100 } | 101 } |
| 101 | 102 |
| 102 tool("alink") { | 103 tool("alink") { |
| 103 command = "rm -f {{output}} && ./gyp-mac-tool filter-libtool libtool -stat
ic -o {{output}} {{inputs}}" | 104 command = "rm -f {{output}} && ./gyp-mac-tool filter-libtool libtool -stat
ic -o {{output}} {{inputs}}" |
| 104 description = "LIBTOOL-STATIC {{output}}" | 105 description = "LIBTOOL-STATIC {{output}}" |
| (...skipping 92 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 197 toolchain_cpu = "arm" | 198 toolchain_cpu = "arm" |
| 198 toolchain_os = "mac" | 199 toolchain_os = "mac" |
| 199 prefix = rebase_path("//third_party/llvm-build/Release+Asserts/bin", | 200 prefix = rebase_path("//third_party/llvm-build/Release+Asserts/bin", |
| 200 root_build_dir) | 201 root_build_dir) |
| 201 cc = "${goma_prefix}$prefix/clang" | 202 cc = "${goma_prefix}$prefix/clang" |
| 202 cxx = "${goma_prefix}$prefix/clang++" | 203 cxx = "${goma_prefix}$prefix/clang++" |
| 203 ld = cxx | 204 ld = cxx |
| 204 is_clang = true | 205 is_clang = true |
| 205 } | 206 } |
| 206 | 207 |
| 208 mac_toolchain("ios_clang_arm") { |
| 209 # TODO(GYP): Do we need ios_clang_armv7 and ios_clang_arm64 ? |
| 210 toolchain_cpu = "arm" |
| 211 toolchain_os = "mac" |
| 212 |
| 213 # TODO(GYP): We need to support being able to use the version of clang |
| 214 # shipped w/ XCode instead of the one pulled from upstream. |
| 215 prefix = rebase_path("//third_party/llvm-build/Release+Asserts/bin", |
| 216 root_build_dir) |
| 217 cc = "${goma_prefix}$prefix/clang" |
| 218 cxx = "${goma_prefix}$prefix/clang++" |
| 219 ld = cxx |
| 220 is_clang = true |
| 221 } |
| 222 |
| 207 mac_toolchain("arm") { | 223 mac_toolchain("arm") { |
| 208 toolchain_cpu = "arm" | 224 toolchain_cpu = "arm" |
| 209 toolchain_os = "mac" | 225 toolchain_os = "mac" |
| 210 cc = "${goma_prefix}/gcc" | 226 cc = "${goma_prefix}/gcc" |
| 211 cxx = "${goma_prefix}/g++" | 227 cxx = "${goma_prefix}/g++" |
| 212 ld = cxx | 228 ld = cxx |
| 213 is_clang = false | 229 is_clang = false |
| 214 } | 230 } |
| 215 | 231 |
| 216 mac_toolchain("clang_x64") { | 232 mac_toolchain("clang_x64") { |
| 217 toolchain_cpu = "x64" | 233 toolchain_cpu = "x64" |
| 218 toolchain_os = "mac" | 234 toolchain_os = "mac" |
| 219 prefix = rebase_path("//third_party/llvm-build/Release+Asserts/bin", | 235 prefix = rebase_path("//third_party/llvm-build/Release+Asserts/bin", |
| 220 root_build_dir) | 236 root_build_dir) |
| 221 cc = "${goma_prefix}$prefix/clang" | 237 cc = "${goma_prefix}$prefix/clang" |
| 222 cxx = "${goma_prefix}$prefix/clang++" | 238 cxx = "${goma_prefix}$prefix/clang++" |
| 223 ld = cxx | 239 ld = cxx |
| 224 is_clang = true | 240 is_clang = true |
| 225 } | 241 } |
| 226 | 242 |
| 227 mac_toolchain("x64") { | 243 mac_toolchain("x64") { |
| 228 toolchain_cpu = "x64" | 244 toolchain_cpu = "x64" |
| 229 toolchain_os = "mac" | 245 toolchain_os = "mac" |
| 230 cc = "${goma_prefix}/gcc" | 246 cc = "${goma_prefix}/gcc" |
| 231 cxx = "${goma_prefix}/g++" | 247 cxx = "${goma_prefix}/g++" |
| 232 ld = cxx | 248 ld = cxx |
| 233 is_clang = false | 249 is_clang = false |
| 234 } | 250 } |
| OLD | NEW |