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 76 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
87 'native_libraries_template_version_file': '<(native_libraries_template_data_ dir)/native_libraries_version.h', | 87 'native_libraries_template_version_file': '<(native_libraries_template_data_ dir)/native_libraries_version.h', |
88 'compile_stamp': '<(intermediate_dir)/compile.stamp', | 88 'compile_stamp': '<(intermediate_dir)/compile.stamp', |
89 'lint_stamp': '<(intermediate_dir)/lint.stamp', | 89 'lint_stamp': '<(intermediate_dir)/lint.stamp', |
90 'lint_result': '<(intermediate_dir)/lint_result.xml', | 90 'lint_result': '<(intermediate_dir)/lint_result.xml', |
91 'lint_config': '<(intermediate_dir)/lint_config.xml', | 91 'lint_config': '<(intermediate_dir)/lint_config.xml', |
92 'never_lint%': 0, | 92 'never_lint%': 0, |
93 'instr_stamp': '<(intermediate_dir)/instr.stamp', | 93 'instr_stamp': '<(intermediate_dir)/instr.stamp', |
94 'jar_stamp': '<(intermediate_dir)/jar.stamp', | 94 'jar_stamp': '<(intermediate_dir)/jar.stamp', |
95 'obfuscate_stamp': '<(intermediate_dir)/obfuscate.stamp', | 95 'obfuscate_stamp': '<(intermediate_dir)/obfuscate.stamp', |
96 'strip_stamp': '<(intermediate_dir)/strip.stamp', | 96 'strip_stamp': '<(intermediate_dir)/strip.stamp', |
97 'classes_dir': '<(intermediate_dir)/classes', | 97 'classes_dir': '<(intermediate_dir)/classes/2', |
cjhopman
2014/06/23 22:36:48
This is the bad line. We generate java files into
| |
98 'classes_final_dir': '<(intermediate_dir)/classes_instr', | |
99 'javac_includes': [], | 98 'javac_includes': [], |
100 'jar_excluded_classes': [], | 99 'jar_excluded_classes': [], |
100 'javac_jar_path': '<(intermediate_dir)/<(_target_name).javac.jar', | |
101 'jar_path': '<(PRODUCT_DIR)/lib.java/<(jar_name)', | 101 'jar_path': '<(PRODUCT_DIR)/lib.java/<(jar_name)', |
102 'obfuscated_jar_path': '<(intermediate_dir)/obfuscated.jar', | 102 'obfuscated_jar_path': '<(intermediate_dir)/obfuscated.jar', |
103 'test_jar_path': '<(PRODUCT_DIR)/test.lib.java/<(apk_name).jar', | 103 'test_jar_path': '<(PRODUCT_DIR)/test.lib.java/<(apk_name).jar', |
104 'dex_path': '<(intermediate_dir)/classes.dex', | 104 'dex_path': '<(intermediate_dir)/classes.dex', |
105 'emma_device_jar': '<(android_sdk_root)/tools/lib/emma_device.jar', | 105 'emma_device_jar': '<(android_sdk_root)/tools/lib/emma_device.jar', |
106 'android_manifest_path%': '<(java_in_dir)/AndroidManifest.xml', | 106 'android_manifest_path%': '<(java_in_dir)/AndroidManifest.xml', |
107 'push_stamp': '<(intermediate_dir)/push.stamp', | 107 'push_stamp': '<(intermediate_dir)/push.stamp', |
108 'link_stamp': '<(intermediate_dir)/link.stamp', | 108 'link_stamp': '<(intermediate_dir)/link.stamp', |
109 'package_resources_stamp': '<(intermediate_dir)/package_resources.stamp', | 109 'package_resources_stamp': '<(intermediate_dir)/package_resources.stamp', |
110 'resource_zip_path': '<(intermediate_dir)/<(_target_name).resources.zip', | 110 'resource_zip_path': '<(intermediate_dir)/<(_target_name).resources.zip', |
(...skipping 35 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
146 ], | 146 ], |
147 }, | 147 }, |
148 'native_lib_target%': '', | 148 'native_lib_target%': '', |
149 'native_lib_version_name%': '', | 149 'native_lib_version_name%': '', |
150 'use_chromium_linker%' : 0, | 150 'use_chromium_linker%' : 0, |
151 'enable_chromium_linker_tests%': 0, | 151 'enable_chromium_linker_tests%': 0, |
152 'emma_instrument%': '<(emma_instrument)', | 152 'emma_instrument%': '<(emma_instrument)', |
153 'apk_package_native_libs_dir': '<(apk_package_native_libs_dir)', | 153 'apk_package_native_libs_dir': '<(apk_package_native_libs_dir)', |
154 'unsigned_standalone_apk_path': '<(unsigned_standalone_apk_path)', | 154 'unsigned_standalone_apk_path': '<(unsigned_standalone_apk_path)', |
155 'extra_native_libs': [], | 155 'extra_native_libs': [], |
156 'apk_dex_input_paths': [ '>@(library_dexed_jars_paths)' ], | |
157 }, | 156 }, |
158 # Pass the jar path to the apk's "fake" jar target. This would be better as | 157 # Pass the jar path to the apk's "fake" jar target. This would be better as |
159 # direct_dependent_settings, but a variable set by a direct_dependent_settings | 158 # direct_dependent_settings, but a variable set by a direct_dependent_settings |
160 # cannot be lifted in a dependent to all_dependent_settings. | 159 # cannot be lifted in a dependent to all_dependent_settings. |
161 'all_dependent_settings': { | 160 'all_dependent_settings': { |
162 'conditions': [ | 161 'conditions': [ |
163 ['proguard_enabled == "true"', { | 162 ['proguard_enabled == "true"', { |
164 'variables': { | 163 'variables': { |
165 'proguard_enabled': 'true', | 164 'proguard_enabled': 'true', |
166 } | 165 } |
(...skipping 366 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
533 '>@(input_jars_paths)', | 532 '>@(input_jars_paths)', |
534 '<(codegen_stamp)', | 533 '<(codegen_stamp)', |
535 ], | 534 ], |
536 'conditions': [ | 535 'conditions': [ |
537 ['native_lib_target != ""', { | 536 ['native_lib_target != ""', { |
538 'inputs': [ '<(native_libraries_java_stamp)' ], | 537 'inputs': [ '<(native_libraries_java_stamp)' ], |
539 }], | 538 }], |
540 ], | 539 ], |
541 'outputs': [ | 540 'outputs': [ |
542 '<(compile_stamp)', | 541 '<(compile_stamp)', |
542 '<(javac_jar_path)', | |
543 ], | 543 ], |
544 'action': [ | 544 'action': [ |
545 'python', '<(DEPTH)/build/android/gyp/javac.py', | 545 'python', '<(DEPTH)/build/android/gyp/javac.py', |
546 '--output-dir=<(classes_dir)', | 546 '--classes-dir=<(classes_dir)', |
547 '--classpath=>(input_jars_paths) <(android_sdk_jar)', | 547 '--classpath=>(input_jars_paths) <(android_sdk_jar)', |
548 '--src-gendirs=>(gen_src_dirs)', | 548 '--src-gendirs=>(gen_src_dirs)', |
549 '--javac-includes=<(javac_includes)', | 549 '--javac-includes=<(javac_includes)', |
550 '--chromium-code=<(chromium_code)', | 550 '--chromium-code=<(chromium_code)', |
551 '--jar-path=<(javac_jar_path)', | |
552 '--jar-excluded-classes=<(jar_excluded_classes)', | |
551 '--stamp=<(compile_stamp)', | 553 '--stamp=<(compile_stamp)', |
552 '>@(java_sources)', | 554 '>@(java_sources)', |
553 ], | 555 ], |
554 }, | 556 }, |
555 { | 557 { |
556 'variables': { | 558 'variables': { |
557 'src_dirs': [ | 559 'src_dirs': [ |
558 '<(java_in_dir)/src', | 560 '<(java_in_dir)/src', |
559 '>@(additional_src_dirs)', | 561 '>@(additional_src_dirs)', |
560 ], | 562 ], |
561 'stamp_path': '<(lint_stamp)', | 563 'stamp_path': '<(lint_stamp)', |
562 'result_path': '<(lint_result)', | 564 'result_path': '<(lint_result)', |
563 'config_path': '<(lint_config)', | 565 'config_path': '<(lint_config)', |
564 }, | 566 }, |
565 'inputs': [ | 567 'inputs': [ |
566 '<(compile_stamp)', | 568 '<(compile_stamp)', |
567 ], | 569 ], |
568 'outputs': [ | 570 'outputs': [ |
569 '<(lint_stamp)', | 571 '<(lint_stamp)', |
570 ], | 572 ], |
571 'includes': [ 'android/lint_action.gypi' ], | 573 'includes': [ 'android/lint_action.gypi' ], |
572 }, | 574 }, |
573 { | 575 { |
574 'action_name': 'instr_classes_<(_target_name)', | 576 'action_name': 'instr_jar_<(_target_name)', |
575 'message': 'Instrumenting <(_target_name) classes', | 577 'message': 'Instrumenting <(_target_name) jar', |
576 'variables': { | 578 'variables': { |
577 'input_path': '<(classes_dir)', | 579 'input_path': '<(javac_jar_path)', |
578 'output_path': '<(classes_final_dir)', | 580 'output_path': '<(jar_path)', |
579 'stamp_path': '<(instr_stamp)', | 581 'stamp_path': '<(instr_stamp)', |
580 'instr_type': 'classes', | 582 'instr_type': 'jar', |
581 }, | 583 }, |
582 'inputs': [ | |
583 '<(compile_stamp)', | |
584 ], | |
585 'outputs': [ | 584 'outputs': [ |
586 '<(instr_stamp)', | 585 '<(instr_stamp)', |
586 '<(jar_path)', | |
587 ], | |
588 'inputs': [ | |
589 '<(javac_jar_path)', | |
587 ], | 590 ], |
588 'includes': [ 'android/instr_action.gypi' ], | 591 'includes': [ 'android/instr_action.gypi' ], |
589 }, | 592 }, |
590 { | 593 { |
591 'action_name': 'jar_<(_target_name)', | |
592 'message': 'Creating <(_target_name) jar', | |
593 'inputs': [ | |
594 '<(DEPTH)/build/android/gyp/util/build_utils.py', | |
595 '<(DEPTH)/build/android/gyp/util/md5_check.py', | |
596 '<(DEPTH)/build/android/gyp/jar.py', | |
597 '<(instr_stamp)', | |
598 ], | |
599 'outputs': [ | |
600 '<(jar_stamp)', | |
601 '<(jar_path)', | |
602 ], | |
603 'action': [ | |
604 'python', '<(DEPTH)/build/android/gyp/jar.py', | |
605 '--classes-dir=<(classes_final_dir)', | |
606 '--jar-path=<(jar_path)', | |
607 '--excluded-classes=<(jar_excluded_classes)', | |
608 '--stamp=<(jar_stamp)', | |
609 ] | |
610 }, | |
611 { | |
612 'action_name': 'obfuscate_<(_target_name)', | 594 'action_name': 'obfuscate_<(_target_name)', |
613 'message': 'Obfuscating <(_target_name)', | 595 'message': 'Obfuscating <(_target_name)', |
614 'variables': { | 596 'variables': { |
615 'additional_obfuscate_options': [], | 597 'additional_obfuscate_options': [], |
616 'additional_obfuscate_input_paths': [], | 598 'additional_obfuscate_input_paths': [], |
617 'proguard_out_dir': '<(intermediate_dir)/proguard', | 599 'proguard_out_dir': '<(intermediate_dir)/proguard', |
618 'proguard_input_jar_paths': [ | 600 'proguard_input_jar_paths': [ |
619 '>@(input_jars_paths)', | 601 '>@(input_jars_paths)', |
620 '<(jar_path)', | 602 '<(jar_path)', |
621 ], | 603 ], |
(...skipping 67 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
689 '--proguard-jar-path', '<(android_sdk_root)/tools/proguard/lib/proguard. jar', | 671 '--proguard-jar-path', '<(android_sdk_root)/tools/proguard/lib/proguard. jar', |
690 | 672 |
691 '--stamp', '<(obfuscate_stamp)', | 673 '--stamp', '<(obfuscate_stamp)', |
692 | 674 |
693 '>@(additional_obfuscate_options)', | 675 '>@(additional_obfuscate_options)', |
694 ], | 676 ], |
695 }, | 677 }, |
696 { | 678 { |
697 'action_name': 'dex_<(_target_name)', | 679 'action_name': 'dex_<(_target_name)', |
698 'variables': { | 680 'variables': { |
699 'output_path': '<(dex_path)', | |
700 'dex_input_paths': [ | 681 'dex_input_paths': [ |
701 '>@(apk_dex_input_paths)', | 682 '>@(library_dexed_jars_paths)', |
702 '<(jar_path)', | 683 '<(jar_path)', |
703 ], | 684 ], |
685 'output_path': '<(dex_path)', | |
704 'proguard_enabled_input_path': '<(obfuscated_jar_path)', | 686 'proguard_enabled_input_path': '<(obfuscated_jar_path)', |
705 }, | 687 }, |
706 'target_conditions': [ | 688 'target_conditions': [ |
707 ['emma_instrument != 0', { | 689 ['emma_instrument != 0', { |
708 'dex_no_locals': 1, | 690 'dex_no_locals': 1, |
709 'dex_input_paths': [ | 691 'dex_input_paths': [ |
710 '<(emma_device_jar)' | 692 '<(emma_device_jar)' |
711 ], | 693 ], |
712 }], | 694 }], |
713 ['is_test_apk == 1 and tested_apk_dex_path != "/"', { | 695 ['is_test_apk == 1 and tested_apk_dex_path != "/"', { |
(...skipping 97 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
811 '-DEMMA_INSTRUMENT=<(emma_instrument)', | 793 '-DEMMA_INSTRUMENT=<(emma_instrument)', |
812 '-DEMMA_DEVICE_JAR=<(emma_device_jar)', | 794 '-DEMMA_DEVICE_JAR=<(emma_device_jar)', |
813 | 795 |
814 '-Dbasedir=.', | 796 '-Dbasedir=.', |
815 '-buildfile', | 797 '-buildfile', |
816 '<(DEPTH)/build/android/ant/apk-package.xml', | 798 '<(DEPTH)/build/android/ant/apk-package.xml', |
817 ] | 799 ] |
818 }, | 800 }, |
819 ], | 801 ], |
820 } | 802 } |
OLD | NEW |