# Copyright 2014 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") import("//third_party/ijar/ijar.gni") sun_tools_jar_path = "$root_gen_dir/sun_tools_jar/tools.jar" action("find_sun_tools_jar") { script = "//build/android/gyp/find_sun_tools_jar.py" depfile = "$target_gen_dir/$target_name.d" outputs = [ depfile, sun_tools_jar_path, ] args = [ "--depfile", rebase_path(depfile, root_build_dir), "--output", rebase_path(sun_tools_jar_path, root_build_dir), ] } java_prebuilt("sun_tools_java") { jar_path = sun_tools_jar_path jar_dep = ":find_sun_tools_jar" } generate_interface_jar("android_ijar") { input_jar = android_sdk_jar output_jar = "$root_out_dir/lib.java/android.interface.jar" } # Copy to the lib.unstripped directory so that gdb can easily find it. copy("cpplib_unstripped") { _soname = "libc++_shared.so" sources = [ "${android_libcpp_root}/libs/${android_app_abi}/${_soname}", ] outputs = [ "${root_out_dir}/lib.unstripped/${_soname}", ] } action("cpplib_stripped") { _strip_bin = "${android_tool_prefix}strip" _soname = "libc++_shared.so" _input_so = "${root_out_dir}/lib.unstripped/${_soname}" _output_so = "${root_shlib_dir}/${_soname}" deps = [ ":cpplib_unstripped", ] script = "//build/gn_run_binary.py" inputs = [ _strip_bin, ] sources = [ _input_so, ] outputs = [ _output_so, ] _rebased_strip_bin = rebase_path(_strip_bin, root_out_dir) _rebased_input_so = rebase_path(_input_so, root_out_dir) _rebased_output_so = rebase_path(_output_so, root_out_dir) args = [ _rebased_strip_bin, "--strip-unneeded", "-o", _rebased_output_so, _rebased_input_so, ] } group("devil_py") { data = [ "devil_chromium.json", "devil_chromium.py", "//third_party/android_tools/sdk/build-tools/23.0.1/aapt", "//third_party/android_tools/sdk/build-tools/23.0.1/dexdump", "//third_party/android_tools/sdk/build-tools/23.0.1/split-select", "//third_party/android_tools/sdk/platform-tools/adb", "//third_party/catapult/catapult_base/catapult_base/", "//third_party/catapult/dependency_manager/dependency_manager/", "//third_party/catapult/third_party/gsutil/", "//third_party/catapult/devil/devil/", ] } group("test_runner_py") { data = [ "test_runner.py", "pylib/", "//build/util/lib/common/", ] data_deps = [ ":devil_py", ] } # Create wrapper scripts in out/bin that takes care of setting the # --output-directory. _scripts_to_wrap = [ # TODO(agrieve): Once GYP is no more, delete the checked-in adb_gdb_* scripts # and generated a script for each android_apk() that has a native library. "adb_gdb_android_webview_shell", "adb_gdb_blimp_client", "adb_gdb_chrome_public", "adb_gdb_content_shell", "adb_gdb_cronet_sample", "adb_gdb_mojo_shell", "asan_symbolize.py", "tombstones.py", ] _wrapper_targets = [] foreach(script, _scripts_to_wrap) { _target_name = get_path_info(script, "name") + "_wrapper" _wrapper_targets += [ ":$_target_name" ] wrapper_script(_target_name) { target = script } } group("wrapper_scripts") { deps = _wrapper_targets }