Chromium Code Reviews| OLD | NEW |
|---|---|
| 1 # Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 # Copyright (c) 2012 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 # This file is meant to be included into a target to provide a rule | 5 # This file is meant to be included into a target to provide a rule |
| 6 # to build Android APKs in a consistent manner. | 6 # to build Android APKs in a consistent manner. |
| 7 # | 7 # |
| 8 # To use this, create a gyp target with the following form: | 8 # To use this, create a gyp target with the following form: |
| 9 # { | 9 # { |
| 10 # 'target_name': 'my_package_apk', | 10 # 'target_name': 'my_package_apk', |
| (...skipping 84 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 95 'javac_includes': [], | 95 'javac_includes': [], |
| 96 'jar_excluded_classes': [], | 96 'jar_excluded_classes': [], |
| 97 'jar_path': '<(PRODUCT_DIR)/lib.java/<(jar_name)', | 97 'jar_path': '<(PRODUCT_DIR)/lib.java/<(jar_name)', |
| 98 'obfuscated_jar_path': '<(intermediate_dir)/obfuscated.jar', | 98 'obfuscated_jar_path': '<(intermediate_dir)/obfuscated.jar', |
| 99 'dex_path': '<(intermediate_dir)/classes.dex', | 99 'dex_path': '<(intermediate_dir)/classes.dex', |
| 100 'emma_device_jar': '<(android_sdk_root)/tools/lib/emma_device.jar', | 100 'emma_device_jar': '<(android_sdk_root)/tools/lib/emma_device.jar', |
| 101 'android_manifest_path%': '<(java_in_dir)/AndroidManifest.xml', | 101 'android_manifest_path%': '<(java_in_dir)/AndroidManifest.xml', |
| 102 'push_stamp': '<(intermediate_dir)/push.stamp', | 102 'push_stamp': '<(intermediate_dir)/push.stamp', |
| 103 'link_stamp': '<(intermediate_dir)/link.stamp', | 103 'link_stamp': '<(intermediate_dir)/link.stamp', |
| 104 'package_resources_stamp': '<(intermediate_dir)/package_resources.stamp', | 104 'package_resources_stamp': '<(intermediate_dir)/package_resources.stamp', |
| 105 'crunch_output_dir': '<(intermediate_dir)/res', | |
| 106 'resource_packaged_apk_name': '<(apk_name)-resources.ap_', | |
| 107 'resource_packaged_apk_path': '<(intermediate_dir)/<(resource_packaged_apk_n ame)', | |
| 105 'unsigned_apk_path': '<(intermediate_dir)/<(apk_name)-unsigned.apk', | 108 'unsigned_apk_path': '<(intermediate_dir)/<(apk_name)-unsigned.apk', |
| 106 'final_apk_path%': '<(PRODUCT_DIR)/apks/<(apk_name).apk', | 109 'final_apk_path%': '<(PRODUCT_DIR)/apks/<(apk_name).apk', |
| 107 'incomplete_apk_path': '<(intermediate_dir)/<(apk_name)-incomplete.apk', | 110 'incomplete_apk_path': '<(intermediate_dir)/<(apk_name)-incomplete.apk', |
| 108 'apk_install_record': '<(intermediate_dir)/apk_install.record.stamp', | 111 'apk_install_record': '<(intermediate_dir)/apk_install.record.stamp', |
| 109 'device_intermediate_dir': '/data/data/org.chromium.gyp_managed_install/<(_t arget_name)/<(CONFIGURATION_NAME)', | 112 'device_intermediate_dir': '/data/data/org.chromium.gyp_managed_install/<(_t arget_name)/<(CONFIGURATION_NAME)', |
| 110 'symlink_script_host_path': '<(intermediate_dir)/create_symlinks.sh', | 113 'symlink_script_host_path': '<(intermediate_dir)/create_symlinks.sh', |
| 111 'symlink_script_device_path': '<(device_intermediate_dir)/create_symlinks.sh ', | 114 'symlink_script_device_path': '<(device_intermediate_dir)/create_symlinks.sh ', |
| 112 'create_standalone_apk%': 1, | 115 'create_standalone_apk%': 1, |
| 113 'variables': { | 116 'variables': { |
| 114 'variables': { | 117 'variables': { |
| (...skipping 317 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 432 '<(DEPTH)/tools/android/md5sum/md5sum.gyp:md5sum', | 435 '<(DEPTH)/tools/android/md5sum/md5sum.gyp:md5sum', |
| 433 ], | 436 ], |
| 434 'actions': [ | 437 'actions': [ |
| 435 { | 438 { |
| 436 'action_name': 'process_resources', | 439 'action_name': 'process_resources', |
| 437 'message': 'processing resources for <(_target_name)', | 440 'message': 'processing resources for <(_target_name)', |
| 438 'variables': { | 441 'variables': { |
| 439 # Write the inputs list to a file, so that its mtime is updated when | 442 # Write the inputs list to a file, so that its mtime is updated when |
| 440 # the list of inputs changes. | 443 # the list of inputs changes. |
| 441 'inputs_list_file': '>|(apk_codegen.<(_target_name).gypcmd >@(additional _input_paths) >@(resource_input_paths))', | 444 'inputs_list_file': '>|(apk_codegen.<(_target_name).gypcmd >@(additional _input_paths) >@(resource_input_paths))', |
| 442 'resource_additional_options': [], | |
|
Yaron
2014/05/20 01:43:37
Just remove from https://codereview.chromium.org/2
cjhopman
2014/05/20 21:01:52
Done.
| |
| 443 }, | 445 }, |
| 444 'conditions': [ | 446 'conditions': [ |
| 445 ['is_test_apk == 1', { | 447 ['is_test_apk == 1', { |
| 446 'variables': { | 448 'variables': { |
| 447 'additional_res_dirs=': [], | 449 'additional_res_dirs=': [], |
| 448 'additional_res_packages=': [], | 450 'additional_res_packages=': [], |
| 449 } | 451 } |
| 450 }], | 452 }], |
| 451 ], | 453 ], |
| 452 'inputs': [ | 454 'inputs': [ |
| (...skipping 12 matching lines...) Expand all Loading... | |
| 465 '--android-sdk', '<(android_sdk)', | 467 '--android-sdk', '<(android_sdk)', |
| 466 '--android-sdk-tools', '<(android_sdk_tools)', | 468 '--android-sdk-tools', '<(android_sdk_tools)', |
| 467 | 469 |
| 468 '--android-manifest', '<(android_manifest_path)', | 470 '--android-manifest', '<(android_manifest_path)', |
| 469 '--dependencies-res-dirs', '>(additional_res_dirs)', | 471 '--dependencies-res-dirs', '>(additional_res_dirs)', |
| 470 | 472 |
| 471 '--extra-res-packages', '>(additional_res_packages)', | 473 '--extra-res-packages', '>(additional_res_packages)', |
| 472 '--extra-r-text-files', '>(additional_R_text_files)', | 474 '--extra-r-text-files', '>(additional_R_text_files)', |
| 473 | 475 |
| 474 '--resource-dir', '<(resource_dir)', | 476 '--resource-dir', '<(resource_dir)', |
| 475 '--crunch-output-dir', '<(intermediate_dir)/res', | 477 '--crunch-output-dir', '<(crunch_output_dir)', |
| 476 | 478 |
| 477 '--R-dir', '<(intermediate_dir)/gen', | 479 '--R-dir', '<(intermediate_dir)/gen', |
| 478 | 480 |
| 479 '--stamp', '<(codegen_stamp)', | 481 '--stamp', '<(codegen_stamp)', |
| 480 ], | 482 ], |
| 481 }, | 483 }, |
| 482 { | 484 { |
| 483 'action_name': 'javac_<(_target_name)', | 485 'action_name': 'javac_<(_target_name)', |
| 484 'message': 'Compiling java for <(_target_name)', | 486 'message': 'Compiling java for <(_target_name)', |
| 485 'variables': { | 487 'variables': { |
| (...skipping 149 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 635 'output_path': '<(dex_path)', | 637 'output_path': '<(dex_path)', |
| 636 'proguard_enabled_input_path': '<(obfuscated_jar_path)', | 638 'proguard_enabled_input_path': '<(obfuscated_jar_path)', |
| 637 }, | 639 }, |
| 638 'conditions': [ | 640 'conditions': [ |
| 639 ['proguard_enabled == "true"', { 'inputs': [ '<(obfuscate_stamp)' ] }, | 641 ['proguard_enabled == "true"', { 'inputs': [ '<(obfuscate_stamp)' ] }, |
| 640 { 'inputs': [ '<(instr_stamp)' ] }], | 642 { 'inputs': [ '<(instr_stamp)' ] }], |
| 641 ], | 643 ], |
| 642 'includes': [ 'android/dex_action.gypi' ], | 644 'includes': [ 'android/dex_action.gypi' ], |
| 643 }, | 645 }, |
| 644 { | 646 { |
| 645 'action_name': 'ant package resources', | 647 'action_name': 'package_resources', |
| 646 'message': 'Packaging resources for <(_target_name) APK', | 648 'message': 'packaging resources for <(_target_name)', |
| 647 'inputs': [ | 649 'variables': { |
| 648 '<(DEPTH)/build/android/ant/apk-package-resources.xml', | 650 'extra_package_input_paths': [ |
|
Yaron
2014/05/20 01:43:37
Is this not going to resolve 351928?
cjhopman
2014/05/20 21:01:52
It's not. One easy way for these inputs to be inco
| |
| 649 '<(DEPTH)/build/android/gyp/util/build_utils.py', | 651 '>@(package_input_paths)', |
| 650 '<(DEPTH)/build/android/gyp/ant.py', | 652 '>@(additional_input_paths)', |
| 651 '<(android_manifest_path)', | 653 '>@(resource_input_paths)' |
| 652 '<(codegen_stamp)', | 654 ], |
| 653 # TODO: This isn't always rerun correctly, http://crbug.com/351928 | 655 'package_resource_dirs': [ |
| 654 | 656 # <(crunch_output_dir) must come before <(resource_dir) so that |
| 655 '>@(additional_input_paths)', | 657 # the crunched files take precedence. |
| 656 ], | 658 '<(crunch_output_dir)', |
| 659 '<(resource_dir)', | |
| 660 '>@(additional_res_dirs)', | |
| 661 ], | |
| 662 # Write the inputs list to a file, so that its mtime is updated when | |
| 663 # the list of inputs changes. | |
| 664 'inputs_list_file': '>|(apk_package.<(_target_name).gypcmd >@(extra_pack age_input_paths))', | |
| 665 }, | |
| 657 'conditions': [ | 666 'conditions': [ |
| 658 ['is_test_apk == 1', { | 667 ['is_test_apk == 1', { |
| 659 'variables': { | 668 'variables': { |
| 660 'additional_res_dirs=': [], | 669 'additional_res_dirs=': [], |
| 661 'additional_res_packages=': [], | 670 'additional_res_packages=': [], |
| 662 } | 671 } |
| 663 }], | 672 }], |
| 664 ], | 673 ], |
| 674 'inputs': [ | |
| 675 # TODO: This isn't always rerun correctly, http://crbug.com/351928 | |
| 676 '<(DEPTH)/build/android/gyp/util/build_utils.py', | |
| 677 '<(DEPTH)/build/android/gyp/package_resources.py', | |
| 678 '<(android_manifest_path)', | |
| 679 | |
| 680 '<(codegen_stamp)', | |
| 681 | |
| 682 '>@(extra_package_input_paths)', | |
| 683 '>(inputs_list_file)', | |
| 684 ], | |
| 665 'outputs': [ | 685 'outputs': [ |
| 666 '<(package_resources_stamp)', | 686 '<(resource_packaged_apk_path)', |
| 667 ], | 687 ], |
| 668 'action': [ | 688 'action': [ |
| 669 'python', '<(DEPTH)/build/android/gyp/ant.py', | 689 'python', '<(DEPTH)/build/android/gyp/package_resources.py', |
| 670 '-quiet', | 690 '--android-sdk', '<(android_sdk)', |
| 671 '-DADDITIONAL_RES_DIRS=>(additional_res_dirs)', | 691 '--android-sdk-tools', '<(android_sdk_tools)', |
| 672 '-DADDITIONAL_RES_PACKAGES=>(additional_res_packages)', | |
| 673 '-DADDITIONAL_R_TEXT_FILES=>(additional_R_text_files)', | |
| 674 '-DANDROID_MANIFEST=<(android_manifest_path)', | |
| 675 '-DANDROID_SDK_JAR=<(android_sdk_jar)', | |
| 676 '-DANDROID_SDK_ROOT=<(android_sdk_root)', | |
| 677 '-DANDROID_SDK_TOOLS=<(android_sdk_tools)', | |
| 678 '-DAPK_NAME=<(apk_name)', | |
| 679 '-DAPP_MANIFEST_VERSION_CODE=<(app_manifest_version_code)', | |
| 680 '-DAPP_MANIFEST_VERSION_NAME=<(app_manifest_version_name)', | |
| 681 '-DASSET_DIR=<(asset_location)', | |
| 682 '-DCONFIGURATION_NAME=<(CONFIGURATION_NAME)', | |
| 683 '-DOUT_DIR=<(intermediate_dir)', | |
| 684 '-DRESOURCE_DIR=<(resource_dir)', | |
| 685 | 692 |
| 686 '-DSTAMP=<(package_resources_stamp)', | 693 '--configuration-name', '<(CONFIGURATION_NAME)', |
| 687 | 694 |
| 688 '-Dbasedir=.', | 695 '--android-manifest', '<(android_manifest_path)', |
| 689 '-buildfile', | 696 '--version-code', '<(app_manifest_version_code)', |
| 690 '<(DEPTH)/build/android/ant/apk-package-resources.xml', | 697 '--version-name', '<(app_manifest_version_name)', |
| 691 ] | 698 |
| 699 '--asset-dir', '<(asset_location)', | |
| 700 '--resource-dirs', '>(package_resource_dirs)', | |
| 701 | |
| 702 '--apk-path', '<(resource_packaged_apk_path)', | |
| 703 ], | |
| 692 }, | 704 }, |
| 693 { | 705 { |
| 694 'action_name': 'ant_package_<(_target_name)', | 706 'action_name': 'ant_package_<(_target_name)', |
| 695 'message': 'Packaging <(_target_name)', | 707 'message': 'Packaging <(_target_name)', |
| 696 'variables': { | 708 'variables': { |
| 697 # Write the inputs list to a file, so that its mtime is updated when | 709 # Write the inputs list to a file, so that its mtime is updated when |
| 698 # the list of inputs changes. | 710 # the list of inputs changes. |
| 699 'inputs_list_file': '>|(apk_package.<(_target_name).gypcmd >@(package_in put_paths))' | 711 'inputs_list_file': '>|(apk_package.<(_target_name).gypcmd >@(package_in put_paths))' |
| 700 }, | 712 }, |
| 701 'inputs': [ | 713 'inputs': [ |
| 702 '<(DEPTH)/build/android/ant/apk-package.xml', | 714 '<(DEPTH)/build/android/ant/apk-package.xml', |
| 703 '<(DEPTH)/build/android/gyp/util/build_utils.py', | 715 '<(DEPTH)/build/android/gyp/util/build_utils.py', |
| 704 '<(DEPTH)/build/android/gyp/ant.py', | 716 '<(DEPTH)/build/android/gyp/ant.py', |
| 705 '<(dex_path)', | 717 '<(dex_path)', |
| 706 '<(codegen_stamp)', | 718 '<(codegen_stamp)', |
| 707 '<(obfuscate_stamp)', | 719 '<(obfuscate_stamp)', |
| 708 '<(package_resources_stamp)', | 720 '<(resource_packaged_apk_path)', |
| 709 '>@(package_input_paths)', | 721 '>@(package_input_paths)', |
| 710 '>(inputs_list_file)', | 722 '>(inputs_list_file)', |
| 711 ], | 723 ], |
| 712 'outputs': [ | 724 'outputs': [ |
| 713 '<(unsigned_apk_path)', | 725 '<(unsigned_apk_path)', |
| 714 ], | 726 ], |
| 715 'action': [ | 727 'action': [ |
| 716 'python', '<(DEPTH)/build/android/gyp/ant.py', | 728 'python', '<(DEPTH)/build/android/gyp/ant.py', |
| 717 '-quiet', | 729 '-quiet', |
| 718 '-DANDROID_SDK_ROOT=<(android_sdk_root)', | 730 '-DANDROID_SDK_ROOT=<(android_sdk_root)', |
| 719 '-DANDROID_SDK_TOOLS=<(android_sdk_tools)', | 731 '-DANDROID_SDK_TOOLS=<(android_sdk_tools)', |
| 732 '-DRESOURCE_PACKAGED_APK_NAME=<(resource_packaged_apk_name)', | |
| 720 '-DAPK_NAME=<(apk_name)', | 733 '-DAPK_NAME=<(apk_name)', |
| 721 '-DCONFIGURATION_NAME=<(CONFIGURATION_NAME)', | 734 '-DCONFIGURATION_NAME=<(CONFIGURATION_NAME)', |
| 722 '-DNATIVE_LIBS_DIR=<(apk_package_native_libs_dir)', | 735 '-DNATIVE_LIBS_DIR=<(apk_package_native_libs_dir)', |
| 723 '-DOUT_DIR=<(intermediate_dir)', | 736 '-DOUT_DIR=<(intermediate_dir)', |
| 724 '-DUNSIGNED_APK_PATH=<(unsigned_apk_path)', | 737 '-DUNSIGNED_APK_PATH=<(unsigned_apk_path)', |
| 725 '-DEMMA_INSTRUMENT=<(emma_instrument)', | 738 '-DEMMA_INSTRUMENT=<(emma_instrument)', |
| 726 '-DEMMA_DEVICE_JAR=<(emma_device_jar)', | 739 '-DEMMA_DEVICE_JAR=<(emma_device_jar)', |
| 727 | 740 |
| 728 '-Dbasedir=.', | 741 '-Dbasedir=.', |
| 729 '-buildfile', | 742 '-buildfile', |
| 730 '<(DEPTH)/build/android/ant/apk-package.xml', | 743 '<(DEPTH)/build/android/ant/apk-package.xml', |
| 731 ] | 744 ] |
| 732 }, | 745 }, |
| 733 ], | 746 ], |
| 734 } | 747 } |
| OLD | NEW |