| # 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/config/android/rules.gni") |
| |
| template("unwind_table_asset") { |
| # Note: This file name is used in multiple monochrome build scripts. |
| _asset_path = "${target_gen_dir}/${target_name}/unwind_cfi_32" |
| _unwind_action = "${target_name}__extract" |
| |
| action(_unwind_action) { |
| forward_variables_from(invoker, TESTONLY_AND_VISIBILITY) |
| |
| _root_dir = "$root_out_dir" |
| if (defined(android_secondary_abi_cpu)) { |
| _root_dir = get_label_info(":foo($android_secondary_abi_toolchain)", |
| "root_out_dir") |
| } |
| |
| script = "//build/android/gyp/extract_unwind_tables.py" |
| outputs = [ _asset_path ] |
| inputs = [ "${_root_dir}/lib.unstripped/$shlib_prefix${invoker.library_target}$shlib_extension" ] |
| |
| args = [ |
| "--input_path", |
| rebase_path( |
| "${_root_dir}/lib.unstripped/$shlib_prefix${invoker.library_target}$shlib_extension", |
| root_build_dir), |
| "--output_path", |
| rebase_path(_asset_path, root_build_dir), |
| "--dump_syms_path", |
| rebase_path("$root_out_dir/dump_syms", root_build_dir), |
| ] |
| deps = invoker.deps |
| deps += [ "//third_party/breakpad:dump_syms" ] |
| } |
| android_assets(target_name) { |
| forward_variables_from(invoker, TESTONLY_AND_VISIBILITY) |
| sources = [ _asset_path ] |
| disable_compression = true |
| deps = [ ":$_unwind_action" ] |
| } |
| } |