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

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

Issue 1418243003: Add GN template for android_assets(). Use it in content_shell_apk. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 5 years, 2 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("//build/config/android/config.gni") 5 import("//build/config/android/config.gni")
6 import("//build/config/zip.gni") 6 import("//build/config/zip.gni")
7 import("//third_party/ijar/ijar.gni") 7 import("//third_party/ijar/ijar.gni")
8 8
9 assert(is_android) 9 assert(is_android)
10 10
(...skipping 224 matching lines...) Expand 10 before | Expand all | Expand 10 after
235 template("write_build_config") { 235 template("write_build_config") {
236 set_sources_assignment_filter([]) 236 set_sources_assignment_filter([])
237 237
238 assert(defined(invoker.type)) 238 assert(defined(invoker.type))
239 assert(defined(invoker.build_config)) 239 assert(defined(invoker.build_config))
240 240
241 type = invoker.type 241 type = invoker.type
242 build_config = invoker.build_config 242 build_config = invoker.build_config
243 243
244 assert(type == "android_apk" || type == "java_library" || 244 assert(type == "android_apk" || type == "java_library" ||
245 type == "android_resources" || type == "deps_dex") 245 type == "android_resources" || type == "deps_dex" ||
246 type == "android_assets")
246 247
247 action(target_name) { 248 action(target_name) {
248 deps = [] 249 deps = []
249 forward_variables_from(invoker, 250 forward_variables_from(invoker,
250 [ 251 [
251 "deps", 252 "deps",
252 "testonly", 253 "testonly",
253 "visibility", 254 "visibility",
254 ]) 255 ])
255 256
(...skipping 20 matching lines...) Expand all
276 type, 277 type,
277 "--depfile", 278 "--depfile",
278 rebase_path(depfile, root_build_dir), 279 rebase_path(depfile, root_build_dir),
279 "--possible-deps-configs=$rebase_possible_deps_configs", 280 "--possible-deps-configs=$rebase_possible_deps_configs",
280 "--build-config", 281 "--build-config",
281 rebase_path(build_config, root_build_dir), 282 rebase_path(build_config, root_build_dir),
282 ] 283 ]
283 284
284 is_java_library = type == "java_library" 285 is_java_library = type == "java_library"
285 is_apk = type == "android_apk" 286 is_apk = type == "android_apk"
287 is_android_assets = type == "android_assets"
286 is_android_resources = type == "android_resources" 288 is_android_resources = type == "android_resources"
287 is_deps_dex = type == "deps_dex" 289 is_deps_dex = type == "deps_dex"
288 290
289 supports_android = is_apk || is_android_resources || is_deps_dex || 291 supports_android =
290 (is_java_library && defined(invoker.supports_android) && 292 is_apk || is_android_assets || is_android_resources || is_deps_dex ||
291 invoker.supports_android) 293 (is_java_library && defined(invoker.supports_android) &&
292 requires_android = is_apk || is_android_resources || is_deps_dex || 294 invoker.supports_android)
293 (is_java_library && defined(invoker.requires_android) && 295 requires_android =
294 invoker.requires_android) 296 is_apk || is_android_assets || is_android_resources || is_deps_dex ||
297 (is_java_library && defined(invoker.requires_android) &&
298 invoker.requires_android)
295 299
296 assert(!requires_android || supports_android, 300 assert(!requires_android || supports_android,
297 "requires_android requires" + " supports_android") 301 "requires_android requires" + " supports_android")
298 302
299 # Mark these variables as used. 303 # Mark these variables as used.
300 assert(is_java_library || true) 304 assert(is_java_library || true)
301 assert(is_apk || true) 305 assert(is_apk || true)
302 assert(is_android_resources || true) 306 assert(is_android_resources || true)
303 assert(is_deps_dex || true) 307 assert(is_deps_dex || true)
304 308
(...skipping 27 matching lines...) Expand all
332 get_label_info(invoker.apk_under_test, "target_gen_dir") 336 get_label_info(invoker.apk_under_test, "target_gen_dir")
333 apk_under_test_name = get_label_info(invoker.apk_under_test, "name") 337 apk_under_test_name = get_label_info(invoker.apk_under_test, "name")
334 apk_under_test_config = 338 apk_under_test_config =
335 "$apk_under_test_gen_dir/$apk_under_test_name.build_config" 339 "$apk_under_test_gen_dir/$apk_under_test_name.build_config"
336 args += [ 340 args += [
337 "--tested-apk-config", 341 "--tested-apk-config",
338 rebase_path(apk_under_test_config, root_build_dir), 342 rebase_path(apk_under_test_config, root_build_dir),
339 ] 343 ]
340 } 344 }
341 345
346 if (is_android_assets) {
347 inputs += invoker.assets
348 _rebased_assets = rebase_path(invoker.assets, root_build_dir)
349 args += [ "--assets=$_rebased_assets" ]
350 if (defined(invoker.enable_compression) && !invoker.enable_compression) {
351 args += [ "--disable-asset-compression" ]
352 }
353 }
354
342 if (is_android_resources || is_apk) { 355 if (is_android_resources || is_apk) {
343 assert(defined(invoker.resources_zip)) 356 assert(defined(invoker.resources_zip))
344 args += [ 357 args += [
345 "--resources-zip", 358 "--resources-zip",
346 rebase_path(invoker.resources_zip, root_build_dir), 359 rebase_path(invoker.resources_zip, root_build_dir),
347 ] 360 ]
348 if (defined(invoker.android_manifest)) { 361 if (defined(invoker.android_manifest)) {
349 inputs += [ invoker.android_manifest ] 362 inputs += [ invoker.android_manifest ]
350 args += [ 363 args += [
351 "--android-manifest", 364 "--android-manifest",
(...skipping 121 matching lines...) Expand 10 before | Expand all | Expand 10 after
473 public_deps = [ 486 public_deps = [
474 ":${target_name}__ijar", 487 ":${target_name}__ijar",
475 ":$_output_jar_target", 488 ":$_output_jar_target",
476 ] 489 ]
477 } 490 }
478 } 491 }
479 492
480 # Creates an unsigned .apk. 493 # Creates an unsigned .apk.
481 # 494 #
482 # Variables 495 # Variables
496 # assets_build_config: Path to android_apk .build_config containing merged
497 # asset information.
483 # deps: Specifies the dependencies of this target. 498 # deps: Specifies the dependencies of this target.
484 # dex_path: Path to classes.dex file to include (optional). 499 # dex_path: Path to classes.dex file to include (optional).
485 # resource_packaged_apk_path: Path to .ap_ to use. 500 # resource_packaged_apk_path: Path to .ap_ to use.
486 # output_apk_path: Output path for the generated .apk. 501 # output_apk_path: Output path for the generated .apk.
487 # native_libs_dir: Directory containing native libraries. 502 # native_libs_dir: Directory containing native libraries.
488 # create_placeholder_lib: Whether to add a dummy lib to the apk. 503 # create_placeholder_lib: Whether to add a dummy lib to the apk.
489 template("package_apk") { 504 template("package_apk") {
490 action(target_name) { 505 action(target_name) {
491 forward_variables_from(invoker, 506 forward_variables_from(invoker,
492 [ 507 [
(...skipping 25 matching lines...) Expand all
518 _rebased_resource_packaged_apk_path = 533 _rebased_resource_packaged_apk_path =
519 rebase_path(invoker.resource_packaged_apk_path, root_build_dir) 534 rebase_path(invoker.resource_packaged_apk_path, root_build_dir)
520 _rebased_packaged_apk_path = 535 _rebased_packaged_apk_path =
521 rebase_path(invoker.output_apk_path, root_build_dir) 536 rebase_path(invoker.output_apk_path, root_build_dir)
522 args = [ 537 args = [
523 "--depfile", 538 "--depfile",
524 rebase_path(depfile, root_build_dir), 539 rebase_path(depfile, root_build_dir),
525 "--resource-apk=$_rebased_resource_packaged_apk_path", 540 "--resource-apk=$_rebased_resource_packaged_apk_path",
526 "--output-apk=$_rebased_packaged_apk_path", 541 "--output-apk=$_rebased_packaged_apk_path",
527 ] 542 ]
543 if (defined(invoker.assets_build_config)) {
544 inputs += [ invoker.assets_build_config ]
545 _rebased_build_config =
546 rebase_path(invoker.assets_build_config, root_build_dir)
547 args += [ "--assets-build-config=$_rebased_build_config" ]
548 }
528 if (defined(invoker.dex_path)) { 549 if (defined(invoker.dex_path)) {
529 _rebased_dex_path = rebase_path(invoker.dex_path, root_build_dir) 550 _rebased_dex_path = rebase_path(invoker.dex_path, root_build_dir)
530 args += [ "--dex-file=$_rebased_dex_path" ] 551 args += [ "--dex-file=$_rebased_dex_path" ]
531 } 552 }
532 if (defined(invoker.native_libs_dir) || _create_placeholder_lib) { 553 if (defined(invoker.native_libs_dir) || _create_placeholder_lib) {
533 args += [ "--android-abi=$android_app_abi" ] 554 args += [ "--android-abi=$android_app_abi" ]
534 } 555 }
535 if (defined(invoker.native_libs_dir)) { 556 if (defined(invoker.native_libs_dir)) {
536 _rebased_native_libs_dir = 557 _rebased_native_libs_dir =
537 rebase_path(invoker.native_libs_dir, root_build_dir) 558 rebase_path(invoker.native_libs_dir, root_build_dir)
(...skipping 91 matching lines...) Expand 10 before | Expand all | Expand 10 after
629 650
630 _deps = [] 651 _deps = []
631 if (defined(invoker.deps)) { 652 if (defined(invoker.deps)) {
632 _deps = invoker.deps 653 _deps = invoker.deps
633 } 654 }
634 _incremental_deps = [] 655 _incremental_deps = []
635 if (defined(invoker.incremental_deps)) { 656 if (defined(invoker.incremental_deps)) {
636 _incremental_deps = invoker.incremental_deps 657 _incremental_deps = invoker.incremental_deps
637 } 658 }
638 659
660 # TODO(agrieve): Remove support for asset_location in favor of using
661 # android_asset() everywhere (http://crbug.com/547162).
639 if (defined(invoker.asset_location)) { 662 if (defined(invoker.asset_location)) {
640 _asset_location = invoker.asset_location 663 _asset_location = invoker.asset_location
641 assert(_asset_location != "") # Mark as used. 664 assert(_asset_location != "") # Mark as used.
642 } 665 }
643 666
644 _version_code = invoker.version_code 667 _version_code = invoker.version_code
645 _version_name = invoker.version_name 668 _version_name = invoker.version_name
646 assert(_version_code != -1) # Mark as used. 669 assert(_version_code != -1) # Mark as used.
647 assert(_version_name != "") # Mark as used. 670 assert(_version_name != "") # Mark as used.
648 671
(...skipping 83 matching lines...) Expand 10 before | Expand all | Expand 10 after
732 foreach(_density, _split_densities) { 755 foreach(_density, _split_densities) {
733 outputs += [ "${invoker.resource_packaged_apk_path}_${_density}" ] 756 outputs += [ "${invoker.resource_packaged_apk_path}_${_density}" ]
734 } 757 }
735 } 758 }
736 if (_split_languages != []) { 759 if (_split_languages != []) {
737 args += [ "--language-splits=$_split_languages" ] 760 args += [ "--language-splits=$_split_languages" ]
738 foreach(_language, _split_languages) { 761 foreach(_language, _split_languages) {
739 outputs += [ "${invoker.resource_packaged_apk_path}_${_language}" ] 762 outputs += [ "${invoker.resource_packaged_apk_path}_${_language}" ]
740 } 763 }
741 } 764 }
742 if (defined(invoker.extensions_to_not_compress)) { 765 if (defined(invoker.extensions_to_not_compress)) {
pkotwicz 2015/10/24 03:46:03 This parameter will also be removed when asset_loc
agrieve 2015/10/25 17:32:10 It still applies to files in resources
743 args += [ 766 args += [
744 "--no-compress", 767 "--no-compress",
745 invoker.extensions_to_not_compress, 768 invoker.extensions_to_not_compress,
746 ] 769 ]
747 } 770 }
748 } 771 }
749 } 772 }
750 773
751 _package_resources_target_name = "${target_name}__package_resources" 774 _package_resources_target_name = "${target_name}__package_resources"
752 package_resources_helper(_package_resources_target_name) { 775 package_resources_helper(_package_resources_target_name) {
(...skipping 42 matching lines...) Expand 10 before | Expand all | Expand 10 after
795 package_resources_helper(_incremental_package_resources_target_name) { 818 package_resources_helper(_incremental_package_resources_target_name) {
796 forward_variables_from(invoker, [ "extensions_to_not_compress" ]) 819 forward_variables_from(invoker, [ "extensions_to_not_compress" ])
797 deps = 820 deps =
798 _incremental_deps + [ ":$_generate_incremental_manifest_target_name" ] 821 _incremental_deps + [ ":$_generate_incremental_manifest_target_name" ]
799 android_manifest = _incremental_android_manifest 822 android_manifest = _incremental_android_manifest
800 resource_packaged_apk_path = _incremental_resource_packaged_apk_path 823 resource_packaged_apk_path = _incremental_resource_packaged_apk_path
801 } 824 }
802 825
803 package_target = "${target_name}__package" 826 package_target = "${target_name}__package"
804 package_apk(package_target) { 827 package_apk(package_target) {
805 forward_variables_from(invoker, [ "native_libs_dir" ]) 828 forward_variables_from(invoker,
829 [
830 "assets_build_config",
831 "native_libs_dir",
832 ])
806 deps = _deps + [ ":${_package_resources_target_name}" ] 833 deps = _deps + [ ":${_package_resources_target_name}" ]
807 834
808 if (defined(_dex_path)) { 835 if (defined(_dex_path)) {
809 dex_path = _dex_path 836 dex_path = _dex_path
810 } 837 }
811 838
812 output_apk_path = _packaged_apk_path 839 output_apk_path = _packaged_apk_path
813 resource_packaged_apk_path = _resource_packaged_apk_path 840 resource_packaged_apk_path = _resource_packaged_apk_path
814 } 841 }
815 842
816 _incremental_package_target = "${target_name}_incremental__package" 843 _incremental_package_target = "${target_name}_incremental__package"
817 package_apk(_incremental_package_target) { 844 package_apk(_incremental_package_target) {
845 forward_variables_from(invoker, [ "assets_build_config" ])
818 _dex_target = "//build/android/incremental_install:bootstrap_java__dex" 846 _dex_target = "//build/android/incremental_install:bootstrap_java__dex"
819 deps = _incremental_deps + [ 847 deps = _incremental_deps + [
820 ":${_incremental_package_resources_target_name}", 848 ":${_incremental_package_resources_target_name}",
821 _dex_target, 849 _dex_target,
822 ] 850 ]
823 851
824 if (defined(_dex_path)) { 852 if (defined(_dex_path)) {
825 dex_path = 853 dex_path =
826 get_label_info(_dex_target, "target_gen_dir") + "/bootstrap.dex" 854 get_label_info(_dex_target, "target_gen_dir") + "/bootstrap.dex"
827 } 855 }
(...skipping 862 matching lines...) Expand 10 before | Expand all | Expand 10 after
1690 ] 1718 ]
1691 args = [ 1719 args = [
1692 "--depfile", 1720 "--depfile",
1693 rebase_path(depfile, root_build_dir), 1721 rebase_path(depfile, root_build_dir),
1694 "--script-output-path", 1722 "--script-output-path",
1695 rebase_path(generated_script, root_build_dir), 1723 rebase_path(generated_script, root_build_dir),
1696 ] 1724 ]
1697 args += test_runner_args 1725 args += test_runner_args
1698 } 1726 }
1699 } 1727 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698