mirror of
https://github.com/dart-lang/sdk
synced 2024-09-15 23:19:47 +00:00
[infra] Remove dependence on //third_party/gyp/pylib/gyp/mac_tool.py
This is a step toward removing //third_party/gyp R=rmacnak@google.com Review-Url: https://codereview.chromium.org/2997103002 .
This commit is contained in:
parent
55612ef10c
commit
3e16939be7
|
@ -21,18 +21,13 @@ if (use_goma) {
|
||||||
goma_prefix = ""
|
goma_prefix = ""
|
||||||
}
|
}
|
||||||
|
|
||||||
# This will copy the gyp-mac-tool to the build directory. We pass in the source
|
|
||||||
# file of the win tool.
|
|
||||||
gyp_mac_tool_source =
|
|
||||||
rebase_path("//third_party/gyp/pylib/gyp/mac_tool.py", root_build_dir)
|
|
||||||
exec_script("setup_toolchain.py", [ gyp_mac_tool_source ])
|
|
||||||
|
|
||||||
# Shared toolchain definition. Invocations should set toolchain_os to set the
|
# Shared toolchain definition. Invocations should set toolchain_os to set the
|
||||||
# build args in this definition.
|
# build args in this definition.
|
||||||
template("mac_toolchain") {
|
template("mac_toolchain") {
|
||||||
toolchain(target_name) {
|
toolchain(target_name) {
|
||||||
assert(defined(invoker.cc), "mac_toolchain() must specify a \"cc\" value")
|
assert(defined(invoker.cc), "mac_toolchain() must specify a \"cc\" value")
|
||||||
assert(defined(invoker.cxx), "mac_toolchain() must specify a \"cxx\" value")
|
assert(defined(invoker.cxx), "mac_toolchain() must specify a \"cxx\" value")
|
||||||
|
assert(defined(invoker.ar), "mac_toolchain() must specify an \"ar\" value")
|
||||||
assert(defined(invoker.ld), "mac_toolchain() must specify a \"ld\" value")
|
assert(defined(invoker.ld), "mac_toolchain() must specify a \"ld\" value")
|
||||||
assert(defined(invoker.toolchain_cpu),
|
assert(defined(invoker.toolchain_cpu),
|
||||||
"mac_toolchain() must specify a \"toolchain_cpu\"")
|
"mac_toolchain() must specify a \"toolchain_cpu\"")
|
||||||
|
@ -44,6 +39,7 @@ template("mac_toolchain") {
|
||||||
# these values in our scope.
|
# these values in our scope.
|
||||||
cc = invoker.cc
|
cc = invoker.cc
|
||||||
cxx = invoker.cxx
|
cxx = invoker.cxx
|
||||||
|
ar = invoker.ar
|
||||||
ld = invoker.ld
|
ld = invoker.ld
|
||||||
|
|
||||||
# Make these apply to all tools below.
|
# Make these apply to all tools below.
|
||||||
|
@ -113,8 +109,10 @@ template("mac_toolchain") {
|
||||||
}
|
}
|
||||||
|
|
||||||
tool("alink") {
|
tool("alink") {
|
||||||
command = "rm -f {{output}} && ./gyp-mac-tool filter-libtool libtool -static -o {{output}} {{inputs}}"
|
rspfile = "{{output}}.rsp"
|
||||||
description = "LIBTOOL-STATIC {{output}}"
|
command = "rm -f {{output}} && $ar rcs {{output}} @$rspfile"
|
||||||
|
description = "AR {{output}}"
|
||||||
|
rspfile_content = "{{inputs}}"
|
||||||
outputs = [
|
outputs = [
|
||||||
"{{target_out_dir}}/{{target_output_name}}{{output_extension}}",
|
"{{target_out_dir}}/{{target_output_name}}{{output_extension}}",
|
||||||
]
|
]
|
||||||
|
@ -229,6 +227,7 @@ mac_toolchain("clang_x64") {
|
||||||
root_build_dir)
|
root_build_dir)
|
||||||
cc = "${goma_prefix}$prefix/clang"
|
cc = "${goma_prefix}$prefix/clang"
|
||||||
cxx = "${goma_prefix}$prefix/clang++"
|
cxx = "${goma_prefix}$prefix/clang++"
|
||||||
|
ar = "${prefix}/llvm-ar"
|
||||||
ld = cxx
|
ld = cxx
|
||||||
strip = "strip"
|
strip = "strip"
|
||||||
is_clang = true
|
is_clang = true
|
||||||
|
@ -243,6 +242,7 @@ mac_toolchain("clang_x86") {
|
||||||
root_build_dir)
|
root_build_dir)
|
||||||
cc = "${goma_prefix}$prefix/clang"
|
cc = "${goma_prefix}$prefix/clang"
|
||||||
cxx = "${goma_prefix}$prefix/clang++"
|
cxx = "${goma_prefix}$prefix/clang++"
|
||||||
|
ar = "${prefix}/llvm-ar"
|
||||||
ld = cxx
|
ld = cxx
|
||||||
strip = "strip"
|
strip = "strip"
|
||||||
is_clang = true
|
is_clang = true
|
||||||
|
|
|
@ -1,29 +0,0 @@
|
||||||
# Copyright (c) 2013 The Chromium Authors. All rights reserved.
|
|
||||||
# Use of this source code is governed by a BSD-style license that can be
|
|
||||||
# found in the LICENSE file.
|
|
||||||
|
|
||||||
import os
|
|
||||||
import stat
|
|
||||||
import sys
|
|
||||||
|
|
||||||
def CopyTool(source_path):
|
|
||||||
"""Copies the given tool to the current directory, including a warning not
|
|
||||||
to edit it."""
|
|
||||||
with open(source_path) as source_file:
|
|
||||||
tool_source = source_file.readlines()
|
|
||||||
|
|
||||||
# Add header and write it out to the current directory (which should be the
|
|
||||||
# root build dir).
|
|
||||||
out_path = 'gyp-mac-tool'
|
|
||||||
with open(out_path, 'w') as tool_file:
|
|
||||||
tool_file.write(''.join([tool_source[0],
|
|
||||||
'# Generated by setup_toolchain.py do not edit.\n']
|
|
||||||
+ tool_source[1:]))
|
|
||||||
st = os.stat(out_path)
|
|
||||||
os.chmod(out_path, st.st_mode | stat.S_IEXEC)
|
|
||||||
|
|
||||||
# Find the tool source, it's the first argument, and copy it.
|
|
||||||
if len(sys.argv) != 2:
|
|
||||||
print "Need one argument (mac_tool source path)."
|
|
||||||
sys.exit(1)
|
|
||||||
CopyTool(sys.argv[1])
|
|
Loading…
Reference in a new issue