Commit 12435aaa authored by Andrew Grieve's avatar Andrew Grieve Committed by Commit Bot

Android: Skip incremental install json for targets that don't support it

Change-Id: I111afe4c1cd7c0c152333d678c22dc9eb284adf3
Reviewed-on: https://chromium-review.googlesource.com/1205805
Commit-Queue: agrieve <agrieve@chromium.org>
Reviewed-by: default avatarTibor Goldschwendt <tiborg@chromium.org>
Cr-Commit-Position: refs/heads/master@{#589523}
parent cc22e605
......@@ -320,18 +320,18 @@ template("write_build_config") {
if (defined(invoker.apk_path)) {
_rebased_apk_path = rebase_path(invoker.apk_path, root_build_dir)
_rebased_incremental_apk_path =
rebase_path(invoker.incremental_apk_path, root_build_dir)
_rebased_incremental_install_json_path =
rebase_path(invoker.incremental_install_json_path, root_build_dir)
_incremental_allowed =
defined(invoker.incremental_allowed) && invoker.incremental_allowed
args += [ "--apk-path=$_rebased_apk_path" ]
args += [ "--incremental-install-json-path=$_rebased_incremental_install_json_path" ]
assert(_rebased_incremental_apk_path != "") # Mark as used.
if (_incremental_allowed) {
args += [ "--incremental-apk-path=$_rebased_incremental_apk_path" ]
_rebased_incremental_apk_path =
rebase_path(invoker.incremental_apk_path, root_build_dir)
_rebased_incremental_install_json_path =
rebase_path(invoker.incremental_install_json_path, root_build_dir)
args += [
"--incremental-install-json-path=$_rebased_incremental_install_json_path",
"--incremental-apk-path=$_rebased_incremental_apk_path",
]
}
}
......
......@@ -1914,7 +1914,6 @@ if (enable_java_templates) {
# directory or they will not be available to tester bots.
_jar_path = "$_base_path.jar"
_lib_dex_path = "$_base_path.dex.jar"
_rebased_lib_dex_path = rebase_path(_lib_dex_path, root_build_dir)
_template_name = target_name
_is_bundle_module =
......@@ -1953,9 +1952,6 @@ if (enable_java_templates) {
rebase_path(_final_apk_path_no_ext, root_build_dir) + ".ap_"
}
_target_dir_name = get_label_info(target_name, "dir")
_incremental_install_json_path = "$root_out_dir/gen.runtime/$_target_dir_name/$target_name.incremental.json"
_version_code = android_default_version_code
if (defined(invoker.version_code)) {
_version_code = invoker.version_code
......@@ -2096,6 +2092,7 @@ if (enable_java_templates) {
}
_rebased_build_config = rebase_path(_build_config, root_build_dir)
assert(_rebased_build_config != "") # Mark as used.
_generate_buildconfig_java = !defined(invoker.apk_under_test)
if (defined(invoker.generate_buildconfig_java)) {
......@@ -2112,6 +2109,10 @@ if (enable_java_templates) {
_incremental_allowed =
!_is_bundle_module &&
!(defined(invoker.never_incremental) && invoker.never_incremental)
if (_incremental_allowed) {
_target_dir_name = get_label_info(target_name, "dir")
_incremental_install_json_path = "$root_out_dir/gen.runtime/$_target_dir_name/$target_name.incremental.json"
}
_android_manifest =
"$target_gen_dir/${_template_name}_manifest/AndroidManifest.xml"
......@@ -2314,10 +2315,11 @@ if (enable_java_templates) {
_srcjar_deps += [ ":${_template_name}__native_libraries_java" ]
}
_extra_native_libs = _sanitizer_runtimes
_extra_native_libs = []
_extra_native_libs_deps = []
assert(_extra_native_libs_deps == []) # Mark as used.
if (_native_libs_deps != []) {
_extra_native_libs += _sanitizer_runtimes
if (_use_chromium_linker) {
_extra_native_libs +=
[ "$root_out_dir/libchromium_android_linker$shlib_extension" ]
......@@ -2382,8 +2384,10 @@ if (enable_java_templates) {
if (!_is_bundle_module) {
apk_path = _final_apk_path
incremental_allowed = _incremental_allowed
incremental_apk_path = "${_final_apk_path_no_ext}_incremental.apk"
incremental_install_json_path = _incremental_install_json_path
if (_incremental_allowed) {
incremental_apk_path = "${_final_apk_path_no_ext}_incremental.apk"
incremental_install_json_path = _incremental_install_json_path
}
}
proguard_enabled = _proguard_enabled
......@@ -2533,16 +2537,16 @@ if (enable_java_templates) {
_final_deps += [ ":$_java_target" ]
}
_native_libs_file_arg_dep = ":$_build_config_target"
_native_libs_file_arg = "@FileArg($_rebased_build_config:native:libraries)"
_secondary_abi_native_libs_file_arg_dep = ":$_build_config_target"
_secondary_abi_native_libs_file_arg =
"@FileArg($_rebased_build_config:native:secondary_abi_libraries)"
assert(_secondary_abi_native_libs_file_arg != "" &&
_secondary_abi_native_libs_file_arg_dep != "") # Mark as used.
_all_native_libs_deps = _native_libs_deps + _extra_native_libs_deps +
[ _native_libs_file_arg_dep ]
assert(_all_native_libs_deps == _all_native_libs_deps) # Mark as used.
_all_native_libs_deps = []
if (_native_libs_deps != []) {
_native_libs_file_arg_dep = ":$_build_config_target"
if (!_is_bundle_module) {
_native_libs_file_arg =
"@FileArg($_rebased_build_config:native:libraries)"
}
_all_native_libs_deps += _native_libs_deps + _extra_native_libs_deps +
[ _native_libs_file_arg_dep ]
}
_extra_native_libs_even_when_incremental = []
assert(_extra_native_libs_even_when_incremental == []) # Mark as used.
......@@ -2629,18 +2633,17 @@ if (enable_java_templates) {
if (_native_libs_deps != [] ||
_extra_native_libs_even_when_incremental != []) {
deps += _all_native_libs_deps
native_libs_filearg = _native_libs_file_arg
native_libs = _extra_native_libs
native_libs_even_when_incremental =
_extra_native_libs_even_when_incremental
}
deps += _all_native_libs_deps
if (_secondary_abi_native_libs_deps != []) {
deps += _secondary_abi_native_libs_deps +
[ _secondary_abi_native_libs_file_arg_dep ]
deps += _secondary_abi_native_libs_deps
secondary_abi_native_libs_filearg =
_secondary_abi_native_libs_file_arg
"@FileArg($_rebased_build_config:native:secondary_abi_libraries)"
}
# Placeholders necessary for some older devices.
......@@ -2667,49 +2670,51 @@ if (enable_java_templates) {
] + _all_native_libs_deps + _secondary_abi_native_libs_deps
}
_write_installer_json_rule_name = "${_template_name}__incremental_json"
action_with_pydeps(_write_installer_json_rule_name) {
script = "//build/android/incremental_install/write_installer_json.py"
deps = [
_native_libs_file_arg_dep,
]
if (_incremental_allowed) {
_write_installer_json_rule_name = "${_template_name}__incremental_json"
action_with_pydeps(_write_installer_json_rule_name) {
script = "//build/android/incremental_install/write_installer_json.py"
deps = []
data = [
_incremental_install_json_path,
]
outputs = [
_incremental_install_json_path,
]
data = [
_incremental_install_json_path,
]
outputs = [
_incremental_install_json_path,
]
_rebased_apk_path_no_ext =
rebase_path(_final_apk_path_no_ext, root_build_dir)
_rebased_incremental_install_json_path =
rebase_path(_incremental_install_json_path, root_build_dir)
_dex_arg_key = "${_rebased_build_config}:final_dex:dependency_dex_files"
args = [
"--apk-path=${_rebased_apk_path_no_ext}_incremental.apk",
"--output-path=$_rebased_incremental_install_json_path",
"--dex-file=$_rebased_lib_dex_path",
"--dex-file-list=@FileArg($_dex_arg_key)",
]
if (_proguard_enabled) {
args += [ "--show-proguard-warning" ]
}
if (defined(_native_libs_file_arg)) {
args += [ "--native-libs=$_native_libs_file_arg" ]
}
if (_extra_native_libs != []) {
_rebased_extra_native_libs =
rebase_path(_extra_native_libs, root_build_dir)
args += [ "--native-libs=$_rebased_extra_native_libs" ]
}
if (_load_library_from_apk) {
args += [ "--dont-even-try=Incremental builds do not work with load_library_from_apk. Try setting is_component_build=true in your GN args." ]
_rebased_apk_path_no_ext =
rebase_path(_final_apk_path_no_ext, root_build_dir)
_rebased_incremental_install_json_path =
rebase_path(_incremental_install_json_path, root_build_dir)
_rebased_lib_dex_path = rebase_path(_lib_dex_path, root_build_dir)
_dex_arg_key = "${_rebased_build_config}:final_dex:dependency_dex_files"
args = [
"--apk-path=${_rebased_apk_path_no_ext}_incremental.apk",
"--output-path=$_rebased_incremental_install_json_path",
"--dex-file=$_rebased_lib_dex_path",
"--dex-file-list=@FileArg($_dex_arg_key)",
]
if (_proguard_enabled) {
args += [ "--show-proguard-warning" ]
}
if (_native_libs_deps != []) {
args += [ "--native-libs=$_native_libs_file_arg" ]
deps += [ _native_libs_file_arg_dep ]
}
if (_extra_native_libs != []) {
_rebased_extra_native_libs =
rebase_path(_extra_native_libs, root_build_dir)
args += [ "--native-libs=$_rebased_extra_native_libs" ]
}
if (_load_library_from_apk) {
args += [ "--dont-even-try=Incremental builds do not work with load_library_from_apk. Try setting is_component_build=true in your GN args." ]
}
}
_incremental_apk_operations = []
}
_apk_operations = []
_incremental_apk_operations = []
# Generate apk operation related script.
if (!defined(invoker.create_apk_script) || invoker.create_apk_script) {
......@@ -2753,7 +2758,9 @@ if (enable_java_templates) {
}
}
_apk_operations += [ ":$_apk_operations_target_name" ]
_incremental_apk_operations += [ ":$_apk_operations_target_name" ]
if (_incremental_allowed) {
_incremental_apk_operations += [ ":$_apk_operations_target_name" ]
}
}
group(target_name) {
......@@ -2809,8 +2816,6 @@ if (enable_java_templates) {
# Generate incremental apk related operations at runtime.
public_deps += _incremental_apk_operations
}
} else {
not_needed([ "_incremental_apk_operations" ])
}
}
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment