Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(27)

Side by Side Diff: build/config/android/rules.gni

Issue 1291793007: GN(android): Add scripts & runtime logic for installing _managed apks (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@gn-managed-install
Patch Set: review comments Created 5 years, 4 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 # Copyright 2014 The Chromium Authors. All rights reserved. 1 # Copyright 2014 The Chromium Authors. All rights reserved.
2 # Use of this source code is governed by a BSD-style license that can be 2 # Use of this source code is governed by a BSD-style license that can be
3 # found in the LICENSE file. 3 # found in the LICENSE file.
4 4
5 import("//base/android/linker/config.gni") 5 import("//base/android/linker/config.gni")
6 import("//build/config/android/config.gni") 6 import("//build/config/android/config.gni")
7 import("//build/config/android/internal_rules.gni") 7 import("//build/config/android/internal_rules.gni")
8 import("//build/toolchain/toolchain.gni") 8 import("//build/toolchain/toolchain.gni")
9 import("//third_party/android_platform/config.gni") 9 import("//third_party/android_platform/config.gni")
10 import("//tools/grit/grit_rule.gni") 10 import("//tools/grit/grit_rule.gni")
(...skipping 1252 matching lines...) Expand 10 before | Expand all | Expand 10 after
1263 if (defined(invoker.android_manifest_dep)) { 1263 if (defined(invoker.android_manifest_dep)) {
1264 _android_manifest_deps = [ invoker.android_manifest_dep ] 1264 _android_manifest_deps = [ invoker.android_manifest_dep ]
1265 } 1265 }
1266 _android_manifest = invoker.android_manifest 1266 _android_manifest = invoker.android_manifest
1267 1267
1268 _rebased_build_config = rebase_path(_build_config, root_build_dir) 1268 _rebased_build_config = rebase_path(_build_config, root_build_dir)
1269 _create_abi_split = 1269 _create_abi_split =
1270 defined(invoker.create_abi_split) && invoker.create_abi_split 1270 defined(invoker.create_abi_split) && invoker.create_abi_split
1271 _create_density_splits = 1271 _create_density_splits =
1272 defined(invoker.create_density_splits) && invoker.create_density_splits 1272 defined(invoker.create_density_splits) && invoker.create_density_splits
1273 _create_language_splits =
1274 defined(invoker.language_splits) && invoker.language_splits != []
1273 1275
1274 # Help GN understand that _create_abi_split is not unused (bug in GN). 1276 # Help GN understand that _create_abi_split is not unused (bug in GN).
1275 assert(_create_abi_split || true) 1277 assert(_create_abi_split || true)
1276 1278
1277 build_config_target = "${_template_name}__build_config" 1279 build_config_target = "${_template_name}__build_config"
1278 write_build_config(build_config_target) { 1280 write_build_config(build_config_target) {
1279 forward_variables_from(invoker, [ "apk_under_test" ]) 1281 forward_variables_from(invoker, [ "apk_under_test" ])
1280 type = "android_apk" 1282 type = "android_apk"
1281 dex_path = final_dex_path 1283 dex_path = final_dex_path
1282 resources_zip = resources_zip_path 1284 resources_zip = resources_zip_path
(...skipping 199 matching lines...) Expand 10 before | Expand all | Expand 10 after
1482 rebased_gdbserver = rebase_path([ android_gdbserver ], root_build_dir) 1484 rebased_gdbserver = rebase_path([ android_gdbserver ], root_build_dir)
1483 inputs += [ android_gdbserver ] 1485 inputs += [ android_gdbserver ]
1484 args += [ "--libraries=$rebased_gdbserver" ] 1486 args += [ "--libraries=$rebased_gdbserver" ]
1485 } 1487 }
1486 } 1488 }
1487 } 1489 }
1488 1490
1489 _final_deps += [ ":${_template_name}__create" ] 1491 _final_deps += [ ":${_template_name}__create" ]
1490 _incremental_final_deps += [ ":${_template_name}__create_incremental" ] 1492 _incremental_final_deps += [ ":${_template_name}__create_incremental" ]
1491 create_apk("${_template_name}__create") { 1493 create_apk("${_template_name}__create") {
1492 forward_variables_from(invoker, [ "language_splits" ]) 1494 forward_variables_from(invoker, [ "language_splits" ])
jbudorick 2015/08/27 00:37:37 We're already forwarding language_splits.
agrieve 2015/08/27 03:20:00 Done.
1493 apk_path = _final_apk_path 1495 apk_path = _final_apk_path
1494 android_manifest = _android_manifest 1496 android_manifest = _android_manifest
1495 resources_zip = _all_resources_zip_path 1497 resources_zip = _all_resources_zip_path
1496 dex_path = final_dex_path 1498 dex_path = final_dex_path
1497 load_library_from_apk = _load_library_from_apk 1499 load_library_from_apk = _load_library_from_apk
1498 create_density_splits = _create_density_splits 1500 create_density_splits = _create_density_splits
1501 if (_create_language_splits) {
1502 language_splits = invoker.language_splits
1503 }
1499 if (defined(invoker.extensions_to_not_compress)) { 1504 if (defined(invoker.extensions_to_not_compress)) {
1500 extensions_to_not_compress = invoker.extensions_to_not_compress 1505 extensions_to_not_compress = invoker.extensions_to_not_compress
1501 } else { 1506 } else {
1502 # Allow icu data, v8 snapshots, and pak files to be loaded directly from 1507 # Allow icu data, v8 snapshots, and pak files to be loaded directly from
1503 # the .apk. 1508 # the .apk.
1504 # Note: These are actually suffix matches, not necessarily extensions. 1509 # Note: These are actually suffix matches, not necessarily extensions.
1505 extensions_to_not_compress = ".dat,.bin,.pak" 1510 extensions_to_not_compress = ".dat,.bin,.pak"
1506 } 1511 }
1507 1512
1508 version_code = _version_code 1513 version_code = _version_code
(...skipping 60 matching lines...) Expand 10 before | Expand all | Expand 10 after
1569 keystore_password = _keystore_password 1574 keystore_password = _keystore_password
1570 1575
1571 native_libs_dir = _native_libs_dir 1576 native_libs_dir = _native_libs_dir
1572 deps = [ 1577 deps = [
1573 ":${_template_name}__prepare_native", 1578 ":${_template_name}__prepare_native",
1574 ":${_manifest_rule}", 1579 ":${_manifest_rule}",
1575 ] 1580 ]
1576 } 1581 }
1577 } 1582 }
1578 1583
1584 _create_incremental_script_rule_name = "${_template_name}__incremental_script"
1585 _incremental_final_deps += [ ":${_create_incremental_script_rule_name}" ]
1586 action(_create_incremental_script_rule_name) {
1587 script = "//build/android/gn/create_incremental_install_script.py"
1588 depfile = "$target_gen_dir/$target_name.d"
1589
1590 _generated_script_path =
1591 "${root_out_dir}/bin/install_incremental_${_template_name}"
1592 outputs = [
1593 depfile,
1594 _generated_script_path,
1595 ]
1596
1597 _rebased_apk_path_no_ext =
1598 rebase_path(_final_apk_path_no_ext, root_build_dir)
1599 _rebased_generated_script_path =
1600 rebase_path(_generated_script_path, root_build_dir)
1601 _rebased_depfile = rebase_path(depfile, root_build_dir)
1602 args = [
1603 "--apk-path=${_rebased_apk_path_no_ext}_incremental.apk",
1604 "--script-output-path=$_rebased_generated_script_path",
1605 "--depfile=$_rebased_depfile",
1606 ]
1607 if (defined(_native_libs_dir)) {
1608 _rebased_native_libs_dir = rebase_path(_native_libs_dir, root_build_dir)
1609 args += [ "--lib-dir=$_rebased_native_libs_dir/$android_app_abi" ]
1610 }
1611 if (_create_density_splits) {
1612 args += [ "--split=${_rebased_apk_path_no_ext}-density-*.apk" ]
1613 }
1614 if (_create_language_splits) {
1615 args += [ "--split=${_rebased_apk_path_no_ext}-language-*.apk" ]
1616 }
1617 }
1618
1579 group(target_name) { 1619 group(target_name) {
1580 forward_variables_from(invoker, [ "data_deps" ]) 1620 forward_variables_from(invoker, [ "data_deps" ])
1581 deps = _final_deps 1621 deps = _final_deps
1582 } 1622 }
1583 group("${target_name}_incremental") { 1623 group("${target_name}_incremental") {
1584 deps = _incremental_final_deps 1624 deps = _incremental_final_deps
1585 if (defined(invoker.data_deps)) { 1625 if (defined(invoker.data_deps)) {
1586 data_deps = invoker.data_deps 1626 data_deps = invoker.data_deps
1587 } 1627 }
1588 } 1628 }
(...skipping 378 matching lines...) Expand 10 before | Expand all | Expand 10 after
1967 2007
1968 # TODO(GYP): implement this. 2008 # TODO(GYP): implement this.
1969 template("uiautomator_test") { 2009 template("uiautomator_test") {
1970 set_sources_assignment_filter([]) 2010 set_sources_assignment_filter([])
1971 forward_variables_from(invoker, [ "testonly" ]) 2011 forward_variables_from(invoker, [ "testonly" ])
1972 assert(target_name != "") 2012 assert(target_name != "")
1973 assert(invoker.deps != [] || true) 2013 assert(invoker.deps != [] || true)
1974 group(target_name) { 2014 group(target_name) {
1975 } 2015 }
1976 } 2016 }
OLDNEW
« build/android/pylib/device/device_utils.py ('K') | « build/config/android/internal_rules.gni ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698