48 lines
1.3 KiB
Plaintext
48 lines
1.3 KiB
Plaintext
# Copyright 2019 The Chromium Authors
|
|
# Use of this source code is governed by a BSD-style license that can be
|
|
# found in the LICENSE file.
|
|
|
|
assert(is_fuchsia)
|
|
|
|
# Creates a tarball of unstripped binaries, structured according to the
|
|
# ".build_ids" convention used by the symbolizer and GNU GDB.
|
|
#
|
|
# Parameters:
|
|
# deps: Must all be fuchsia_package() targets.
|
|
# ids_txt: The "ids.txt" file which lists the relative paths to unstripped
|
|
# executables and libraries, along with their build IDs.
|
|
# archive_name: The path to the compressed tarball that will be generated.
|
|
template("symbol_archive") {
|
|
assert(!is_debug)
|
|
|
|
action(target_name) {
|
|
_ids_txt = invoker.ids_txt
|
|
_build_ids = invoker.archive_name
|
|
|
|
script = "//build/config/fuchsia/build_symbol_archive.py"
|
|
|
|
inputs = [ _ids_txt ]
|
|
|
|
outputs = [ _build_ids ]
|
|
|
|
# For each package in |deps| it is necessary to additionally depend upon
|
|
# the corresponding archive-manifest target, which is what creates the
|
|
# ids.txt file.
|
|
deps = []
|
|
foreach(package, invoker.deps) {
|
|
deps += [
|
|
package,
|
|
package + "__archive-manifest",
|
|
]
|
|
}
|
|
|
|
args = [
|
|
rebase_path(_ids_txt),
|
|
"-o",
|
|
rebase_path(_build_ids),
|
|
"--fuchsia-build-id-dir",
|
|
rebase_path("//third_party/fuchsia-sdk/sdk/.build-id"),
|
|
]
|
|
}
|
|
}
|