diff options
Diffstat (limited to 'third_party/libwebrtc/build/linux/extract_symbols.gni')
-rw-r--r-- | third_party/libwebrtc/build/linux/extract_symbols.gni | 41 |
1 files changed, 41 insertions, 0 deletions
diff --git a/third_party/libwebrtc/build/linux/extract_symbols.gni b/third_party/libwebrtc/build/linux/extract_symbols.gni new file mode 100644 index 0000000000..c92aaa0a19 --- /dev/null +++ b/third_party/libwebrtc/build/linux/extract_symbols.gni @@ -0,0 +1,41 @@ +# Copyright 2018 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("//build/toolchain/toolchain.gni") + +# Extracts symbols from a binary into a symbol file using dump_app_syms.py. +# +# Args: +# binary: Path to the binary containing symbols to extract, e.g.: +# "$root_out_dir/chrome" +# symbol_file: Desired output file for symbols, e.g.: +# "$root_out_dir/chrome.breakpad.$target_cpu" +template("extract_symbols") { + forward_variables_from(invoker, + [ + "deps", + "testonly", + ]) + action("${target_name}") { + dump_syms_label = "//third_party/breakpad:dump_syms($host_toolchain)" + dump_syms_binary = + get_label_info(dump_syms_label, "root_out_dir") + "/" + "dump_syms" + + pool = "//build/toolchain:link_pool($default_toolchain)" + script = "//build/linux/dump_app_syms.py" + inputs = [ + invoker.binary, + dump_syms_binary, + ] + outputs = [ invoker.symbol_file ] + args = [ + "./" + rebase_path(dump_syms_binary, root_build_dir), + "0", # strip_binary = false + rebase_path(invoker.binary, root_build_dir), + rebase_path(invoker.symbol_file, root_build_dir), + ] + + deps += [ dump_syms_label ] + } +} |