blob: dd92770b8911b4ae1e8929918467fdecef72ead1 [file] [log] [blame]
# Copyright 2013 The Flutter 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("config/config.gni")
# TODO(akbiggs): Delete this, symbol-index no longer exists, it has been
# replaced with ffx debug symbol-index. I don't think this build rule is being
# used because it would be failing if it was, so it can probably be removed
# safely.
#
# Template for running the symbol-index tool for registering symbols with the symbolizer.
#
# Parameters
# symbols - the build_id or ids.txt file to add to the index
# build_dir - optional, the root of the build id used to resolve
# relative source code paths found in the symbols.
#
# Forwarded parameters
# testonly
# deps
# public_deps
# visibility
template("fuchsia_symbol_index_tool") {
forward_variables_from(invoker, [ "*" ])
action(target_name) {
forward_variables_from(invoker,
[
"testonly",
"deps",
"public_deps",
"visibility",
])
assert(defined(invoker.symbols), "symbols is required.")
_symbol_file = invoker.symbols
_build_root_dir = root_build_dir
if (defined(invoker.build_root_dir)) {
_build_root_dir = invoker.build_root_dir
}
_stamp_file = "$target_gen_dir/$target_name.symbol_index.stamp"
outputs = [ _stamp_file ]
# tool path
_tool_path = "${fuchsia_tool_dir}/symbol-index"
script = "//build/gn_run_binary.py"
inputs = [
# Depend on the SDK hash, to ensure rebuild if the SDK tools change.
_symbol_file,
_tool_path,
]
args = [
"--stamp",
rebase_path(_stamp_file, root_build_dir),
rebase_path(_tool_path, root_build_dir),
"add",
rebase_path(_symbol_file, root_build_dir),
rebase_path(_build_root_dir, root_build_dir),
]
}
}