| OLD | NEW |
| 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 451 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 462 } | 462 } |
| 463 } | 463 } |
| 464 } | 464 } |
| 465 | 465 |
| 466 template("process_java_prebuilt") { | 466 template("process_java_prebuilt") { |
| 467 set_sources_assignment_filter([]) | 467 set_sources_assignment_filter([]) |
| 468 forward_variables_from(invoker, [ "testonly" ]) | 468 forward_variables_from(invoker, [ "testonly" ]) |
| 469 | 469 |
| 470 _input_jar_path = invoker.input_jar_path | 470 _input_jar_path = invoker.input_jar_path |
| 471 _output_jar_path = invoker.output_jar_path | 471 _output_jar_path = invoker.output_jar_path |
| 472 _output_ijar_path = get_path_info(_output_jar_path, "dir") + "/" + | |
| 473 get_path_info(_output_jar_path, "name") + ".interface.jar" | |
| 474 | 472 |
| 475 assert(invoker.build_config != "") | 473 assert(invoker.build_config != "") |
| 476 | 474 |
| 477 if (defined(invoker.proguard_preprocess) && invoker.proguard_preprocess) { | 475 if (defined(invoker.proguard_preprocess) && invoker.proguard_preprocess) { |
| 478 _build_config = invoker.build_config | 476 _build_config = invoker.build_config |
| 479 _rebased_build_config = rebase_path(_build_config, root_build_dir) | 477 _rebased_build_config = rebase_path(_build_config, root_build_dir) |
| 480 _proguard_config_path = invoker.proguard_config | 478 _proguard_config_path = invoker.proguard_config |
| 481 _output_jar_target = "${target_name}__proguard_process" | 479 _output_jar_target = "${target_name}__proguard_process" |
| 482 proguard(_output_jar_target) { | 480 proguard(_output_jar_target) { |
| 483 forward_variables_from(invoker, | 481 forward_variables_from(invoker, |
| (...skipping 28 matching lines...) Expand all Loading... |
| 512 ]) | 510 ]) |
| 513 sources = [ | 511 sources = [ |
| 514 _input_jar_path, | 512 _input_jar_path, |
| 515 ] | 513 ] |
| 516 outputs = [ | 514 outputs = [ |
| 517 _output_jar_path, | 515 _output_jar_path, |
| 518 ] | 516 ] |
| 519 } | 517 } |
| 520 } | 518 } |
| 521 | 519 |
| 522 generate_interface_jar("${target_name}__ijar") { | |
| 523 input_jar = _output_jar_path | |
| 524 output_jar = _output_ijar_path | |
| 525 deps = [ | |
| 526 ":$_output_jar_target", | |
| 527 ] | |
| 528 } | |
| 529 | |
| 530 group(target_name) { | 520 group(target_name) { |
| 531 forward_variables_from(invoker, [ "visibility" ]) | 521 forward_variables_from(invoker, [ "visibility" ]) |
| 532 public_deps = [ | 522 public_deps = [ |
| 533 ":${target_name}__ijar", | |
| 534 ":$_output_jar_target", | 523 ":$_output_jar_target", |
| 535 ] | 524 ] |
| 536 } | 525 } |
| 526 } |
| 527 |
| 528 template("emma_instr") { |
| 529 set_sources_assignment_filter([]) |
| 530 forward_variables_from(invoker, [ "testonly" ]) |
| 531 |
| 532 assert(invoker.source_files != [] || true) # Mark as used |
| 533 |
| 534 if (invoker.emma_instrument) { |
| 535 _output_jar_target = "${target_name}__process" |
| 536 _coverage_file = "$target_out_dir/${target_name}.em" |
| 537 _source_dirs_listing_file = "$target_out_dir/${target_name}_sources.txt" |
| 538 _emma_jar = "${android_sdk_root}/tools/lib/emma.jar" |
| 539 _rebased_source_files = rebase_path(invoker.source_files, root_build_dir) |
| 540 action(_output_jar_target) { |
| 541 forward_variables_from(invoker, [ "deps" ]) |
| 542 |
| 543 script = "//build/android/gyp/emma_instr.py" |
| 544 depfile = "${target_gen_dir}/${target_name}.d" |
| 545 inputs = [ |
| 546 _emma_jar, |
| 547 invoker.input_jar_path, |
| 548 ] |
| 549 outputs = [ |
| 550 depfile, |
| 551 _coverage_file, |
| 552 _source_dirs_listing_file, |
| 553 invoker.output_jar_path, |
| 554 ] |
| 555 args = [ |
| 556 "instrument_jar", |
| 557 "--input-path", |
| 558 rebase_path(invoker.input_jar_path, root_build_dir), |
| 559 "--output-path", |
| 560 rebase_path(invoker.output_jar_path, root_build_dir), |
| 561 "--depfile", |
| 562 rebase_path(depfile, root_build_dir), |
| 563 "--coverage-file", |
| 564 rebase_path(_coverage_file, root_build_dir), |
| 565 "--sources-list-file", |
| 566 rebase_path(_source_dirs_listing_file, root_build_dir), |
| 567 "--source-files=$_rebased_source_files", |
| 568 "--src-root", |
| 569 rebase_path("//", root_build_dir), |
| 570 "--emma-jar", |
| 571 rebase_path(_emma_jar, root_build_dir), |
| 572 "--filter-string", |
| 573 emma_filter, |
| 574 ] |
| 575 } |
| 576 } else { |
| 577 _output_jar_target = "${target_name}__copy_jar" |
| 578 copy(_output_jar_target) { |
| 579 forward_variables_from(invoker, [ "deps" ]) |
| 580 |
| 581 sources = [ |
| 582 invoker.input_jar_path, |
| 583 ] |
| 584 outputs = [ |
| 585 invoker.output_jar_path, |
| 586 ] |
| 587 } |
| 588 } |
| 589 |
| 590 group(target_name) { |
| 591 forward_variables_from(invoker, [ "visibility" ]) |
| 592 public_deps = [ |
| 593 ":$_output_jar_target", |
| 594 ] |
| 595 } |
| 537 } | 596 } |
| 538 | 597 |
| 539 # Creates an unsigned .apk. | 598 # Creates an unsigned .apk. |
| 540 # | 599 # |
| 541 # Variables | 600 # Variables |
| 542 # assets_build_config: Path to android_apk .build_config containing merged | 601 # assets_build_config: Path to android_apk .build_config containing merged |
| 543 # asset information. | 602 # asset information. |
| 544 # deps: Specifies the dependencies of this target. | 603 # deps: Specifies the dependencies of this target. |
| 545 # dex_path: Path to classes.dex file to include (optional). | 604 # dex_path: Path to classes.dex file to include (optional). |
| 546 # resource_packaged_apk_path: Path to .ap_ to use. | 605 # resource_packaged_apk_path: Path to .ap_ to use. |
| (...skipping 59 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 606 args += [ "--android-abi=$android_app_abi" ] | 665 args += [ "--android-abi=$android_app_abi" ] |
| 607 } | 666 } |
| 608 if (defined(invoker.native_libs_dir)) { | 667 if (defined(invoker.native_libs_dir)) { |
| 609 _rebased_native_libs_dir = | 668 _rebased_native_libs_dir = |
| 610 rebase_path(invoker.native_libs_dir, root_build_dir) | 669 rebase_path(invoker.native_libs_dir, root_build_dir) |
| 611 args += [ "--native-libs-dir=$_rebased_native_libs_dir/$android_app_abi" ] | 670 args += [ "--native-libs-dir=$_rebased_native_libs_dir/$android_app_abi" ] |
| 612 } | 671 } |
| 613 if (_native_lib_placeholders != []) { | 672 if (_native_lib_placeholders != []) { |
| 614 args += [ "--native-lib-placeholders=$_native_lib_placeholders" ] | 673 args += [ "--native-lib-placeholders=$_native_lib_placeholders" ] |
| 615 } | 674 } |
| 675 |
| 676 if (defined(invoker.emma_instrument) && invoker.emma_instrument) { |
| 677 _emma_device_jar = "$android_sdk_root/tools/lib/emma_device.jar" |
| 678 _rebased_emma_device_jar = rebase_path(_emma_device_jar, root_build_dir) |
| 679 args += [ "--emma-device-jar=$_rebased_emma_device_jar" ] |
| 680 } |
| 616 } | 681 } |
| 617 } | 682 } |
| 618 | 683 |
| 619 # Signs & zipaligns an apk. | 684 # Signs & zipaligns an apk. |
| 620 # | 685 # |
| 621 # Variables | 686 # Variables |
| 622 # input_apk_path: Path of the .apk to be finalized. | 687 # input_apk_path: Path of the .apk to be finalized. |
| 623 # output_apk_path: Output path for the generated .apk. | 688 # output_apk_path: Output path for the generated .apk. |
| 624 # keystore_path: Path to keystore to use for signing. | 689 # keystore_path: Path to keystore to use for signing. |
| 625 # keystore_name: Key alias to use. | 690 # keystore_name: Key alias to use. |
| (...skipping 248 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 874 _incremental_deps + [ ":$_generate_incremental_manifest_target_name" ] | 939 _incremental_deps + [ ":$_generate_incremental_manifest_target_name" ] |
| 875 android_manifest = _incremental_android_manifest | 940 android_manifest = _incremental_android_manifest |
| 876 resource_packaged_apk_path = _incremental_resource_packaged_apk_path | 941 resource_packaged_apk_path = _incremental_resource_packaged_apk_path |
| 877 } | 942 } |
| 878 | 943 |
| 879 package_target = "${target_name}__package" | 944 package_target = "${target_name}__package" |
| 880 package_apk(package_target) { | 945 package_apk(package_target) { |
| 881 forward_variables_from(invoker, | 946 forward_variables_from(invoker, |
| 882 [ | 947 [ |
| 883 "assets_build_config", | 948 "assets_build_config", |
| 949 "emma_instrument", |
| 884 "native_lib_placeholders", | 950 "native_lib_placeholders", |
| 885 "native_libs_dir", | 951 "native_libs_dir", |
| 886 ]) | 952 ]) |
| 887 deps = _deps + [ ":${_package_resources_target_name}" ] | 953 deps = _deps + [ ":${_package_resources_target_name}" ] |
| 888 | 954 |
| 889 if (defined(_dex_path)) { | 955 if (defined(_dex_path)) { |
| 890 dex_path = _dex_path | 956 dex_path = _dex_path |
| 891 } | 957 } |
| 892 | 958 |
| 893 output_apk_path = _packaged_apk_path | 959 output_apk_path = _packaged_apk_path |
| 894 resource_packaged_apk_path = _resource_packaged_apk_path | 960 resource_packaged_apk_path = _resource_packaged_apk_path |
| 895 } | 961 } |
| 896 | 962 |
| 897 _incremental_package_target = "${target_name}_incremental__package" | 963 _incremental_package_target = "${target_name}_incremental__package" |
| 898 package_apk(_incremental_package_target) { | 964 package_apk(_incremental_package_target) { |
| 899 forward_variables_from(invoker, [ "assets_build_config" ]) | 965 forward_variables_from(invoker, |
| 966 [ |
| 967 "assets_build_config", |
| 968 "emma_instrument", |
| 969 ]) |
| 900 _dex_target = "//build/android/incremental_install:bootstrap_java__dex" | 970 _dex_target = "//build/android/incremental_install:bootstrap_java__dex" |
| 901 deps = _incremental_deps + [ | 971 deps = _incremental_deps + [ |
| 902 ":${_incremental_package_resources_target_name}", | 972 ":${_incremental_package_resources_target_name}", |
| 903 _dex_target, | 973 _dex_target, |
| 904 ] | 974 ] |
| 905 | 975 |
| 906 if (defined(_dex_path)) { | 976 if (defined(_dex_path)) { |
| 907 dex_path = | 977 dex_path = |
| 908 get_label_info(_dex_target, "target_gen_dir") + "/bootstrap.dex" | 978 get_label_info(_dex_target, "target_gen_dir") + "/bootstrap.dex" |
| 909 } | 979 } |
| (...skipping 86 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 996 _supports_android = | 1066 _supports_android = |
| 997 defined(invoker.supports_android) && invoker.supports_android | 1067 defined(invoker.supports_android) && invoker.supports_android |
| 998 | 1068 |
| 999 assert(defined(invoker.jar_path)) | 1069 assert(defined(invoker.jar_path)) |
| 1000 _base_path = "${target_gen_dir}/$target_name" | 1070 _base_path = "${target_gen_dir}/$target_name" |
| 1001 | 1071 |
| 1002 # Jar files can be needed at runtime (by Robolectric tests or java binaries), | 1072 # Jar files can be needed at runtime (by Robolectric tests or java binaries), |
| 1003 # so do not put them under gen/. | 1073 # so do not put them under gen/. |
| 1004 _target_dir_name = get_label_info(":$target_name", "dir") | 1074 _target_dir_name = get_label_info(":$target_name", "dir") |
| 1005 _jar_path = "$root_out_dir/lib.java$_target_dir_name/$target_name.jar" | 1075 _jar_path = "$root_out_dir/lib.java$_target_dir_name/$target_name.jar" |
| 1076 _ijar_path = |
| 1077 "$root_out_dir/lib.java$_target_dir_name/$target_name.interface.jar" |
| 1006 _build_config = _base_path + ".build_config" | 1078 _build_config = _base_path + ".build_config" |
| 1007 | 1079 |
| 1008 if (_supports_android) { | 1080 if (_supports_android) { |
| 1009 _dex_path = _base_path + ".dex.jar" | 1081 _dex_path = _base_path + ".dex.jar" |
| 1010 } | 1082 } |
| 1011 _deps = [] | 1083 _deps = [] |
| 1012 if (defined(invoker.deps)) { | 1084 if (defined(invoker.deps)) { |
| 1013 _deps = invoker.deps | 1085 _deps = invoker.deps |
| 1014 } | 1086 } |
| 1015 _jar_deps = [] | 1087 _jar_deps = [] |
| 1016 if (defined(invoker.jar_dep)) { | 1088 if (defined(invoker.jar_dep)) { |
| 1017 _jar_deps = [ invoker.jar_dep ] | 1089 _jar_deps = [ invoker.jar_dep ] |
| 1018 } | 1090 } |
| 1019 | 1091 |
| 1020 _template_name = target_name | 1092 _template_name = target_name |
| 1021 | 1093 |
| 1022 _build_config_target_name = "${_template_name}__build_config" | 1094 _build_config_target_name = "${_template_name}__build_config" |
| 1023 _process_jar_target_name = "${_template_name}__process_jar" | 1095 _process_jar_target_name = "${_template_name}__process_jar" |
| 1096 _ijar_target_name = "${_template_name}__ijar" |
| 1024 if (_supports_android) { | 1097 if (_supports_android) { |
| 1025 _dex_target_name = "${_template_name}__dex" | 1098 _dex_target_name = "${_template_name}__dex" |
| 1026 } | 1099 } |
| 1027 | 1100 |
| 1028 write_build_config(_build_config_target_name) { | 1101 write_build_config(_build_config_target_name) { |
| 1029 type = "java_library" | 1102 type = "java_library" |
| 1030 supports_android = _supports_android | 1103 supports_android = _supports_android |
| 1031 requires_android = | 1104 requires_android = |
| 1032 defined(invoker.requires_android) && invoker.requires_android | 1105 defined(invoker.requires_android) && invoker.requires_android |
| 1033 | 1106 |
| 1034 deps = _deps | 1107 deps = _deps |
| 1035 build_config = _build_config | 1108 build_config = _build_config |
| 1036 jar_path = _jar_path | 1109 jar_path = _jar_path |
| 1037 if (_supports_android) { | 1110 if (_supports_android) { |
| 1038 dex_path = _dex_path | 1111 dex_path = _dex_path |
| 1039 } | 1112 } |
| 1040 } | 1113 } |
| 1041 | 1114 |
| 1042 process_java_prebuilt(_process_jar_target_name) { | 1115 process_java_prebuilt(_process_jar_target_name) { |
| 1043 visibility = [ ":$_template_name" ] | 1116 visibility = [ |
| 1117 ":$_ijar_target_name", |
| 1118 ":$_template_name", |
| 1119 ] |
| 1044 if (_supports_android) { | 1120 if (_supports_android) { |
| 1045 visibility += [ ":$_dex_target_name" ] | 1121 visibility += [ ":$_dex_target_name" ] |
| 1046 } | 1122 } |
| 1047 | 1123 |
| 1048 if (defined(invoker.proguard_preprocess) && invoker.proguard_preprocess) { | 1124 if (defined(invoker.proguard_preprocess) && invoker.proguard_preprocess) { |
| 1049 proguard_preprocess = true | 1125 proguard_preprocess = true |
| 1050 proguard_config = invoker.proguard_config | 1126 proguard_config = invoker.proguard_config |
| 1051 } | 1127 } |
| 1052 | 1128 |
| 1053 build_config = _build_config | 1129 build_config = _build_config |
| 1054 input_jar_path = invoker.jar_path | 1130 input_jar_path = invoker.jar_path |
| 1055 output_jar_path = _jar_path | 1131 output_jar_path = _jar_path |
| 1056 | 1132 |
| 1057 deps = [ ":$_build_config_target_name" ] + _deps + _jar_deps | 1133 deps = [ ":$_build_config_target_name" ] + _deps + _jar_deps |
| 1058 } | 1134 } |
| 1059 | 1135 |
| 1136 generate_interface_jar(_ijar_target_name) { |
| 1137 input_jar = _jar_path |
| 1138 output_jar = _ijar_path |
| 1139 deps = [ |
| 1140 ":$_process_jar_target_name", |
| 1141 ] |
| 1142 } |
| 1143 |
| 1060 if (_supports_android) { | 1144 if (_supports_android) { |
| 1061 dex(_dex_target_name) { | 1145 dex(_dex_target_name) { |
| 1062 sources = [ | 1146 sources = [ |
| 1063 _jar_path, | 1147 _jar_path, |
| 1064 ] | 1148 ] |
| 1065 output = _dex_path | 1149 output = _dex_path |
| 1066 deps = [ ":$_process_jar_target_name" ] + _deps + _jar_deps | 1150 deps = [ ":$_process_jar_target_name" ] + _deps + _jar_deps |
| 1067 } | 1151 } |
| 1068 } | 1152 } |
| 1069 | 1153 |
| (...skipping 11 matching lines...) Expand all Loading... |
| 1081 script_name = _template_name | 1165 script_name = _template_name |
| 1082 deps = [ | 1166 deps = [ |
| 1083 ":$_build_config_target_name", | 1167 ":$_build_config_target_name", |
| 1084 ] | 1168 ] |
| 1085 } | 1169 } |
| 1086 } | 1170 } |
| 1087 | 1171 |
| 1088 group(target_name) { | 1172 group(target_name) { |
| 1089 forward_variables_from(invoker, [ "data_deps" ]) | 1173 forward_variables_from(invoker, [ "data_deps" ]) |
| 1090 deps = [ | 1174 deps = [ |
| 1175 ":$_ijar_target_name", |
| 1091 ":$_process_jar_target_name", | 1176 ":$_process_jar_target_name", |
| 1092 ] | 1177 ] |
| 1093 if (_supports_android) { | 1178 if (_supports_android) { |
| 1094 deps += [ ":$_dex_target_name" ] | 1179 deps += [ ":$_dex_target_name" ] |
| 1095 } | 1180 } |
| 1096 data_deps = [] | 1181 data_deps = [] |
| 1097 if (defined(invoker.data_deps)) { | 1182 if (defined(invoker.data_deps)) { |
| 1098 data_deps += invoker.data_deps | 1183 data_deps += invoker.data_deps |
| 1099 } | 1184 } |
| 1100 if (defined(invoker.main_class)) { | 1185 if (defined(invoker.main_class)) { |
| (...skipping 20 matching lines...) Expand all Loading... |
| 1121 template("compile_java") { | 1206 template("compile_java") { |
| 1122 set_sources_assignment_filter([]) | 1207 set_sources_assignment_filter([]) |
| 1123 forward_variables_from(invoker, [ "testonly" ]) | 1208 forward_variables_from(invoker, [ "testonly" ]) |
| 1124 | 1209 |
| 1125 assert(defined(invoker.java_files)) | 1210 assert(defined(invoker.java_files)) |
| 1126 assert(defined(invoker.build_config)) | 1211 assert(defined(invoker.build_config)) |
| 1127 assert(defined(invoker.jar_path)) | 1212 assert(defined(invoker.jar_path)) |
| 1128 | 1213 |
| 1129 _java_files = invoker.java_files | 1214 _java_files = invoker.java_files |
| 1130 _final_jar_path = invoker.jar_path | 1215 _final_jar_path = invoker.jar_path |
| 1131 _intermediate_jar_path = "$target_gen_dir/$target_name.initial.jar" | 1216 _javac_jar_path = "$target_gen_dir/$target_name.javac.jar" |
| 1217 _process_prebuilt_jar_path = |
| 1218 "$target_gen_dir/$target_name.process_prebuilt.jar" |
| 1219 _final_ijar_path = get_path_info(_final_jar_path, "dir") + "/" + |
| 1220 get_path_info(_final_jar_path, "name") + ".interface.jar" |
| 1132 | 1221 |
| 1133 _build_config = invoker.build_config | 1222 _build_config = invoker.build_config |
| 1134 | 1223 |
| 1135 _jar_excluded_patterns = [] | 1224 _jar_excluded_patterns = [] |
| 1136 if (defined(invoker.jar_excluded_patterns)) { | 1225 if (defined(invoker.jar_excluded_patterns)) { |
| 1137 _jar_excluded_patterns += invoker.jar_excluded_patterns | 1226 _jar_excluded_patterns += invoker.jar_excluded_patterns |
| 1138 } | 1227 } |
| 1139 | 1228 |
| 1140 _chromium_code = false | 1229 _chromium_code = false |
| 1141 if (defined(invoker.chromium_code)) { | 1230 if (defined(invoker.chromium_code)) { |
| (...skipping 34 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1176 foreach(dep, _srcjar_deps) { | 1265 foreach(dep, _srcjar_deps) { |
| 1177 _dep_gen_dir = get_label_info(dep, "target_gen_dir") | 1266 _dep_gen_dir = get_label_info(dep, "target_gen_dir") |
| 1178 _dep_name = get_label_info(dep, "name") | 1267 _dep_name = get_label_info(dep, "name") |
| 1179 _java_srcjars += [ "$_dep_gen_dir/$_dep_name.srcjar" ] | 1268 _java_srcjars += [ "$_dep_gen_dir/$_dep_name.srcjar" ] |
| 1180 } | 1269 } |
| 1181 | 1270 |
| 1182 # Mark srcjar_deps as used. | 1271 # Mark srcjar_deps as used. |
| 1183 assert(_srcjar_deps == [] || true) | 1272 assert(_srcjar_deps == [] || true) |
| 1184 | 1273 |
| 1185 _rebased_build_config = rebase_path(_build_config, root_build_dir) | 1274 _rebased_build_config = rebase_path(_build_config, root_build_dir) |
| 1186 _rebased_jar_path = rebase_path(_intermediate_jar_path, root_build_dir) | 1275 _rebased_jar_path = rebase_path(_javac_jar_path, root_build_dir) |
| 1187 | 1276 |
| 1188 _javac_target_name = "${target_name}__javac" | 1277 _javac_target_name = "${target_name}__javac" |
| 1189 _finish_target_name = "${target_name}__finish" | 1278 _process_prebuilt_target_name = "${target_name}__process_prebuilt" |
| 1279 _emma_instr_target_name = "${target_name}__emma_instr" |
| 1280 _ijar_target_name = "${target_name}__ijar" |
| 1190 _final_target_name = target_name | 1281 _final_target_name = target_name |
| 1191 | 1282 |
| 1192 action(_javac_target_name) { | 1283 action(_javac_target_name) { |
| 1193 script = "//build/android/gyp/javac.py" | 1284 script = "//build/android/gyp/javac.py" |
| 1194 depfile = "$target_gen_dir/$target_name.d" | 1285 depfile = "$target_gen_dir/$target_name.d" |
| 1195 deps = _srcjar_deps | 1286 deps = _srcjar_deps |
| 1196 if (defined(invoker.deps)) { | 1287 if (defined(invoker.deps)) { |
| 1197 deps += invoker.deps | 1288 deps += invoker.deps |
| 1198 } | 1289 } |
| 1199 | 1290 |
| 1200 outputs = [ | 1291 outputs = [ |
| 1201 depfile, | 1292 depfile, |
| 1202 _intermediate_jar_path, | 1293 _javac_jar_path, |
| 1203 _intermediate_jar_path + ".md5.stamp", | 1294 _javac_jar_path + ".md5.stamp", |
| 1204 ] | 1295 ] |
| 1205 sources = _java_files + _java_srcjars | 1296 sources = _java_files + _java_srcjars |
| 1206 inputs = [ | 1297 inputs = [ |
| 1207 _build_config, | 1298 _build_config, |
| 1208 ] | 1299 ] |
| 1209 | 1300 |
| 1210 _rebased_java_srcjars = rebase_path(_java_srcjars, root_build_dir) | 1301 _rebased_java_srcjars = rebase_path(_java_srcjars, root_build_dir) |
| 1211 _rebased_depfile = rebase_path(depfile, root_build_dir) | 1302 _rebased_depfile = rebase_path(depfile, root_build_dir) |
| 1212 args = [ | 1303 args = [ |
| 1213 "--depfile=$_rebased_depfile", | 1304 "--depfile=$_rebased_depfile", |
| 1214 "--use-ijars", | 1305 "--use-ijars", |
| 1215 "--classpath=@FileArg($_rebased_build_config:javac:classpath)", | 1306 "--classpath=@FileArg($_rebased_build_config:javac:classpath)", |
| 1216 "--jar-path=$_rebased_jar_path", | 1307 "--jar-path=$_rebased_jar_path", |
| 1217 "--java-srcjars=$_rebased_java_srcjars", | 1308 "--java-srcjars=$_rebased_java_srcjars", |
| 1218 "--java-srcjars=@FileArg($_rebased_build_config:javac:srcjars)", | 1309 "--java-srcjars=@FileArg($_rebased_build_config:javac:srcjars)", |
| 1219 "--jar-excluded-classes=$_jar_excluded_patterns", | 1310 "--jar-excluded-classes=$_jar_excluded_patterns", |
| 1220 ] | 1311 ] |
| 1221 if (_enable_incremental_javac) { | 1312 if (_enable_incremental_javac) { |
| 1222 args += [ "--incremental" ] | 1313 args += [ "--incremental" ] |
| 1223 deps += [ "//third_party/jmake" ] | 1314 deps += [ "//third_party/jmake" ] |
| 1224 outputs += [ "${_intermediate_jar_path}.pdb" ] | 1315 outputs += [ "${_javac_jar_path}.pdb" ] |
| 1225 } | 1316 } |
| 1226 if (_supports_android) { | 1317 if (_supports_android) { |
| 1227 if (defined(invoker.alternative_android_sdk_ijar)) { | 1318 if (defined(invoker.alternative_android_sdk_ijar)) { |
| 1228 deps += [ invoker.alternative_android_sdk_ijar_dep ] | 1319 deps += [ invoker.alternative_android_sdk_ijar_dep ] |
| 1229 _android_sdk_ijar = invoker.alternative_android_sdk_ijar | 1320 _android_sdk_ijar = invoker.alternative_android_sdk_ijar |
| 1230 } else { | 1321 } else { |
| 1231 deps += [ "//build/android:android_ijar" ] | 1322 deps += [ "//build/android:android_ijar" ] |
| 1232 _android_sdk_ijar = "$root_out_dir/lib.java/android.interface.jar" | 1323 _android_sdk_ijar = "$root_out_dir/lib.java/android.interface.jar" |
| 1233 } | 1324 } |
| 1234 inputs += [ _android_sdk_ijar ] | 1325 inputs += [ _android_sdk_ijar ] |
| 1235 _rebased_android_sdk_ijar = rebase_path(_android_sdk_ijar, root_build_dir) | 1326 _rebased_android_sdk_ijar = rebase_path(_android_sdk_ijar, root_build_dir) |
| 1236 args += [ "--bootclasspath=$_rebased_android_sdk_ijar" ] | 1327 args += [ "--bootclasspath=$_rebased_android_sdk_ijar" ] |
| 1237 } | 1328 } |
| 1238 foreach(e, _manifest_entries) { | 1329 foreach(e, _manifest_entries) { |
| 1239 args += [ "--manifest-entry=" + e ] | 1330 args += [ "--manifest-entry=" + e ] |
| 1240 } | 1331 } |
| 1241 if (_chromium_code) { | 1332 if (_chromium_code) { |
| 1242 args += [ "--chromium-code=1" ] | 1333 args += [ "--chromium-code=1" ] |
| 1243 } | 1334 } |
| 1244 if (_enable_errorprone) { | 1335 if (_enable_errorprone) { |
| 1245 deps += [ "//third_party/errorprone:chromium_errorprone" ] | 1336 deps += [ "//third_party/errorprone:chromium_errorprone" ] |
| 1246 args += [ | 1337 args += [ |
| 1247 "--use-errorprone-path", | 1338 "--use-errorprone-path", |
| 1248 "bin/chromium_errorprone", | 1339 "bin/chromium_errorprone", |
| 1249 ] | 1340 ] |
| 1250 } | 1341 } |
| 1251 args += rebase_path(_java_files, root_build_dir) | 1342 args += rebase_path(_java_files, root_build_dir) |
| 1252 } | 1343 } |
| 1253 | 1344 |
| 1254 process_java_prebuilt(_finish_target_name) { | 1345 process_java_prebuilt(_process_prebuilt_target_name) { |
| 1255 visibility = [ ":$_final_target_name" ] | |
| 1256 | |
| 1257 build_config = _build_config | 1346 build_config = _build_config |
| 1258 input_jar_path = _intermediate_jar_path | 1347 input_jar_path = _javac_jar_path |
| 1259 output_jar_path = _final_jar_path | 1348 output_jar_path = _process_prebuilt_jar_path |
| 1260 if (defined(invoker.proguard_preprocess) && invoker.proguard_preprocess) { | 1349 if (defined(invoker.proguard_preprocess) && invoker.proguard_preprocess) { |
| 1261 proguard_preprocess = invoker.proguard_preprocess | 1350 proguard_preprocess = invoker.proguard_preprocess |
| 1262 proguard_config = invoker.proguard_config | 1351 proguard_config = invoker.proguard_config |
| 1263 } | 1352 } |
| 1264 deps = [ | 1353 deps = [ |
| 1265 ":$_javac_target_name", | 1354 ":$_javac_target_name", |
| 1266 ] | 1355 ] |
| 1267 } | 1356 } |
| 1268 | 1357 |
| 1358 emma_instr(_emma_instr_target_name) { |
| 1359 visibility = [ |
| 1360 ":$_ijar_target_name", |
| 1361 ":$_final_target_name", |
| 1362 ] |
| 1363 |
| 1364 forward_variables_from(invoker, [ "emma_instrument" ]) |
| 1365 |
| 1366 input_jar_path = _process_prebuilt_jar_path |
| 1367 output_jar_path = _final_jar_path |
| 1368 source_files = _java_files |
| 1369 |
| 1370 deps = [ |
| 1371 ":$_process_prebuilt_target_name", |
| 1372 ] |
| 1373 } |
| 1374 |
| 1375 generate_interface_jar(_ijar_target_name) { |
| 1376 input_jar = _final_jar_path |
| 1377 output_jar = _final_ijar_path |
| 1378 deps = [ |
| 1379 ":$_emma_instr_target_name", |
| 1380 ] |
| 1381 } |
| 1382 |
| 1269 group(_final_target_name) { | 1383 group(_final_target_name) { |
| 1270 forward_variables_from(invoker, [ "visibility" ]) | 1384 forward_variables_from(invoker, [ "visibility" ]) |
| 1271 public_deps = [ | 1385 public_deps = [ |
| 1272 ":$_finish_target_name", | 1386 ":$_emma_instr_target_name", |
| 1387 ":$_ijar_target_name", |
| 1273 ] | 1388 ] |
| 1274 } | 1389 } |
| 1275 } | 1390 } |
| 1276 | 1391 |
| 1277 template("java_library_impl") { | 1392 template("java_library_impl") { |
| 1278 set_sources_assignment_filter([]) | 1393 set_sources_assignment_filter([]) |
| 1279 forward_variables_from(invoker, [ "testonly" ]) | 1394 forward_variables_from(invoker, [ "testonly" ]) |
| 1280 | 1395 |
| 1281 assert( | 1396 assert( |
| 1282 defined(invoker.java_files) || defined(invoker.DEPRECATED_java_in_dir) || | 1397 defined(invoker.java_files) || defined(invoker.DEPRECATED_java_in_dir) || |
| (...skipping 21 matching lines...) Expand all Loading... |
| 1304 defined(invoker.requires_android) && invoker.requires_android | 1419 defined(invoker.requires_android) && invoker.requires_android |
| 1305 assert(_requires_android || true) # Mark as used. | 1420 assert(_requires_android || true) # Mark as used. |
| 1306 _android_manifest = "//build/android/AndroidManifest.xml" | 1421 _android_manifest = "//build/android/AndroidManifest.xml" |
| 1307 if (defined(invoker.android_manifest)) { | 1422 if (defined(invoker.android_manifest)) { |
| 1308 _android_manifest = invoker.android_manifest | 1423 _android_manifest = invoker.android_manifest |
| 1309 } | 1424 } |
| 1310 assert(_android_manifest != "") # Mark as used. | 1425 assert(_android_manifest != "") # Mark as used. |
| 1311 _run_findbugs = defined(invoker.run_findbugs) && invoker.run_findbugs | 1426 _run_findbugs = defined(invoker.run_findbugs) && invoker.run_findbugs |
| 1312 assert(_run_findbugs || true) # Mark as used. | 1427 assert(_run_findbugs || true) # Mark as used. |
| 1313 | 1428 |
| 1429 _chromium_code = true |
| 1430 if (defined(invoker.chromium_code)) { |
| 1431 _chromium_code = invoker.chromium_code |
| 1432 } |
| 1433 |
| 1434 _emma_never_instrument = !_chromium_code |
| 1435 if (defined(invoker.emma_never_instrument)) { |
| 1436 _emma_never_instrument = invoker.emma_never_instrument |
| 1437 } |
| 1438 assert(_emma_never_instrument || true) # Mark as used |
| 1439 _emma_instrument = emma_coverage && !_emma_never_instrument |
| 1440 |
| 1314 if (_supports_android) { | 1441 if (_supports_android) { |
| 1315 _dex_path = _base_path + ".dex.jar" | 1442 _dex_path = _base_path + ".dex.jar" |
| 1316 if (defined(invoker.dex_path)) { | 1443 if (defined(invoker.dex_path)) { |
| 1317 _dex_path = invoker.dex_path | 1444 _dex_path = invoker.dex_path |
| 1318 } | 1445 } |
| 1319 } | 1446 } |
| 1320 | 1447 |
| 1321 # Define build_config_deps which will be a list of targets required to | 1448 # Define build_config_deps which will be a list of targets required to |
| 1322 # build the _build_config. | 1449 # build the _build_config. |
| 1323 if (defined(invoker.override_build_config)) { | 1450 if (defined(invoker.override_build_config)) { |
| (...skipping 20 matching lines...) Expand all Loading... |
| 1344 invoker.bypass_platform_checks | 1471 invoker.bypass_platform_checks |
| 1345 | 1472 |
| 1346 build_config = _build_config | 1473 build_config = _build_config |
| 1347 jar_path = _jar_path | 1474 jar_path = _jar_path |
| 1348 if (_supports_android) { | 1475 if (_supports_android) { |
| 1349 dex_path = _dex_path | 1476 dex_path = _dex_path |
| 1350 } | 1477 } |
| 1351 } | 1478 } |
| 1352 } | 1479 } |
| 1353 | 1480 |
| 1354 _chromium_code = true | |
| 1355 if (defined(invoker.chromium_code)) { | |
| 1356 _chromium_code = invoker.chromium_code | |
| 1357 } | |
| 1358 | |
| 1359 _srcjar_deps = [] | 1481 _srcjar_deps = [] |
| 1360 if (defined(invoker.srcjar_deps)) { | 1482 if (defined(invoker.srcjar_deps)) { |
| 1361 _srcjar_deps = invoker.srcjar_deps | 1483 _srcjar_deps = invoker.srcjar_deps |
| 1362 } | 1484 } |
| 1363 | 1485 |
| 1364 _srcjars = [] | 1486 _srcjars = [] |
| 1365 if (defined(invoker.srcjars)) { | 1487 if (defined(invoker.srcjars)) { |
| 1366 _srcjars = invoker.srcjars | 1488 _srcjars = invoker.srcjars |
| 1367 } | 1489 } |
| 1368 | 1490 |
| (...skipping 38 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1407 "proguard_config", | 1529 "proguard_config", |
| 1408 "proguard_preprocess", | 1530 "proguard_preprocess", |
| 1409 ]) | 1531 ]) |
| 1410 jar_path = _jar_path | 1532 jar_path = _jar_path |
| 1411 build_config = _build_config | 1533 build_config = _build_config |
| 1412 java_files = _java_files | 1534 java_files = _java_files |
| 1413 srcjar_deps = _srcjar_deps | 1535 srcjar_deps = _srcjar_deps |
| 1414 srcjars = _srcjars | 1536 srcjars = _srcjars |
| 1415 chromium_code = _chromium_code | 1537 chromium_code = _chromium_code |
| 1416 supports_android = _supports_android | 1538 supports_android = _supports_android |
| 1539 emma_instrument = _emma_instrument |
| 1417 deps = build_config_deps | 1540 deps = build_config_deps |
| 1418 } | 1541 } |
| 1419 | 1542 |
| 1420 if (defined(invoker.main_class)) { | 1543 if (defined(invoker.main_class)) { |
| 1421 _final_datadeps += [ ":${_template_name}__java_binary_script" ] | 1544 _final_datadeps += [ ":${_template_name}__java_binary_script" ] |
| 1422 java_binary_script("${_template_name}__java_binary_script") { | 1545 java_binary_script("${_template_name}__java_binary_script") { |
| 1423 forward_variables_from(invoker, | 1546 forward_variables_from(invoker, |
| 1424 [ | 1547 [ |
| 1425 "bootclasspath", | 1548 "bootclasspath", |
| 1426 "main_class", | 1549 "main_class", |
| (...skipping 32 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1459 } | 1582 } |
| 1460 } | 1583 } |
| 1461 } | 1584 } |
| 1462 | 1585 |
| 1463 _final_deps += [ ":${_template_name}__dex" ] | 1586 _final_deps += [ ":${_template_name}__dex" ] |
| 1464 dex("${_template_name}__dex") { | 1587 dex("${_template_name}__dex") { |
| 1465 sources = [ | 1588 sources = [ |
| 1466 _jar_path, | 1589 _jar_path, |
| 1467 ] | 1590 ] |
| 1468 output = _dex_path | 1591 output = _dex_path |
| 1592 no_locals = _emma_instrument |
| 1469 deps = [ | 1593 deps = [ |
| 1470 ":$_compile_java_target", | 1594 ":$_compile_java_target", |
| 1471 ] | 1595 ] |
| 1472 } | 1596 } |
| 1473 } | 1597 } |
| 1474 | 1598 |
| 1475 group(target_name) { | 1599 group(target_name) { |
| 1476 forward_variables_from(invoker, [ "visibility" ]) | 1600 forward_variables_from(invoker, [ "visibility" ]) |
| 1477 public_deps = _final_deps | 1601 public_deps = _final_deps |
| 1478 data_deps = _final_datadeps | 1602 data_deps = _final_datadeps |
| (...skipping 308 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1787 ] | 1911 ] |
| 1788 args = [ | 1912 args = [ |
| 1789 "--depfile", | 1913 "--depfile", |
| 1790 rebase_path(depfile, root_build_dir), | 1914 rebase_path(depfile, root_build_dir), |
| 1791 "--script-output-path", | 1915 "--script-output-path", |
| 1792 rebase_path(generated_script, root_build_dir), | 1916 rebase_path(generated_script, root_build_dir), |
| 1793 ] | 1917 ] |
| 1794 args += test_runner_args | 1918 args += test_runner_args |
| 1795 } | 1919 } |
| 1796 } | 1920 } |
| OLD | NEW |