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

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

Issue 1149893018: Fixes for GN Android build inputs/outputs (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 5 years, 6 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
« no previous file with comments | « build/config/android/internal_rules.gni ('k') | chrome/android/BUILD.gn » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
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("//tools/grit/grit_rule.gni") 8 import("//tools/grit/grit_rule.gni")
9 import("//tools/relocation_packer/config.gni") 9 import("//tools/relocation_packer/config.gni")
10 10
(...skipping 714 matching lines...) Expand 10 before | Expand all | Expand 10 after
725 # will be added to java_files and be included in this library. 725 # will be added to java_files and be included in this library.
726 # srcjars: List of srcjars to be included in this library, together with the 726 # srcjars: List of srcjars to be included in this library, together with the
727 # ones obtained from srcjar_deps. 727 # ones obtained from srcjar_deps.
728 # 728 #
729 # bypass_platform_checks: Disables checks about cross-platform (Java/Android) 729 # bypass_platform_checks: Disables checks about cross-platform (Java/Android)
730 # dependencies for this target. This will allow depending on an 730 # dependencies for this target. This will allow depending on an
731 # android_library target, for example. 731 # android_library target, for example.
732 # 732 #
733 # chromium_code: If true, extra analysis warning/errors will be enabled. 733 # chromium_code: If true, extra analysis warning/errors will be enabled.
734 # 734 #
735 # datadeps, testonly 735 # data_deps, testonly
736 # 736 #
737 # Example 737 # Example
738 # java_binary("foo") { 738 # java_binary("foo") {
739 # java_files = [ "org/chromium/foo/FooMain.java" ] 739 # java_files = [ "org/chromium/foo/FooMain.java" ]
740 # deps = [ ":bar_java" ] 740 # deps = [ ":bar_java" ]
741 # main_class = "org.chromium.foo.FooMain" 741 # main_class = "org.chromium.foo.FooMain"
742 # } 742 # }
743 template("java_binary") { 743 template("java_binary") {
744 set_sources_assignment_filter([]) 744 set_sources_assignment_filter([])
745 745
746 # TODO(cjhopman): This should not act like a java_library for dependents (i.e. 746 # TODO(cjhopman): This should not act like a java_library for dependents (i.e.
747 # dependents shouldn't get the jar in their classpath, etc.). 747 # dependents shouldn't get the jar in their classpath, etc.).
748 java_library_impl(target_name) { 748 java_library_impl(target_name) {
749 if (defined(invoker.DEPRECATED_java_in_dir)) { 749 if (defined(invoker.DEPRECATED_java_in_dir)) {
750 DEPRECATED_java_in_dir = invoker.DEPRECATED_java_in_dir 750 DEPRECATED_java_in_dir = invoker.DEPRECATED_java_in_dir
751 } 751 }
752 if (defined(invoker.chromium_code)) { 752 if (defined(invoker.chromium_code)) {
753 chromium_code = invoker.chromium_code 753 chromium_code = invoker.chromium_code
754 } 754 }
755 if (defined(invoker.datadeps)) { 755 if (defined(invoker.data_deps)) {
756 deps = invoker.datadeps 756 deps = invoker.data_deps
757 } 757 }
758 if (defined(invoker.deps)) { 758 if (defined(invoker.deps)) {
759 deps = invoker.deps 759 deps = invoker.deps
760 } 760 }
761 if (defined(invoker.java_files)) { 761 if (defined(invoker.java_files)) {
762 java_files = invoker.java_files 762 java_files = invoker.java_files
763 } 763 }
764 if (defined(invoker.srcjar_deps)) { 764 if (defined(invoker.srcjar_deps)) {
765 srcjar_deps = invoker.srcjar_deps 765 srcjar_deps = invoker.srcjar_deps
766 } 766 }
(...skipping 92 matching lines...) Expand 10 before | Expand all | Expand 10 after
859 # be used to remove unwanted parts of the library. 859 # be used to remove unwanted parts of the library.
860 # proguard_config: Path to the proguard config for preprocessing. 860 # proguard_config: Path to the proguard config for preprocessing.
861 # 861 #
862 # supports_android: If true, Android targets (android_library, android_apk) 862 # supports_android: If true, Android targets (android_library, android_apk)
863 # may depend on this target. Note: if true, this target must only use the 863 # may depend on this target. Note: if true, this target must only use the
864 # subset of Java available on Android. 864 # subset of Java available on Android.
865 # bypass_platform_checks: Disables checks about cross-platform (Java/Android) 865 # bypass_platform_checks: Disables checks about cross-platform (Java/Android)
866 # dependencies for this target. This will allow depending on an 866 # dependencies for this target. This will allow depending on an
867 # android_library target, for example. 867 # android_library target, for example.
868 # 868 #
869 # datadeps, testonly 869 # data_deps, testonly
870 # 870 #
871 # Example 871 # Example
872 # java_library("foo_java") { 872 # java_library("foo_java") {
873 # java_files = [ 873 # java_files = [
874 # "org/chromium/foo/Foo.java", 874 # "org/chromium/foo/Foo.java",
875 # "org/chromium/foo/FooInterface.java", 875 # "org/chromium/foo/FooInterface.java",
876 # "org/chromium/foo/FooService.java", 876 # "org/chromium/foo/FooService.java",
877 # ] 877 # ]
878 # deps = [ 878 # deps = [
879 # ":bar_java" 879 # ":bar_java"
880 # ] 880 # ]
881 # srcjar_deps = [ 881 # srcjar_deps = [
882 # ":foo_generated_enum" 882 # ":foo_generated_enum"
883 # ] 883 # ]
884 # jar_excluded_patterns = [ 884 # jar_excluded_patterns = [
885 # "*/FooService.class", "*/FooService##*.class" 885 # "*/FooService.class", "*/FooService##*.class"
886 # ] 886 # ]
887 # } 887 # }
888 template("java_library") { 888 template("java_library") {
889 set_sources_assignment_filter([]) 889 set_sources_assignment_filter([])
890 java_library_impl(target_name) { 890 java_library_impl(target_name) {
891 if (defined(invoker.DEPRECATED_java_in_dir)) { 891 if (defined(invoker.DEPRECATED_java_in_dir)) {
892 DEPRECATED_java_in_dir = invoker.DEPRECATED_java_in_dir 892 DEPRECATED_java_in_dir = invoker.DEPRECATED_java_in_dir
893 } 893 }
894 if (defined(invoker.chromium_code)) { 894 if (defined(invoker.chromium_code)) {
895 chromium_code = invoker.chromium_code 895 chromium_code = invoker.chromium_code
896 } 896 }
897 if (defined(invoker.datadeps)) { 897 if (defined(invoker.data_deps)) {
898 deps = invoker.datadeps 898 deps = invoker.data_deps
899 } 899 }
900 if (defined(invoker.deps)) { 900 if (defined(invoker.deps)) {
901 deps = invoker.deps 901 deps = invoker.deps
902 } 902 }
903 if (defined(invoker.jar_excluded_patterns)) { 903 if (defined(invoker.jar_excluded_patterns)) {
904 jar_excluded_patterns = invoker.jar_excluded_patterns 904 jar_excluded_patterns = invoker.jar_excluded_patterns
905 } 905 }
906 if (defined(invoker.java_files)) { 906 if (defined(invoker.java_files)) {
907 java_files = invoker.java_files 907 java_files = invoker.java_files
908 } 908 }
(...skipping 114 matching lines...) Expand 10 before | Expand all | Expand 10 after
1023 set_sources_assignment_filter([]) 1023 set_sources_assignment_filter([])
1024 assert(!defined(invoker.jar_path), 1024 assert(!defined(invoker.jar_path),
1025 "android_library does not support a custom jar path") 1025 "android_library does not support a custom jar path")
1026 java_library_impl(target_name) { 1026 java_library_impl(target_name) {
1027 if (defined(invoker.DEPRECATED_java_in_dir)) { 1027 if (defined(invoker.DEPRECATED_java_in_dir)) {
1028 DEPRECATED_java_in_dir = invoker.DEPRECATED_java_in_dir 1028 DEPRECATED_java_in_dir = invoker.DEPRECATED_java_in_dir
1029 } 1029 }
1030 if (defined(invoker.chromium_code)) { 1030 if (defined(invoker.chromium_code)) {
1031 chromium_code = invoker.chromium_code 1031 chromium_code = invoker.chromium_code
1032 } 1032 }
1033 if (defined(invoker.datadeps)) { 1033 if (defined(invoker.data_deps)) {
1034 deps = invoker.datadeps 1034 deps = invoker.data_deps
1035 } 1035 }
1036 if (defined(invoker.deps)) { 1036 if (defined(invoker.deps)) {
1037 deps = invoker.deps 1037 deps = invoker.deps
1038 } 1038 }
1039 if (defined(invoker.jar_excluded_patterns)) { 1039 if (defined(invoker.jar_excluded_patterns)) {
1040 jar_excluded_patterns = invoker.jar_excluded_patterns 1040 jar_excluded_patterns = invoker.jar_excluded_patterns
1041 } 1041 }
1042 if (defined(invoker.java_files)) { 1042 if (defined(invoker.java_files)) {
1043 java_files = invoker.java_files 1043 java_files = invoker.java_files
1044 } 1044 }
(...skipping 98 matching lines...) Expand 10 before | Expand all | Expand 10 after
1143 } 1143 }
1144 } 1144 }
1145 1145
1146 # Declare an Android apk target 1146 # Declare an Android apk target
1147 # 1147 #
1148 # This target creates an Android APK containing java code, resources, assets, 1148 # This target creates an Android APK containing java code, resources, assets,
1149 # and (possibly) native libraries. 1149 # and (possibly) native libraries.
1150 # 1150 #
1151 # Variables 1151 # Variables
1152 # android_manifest: Path to AndroidManifest.xml. 1152 # android_manifest: Path to AndroidManifest.xml.
1153 # datadeps: List of dependencies needed at runtime. These will be built but 1153 # data_deps: List of dependencies needed at runtime. These will be built but
1154 # won't change the generated .apk in any way (in fact they may be built 1154 # won't change the generated .apk in any way (in fact they may be built
1155 # after the .apk is). 1155 # after the .apk is).
1156 # deps: List of dependencies. All Android java resources and libraries in the 1156 # deps: List of dependencies. All Android java resources and libraries in the
1157 # "transitive closure" of these dependencies will be included in the apk. 1157 # "transitive closure" of these dependencies will be included in the apk.
1158 # Note: this "transitive closure" actually only includes such targets if 1158 # Note: this "transitive closure" actually only includes such targets if
1159 # they are depended on through android_library or android_resources targets 1159 # they are depended on through android_library or android_resources targets
1160 # (and so not through builtin targets like 'action', 'group', etc). 1160 # (and so not through builtin targets like 'action', 'group', etc).
1161 # java_files: List of .java files to include in the apk. 1161 # java_files: List of .java files to include in the apk.
1162 # srcjar_deps: List of srcjar dependencies. The .java files in the srcjars 1162 # srcjar_deps: List of srcjar dependencies. The .java files in the srcjars
1163 # will be added to java_files and be included in this apk. 1163 # will be added to java_files and be included in this apk.
(...skipping 38 matching lines...) Expand 10 before | Expand all | Expand 10 after
1202 } 1202 }
1203 1203
1204 assert(defined(invoker.final_apk_path) || defined(invoker.apk_name)) 1204 assert(defined(invoker.final_apk_path) || defined(invoker.apk_name))
1205 assert(defined(invoker.android_manifest)) 1205 assert(defined(invoker.android_manifest))
1206 gen_dir = "$target_gen_dir/$target_name" 1206 gen_dir = "$target_gen_dir/$target_name"
1207 base_path = "$gen_dir/$target_name" 1207 base_path = "$gen_dir/$target_name"
1208 _build_config = "$target_gen_dir/$target_name.build_config" 1208 _build_config = "$target_gen_dir/$target_name.build_config"
1209 resources_zip_path = "$base_path.resources.zip" 1209 resources_zip_path = "$base_path.resources.zip"
1210 _all_resources_zip_path = "$base_path.resources.all.zip" 1210 _all_resources_zip_path = "$base_path.resources.all.zip"
1211 jar_path = "$base_path.jar" 1211 jar_path = "$base_path.jar"
1212 _template_name = target_name
1213
1212 final_dex_path = "$gen_dir/classes.dex" 1214 final_dex_path = "$gen_dir/classes.dex"
1213 _template_name = target_name 1215 final_dex_target_name = "${_template_name}__final_dex"
1216
1214 _final_apk_path = "" 1217 _final_apk_path = ""
1215 if (defined(invoker.final_apk_path)) { 1218 if (defined(invoker.final_apk_path)) {
1216 _final_apk_path = invoker.final_apk_path 1219 _final_apk_path = invoker.final_apk_path
1217 } else if (defined(invoker.apk_name)) { 1220 } else if (defined(invoker.apk_name)) {
1218 _final_apk_path = "$root_build_dir/apks/" + invoker.apk_name + ".apk" 1221 _final_apk_path = "$root_build_dir/apks/" + invoker.apk_name + ".apk"
1219 } 1222 }
1220 _dist_jar_path_list = 1223 _dist_jar_path_list =
1221 process_file_template( 1224 process_file_template(
1222 [ _final_apk_path ], 1225 [ _final_apk_path ],
1223 "$root_build_dir/test.lib.java/{{source_name_part}}.jar") 1226 "$root_build_dir/test.lib.java/{{source_name_part}}.jar")
(...skipping 20 matching lines...) Expand all
1244 _keystore_password = invoker.keystore_password 1247 _keystore_password = invoker.keystore_password
1245 } 1248 }
1246 1249
1247 _srcjar_deps = [] 1250 _srcjar_deps = []
1248 if (defined(invoker.srcjar_deps)) { 1251 if (defined(invoker.srcjar_deps)) {
1249 _srcjar_deps += invoker.srcjar_deps 1252 _srcjar_deps += invoker.srcjar_deps
1250 } 1253 }
1251 1254
1252 _load_library_from_apk = false 1255 _load_library_from_apk = false
1253 1256
1257 # The dependency that makes the chromium linker, if any is needed.
1258 _chromium_linker_dep = []
1259
1254 if (defined(invoker.native_libs)) { 1260 if (defined(invoker.native_libs)) {
1255 _use_chromium_linker = false 1261 _use_chromium_linker = false
1256 if (defined(invoker.use_chromium_linker)) { 1262 if (defined(invoker.use_chromium_linker)) {
1257 _use_chromium_linker = 1263 _use_chromium_linker =
1258 invoker.use_chromium_linker && chromium_linker_supported 1264 invoker.use_chromium_linker && chromium_linker_supported
1265 _chromium_linker_dep = [ "//base/android/linker:chromium_android_linker" ]
1259 } 1266 }
1260 1267
1261 if (defined(invoker.load_library_from_apk) && 1268 if (defined(invoker.load_library_from_apk) &&
1262 invoker.load_library_from_apk) { 1269 invoker.load_library_from_apk) {
1263 _load_library_from_apk = true 1270 _load_library_from_apk = true
1264 assert(_use_chromium_linker, 1271 assert(_use_chromium_linker,
1265 "Loading library from the apk requires use" + 1272 "Loading library from the apk requires use" +
1266 " of the Chromium linker.") 1273 " of the Chromium linker.")
1267 } 1274 }
1268 1275
(...skipping 31 matching lines...) Expand 10 before | Expand all | Expand 10 after
1300 _android_manifest = invoker.android_manifest 1307 _android_manifest = invoker.android_manifest
1301 _rebased_build_config = rebase_path(_build_config, root_build_dir) 1308 _rebased_build_config = rebase_path(_build_config, root_build_dir)
1302 _create_abi_split = 1309 _create_abi_split =
1303 defined(invoker.create_abi_split) && invoker.create_abi_split 1310 defined(invoker.create_abi_split) && invoker.create_abi_split
1304 _create_density_splits = 1311 _create_density_splits =
1305 defined(invoker.create_density_splits) && invoker.create_density_splits 1312 defined(invoker.create_density_splits) && invoker.create_density_splits
1306 1313
1307 # Help GN understand that _create_abi_split is not unused (bug in GN). 1314 # Help GN understand that _create_abi_split is not unused (bug in GN).
1308 assert(_create_abi_split || true) 1315 assert(_create_abi_split || true)
1309 1316
1310 write_build_config("${_template_name}__build_config") { 1317 build_config_target = "${_template_name}__build_config"
1318 write_build_config(build_config_target) {
1311 type = "android_apk" 1319 type = "android_apk"
1312 dex_path = final_dex_path 1320 dex_path = final_dex_path
1313 resources_zip = resources_zip_path 1321 resources_zip = resources_zip_path
1314 build_config = _build_config 1322 build_config = _build_config
1315 android_manifest = _android_manifest 1323 android_manifest = _android_manifest
1316 1324
1325 deps = _chromium_linker_dep
1317 if (defined(invoker.deps)) { 1326 if (defined(invoker.deps)) {
1318 deps = invoker.deps 1327 deps += invoker.deps
1319 } 1328 }
1320 1329
1321 if (defined(invoker.apk_under_test)) { 1330 if (defined(invoker.apk_under_test)) {
1322 apk_under_test = invoker.apk_under_test 1331 apk_under_test = invoker.apk_under_test
1323 } 1332 }
1324 1333
1325 native_libs = _native_libs 1334 native_libs = _native_libs
1326 } 1335 }
1327 1336
1328 final_deps = [] 1337 final_deps = []
1329 1338
1330 process_resources_target = "${_template_name}__process_resources" 1339 process_resources_target = "${_template_name}__process_resources"
1331 final_deps += [ ":$process_resources_target" ] 1340 final_deps += [ ":$process_resources_target" ]
1332 process_resources(process_resources_target) { 1341 process_resources(process_resources_target) {
1333 srcjar_path = "${target_gen_dir}/${target_name}.srcjar" 1342 srcjar_path = "${target_gen_dir}/${target_name}.srcjar"
1334 r_text_path = "${target_gen_dir}/${target_name}_R.txt" 1343 r_text_path = "${target_gen_dir}/${target_name}_R.txt"
1335 android_manifest = _android_manifest 1344 android_manifest = _android_manifest
1336 resource_dirs = [ "//build/android/ant/empty/res" ] 1345 resource_dirs = [ "//build/android/ant/empty/res" ]
1337 zip_path = resources_zip_path 1346 zip_path = resources_zip_path
1338 all_resources_zip_path = _all_resources_zip_path 1347 all_resources_zip_path = _all_resources_zip_path
1339 generate_constant_ids = true 1348 generate_constant_ids = true
1340 build_config = _build_config
1341 1349
1342 if (defined(invoker.include_all_resources)) { 1350 if (defined(invoker.include_all_resources)) {
1343 include_all_resources = invoker.include_all_resources 1351 include_all_resources = invoker.include_all_resources
1344 } 1352 }
1353
1354 build_config = _build_config
1355 deps = [
1356 ":$build_config_target",
1357 ]
1345 } 1358 }
1346 _srcjar_deps += [ ":${_template_name}__process_resources" ] 1359 _srcjar_deps += [ ":$process_resources_target" ]
1347 1360
1348 if (_native_libs != []) { 1361 if (_native_libs != []) {
1349 _enable_chromium_linker_tests = false 1362 _enable_chromium_linker_tests = false
1350 if (defined(invoker.enable_chromium_linker_tests)) { 1363 if (defined(invoker.enable_chromium_linker_tests)) {
1351 _enable_chromium_linker_tests = invoker.enable_chromium_linker_tests 1364 _enable_chromium_linker_tests = invoker.enable_chromium_linker_tests
1352 } 1365 }
1353 1366
1354 java_cpp_template("${_template_name}__native_libraries_java") { 1367 java_cpp_template("${_template_name}__native_libraries_java") {
1355 package_name = "org/chromium/base/library_loader" 1368 package_name = "org/chromium/base/library_loader"
1356 sources = [ 1369 sources = [
(...skipping 67 matching lines...) Expand 10 before | Expand all | Expand 10 after
1424 inputs += [ jar_path ] 1437 inputs += [ jar_path ]
1425 _rebased_jar_path = rebase_path([ jar_path ], root_build_dir) 1438 _rebased_jar_path = rebase_path([ jar_path ], root_build_dir)
1426 args += [ "--inputs=$_rebased_jar_path" ] 1439 args += [ "--inputs=$_rebased_jar_path" ]
1427 deps = [ 1440 deps = [
1428 # This target generates the jar file. 1441 # This target generates the jar file.
1429 ":$java_target", 1442 ":$java_target",
1430 ] 1443 ]
1431 } 1444 }
1432 } 1445 }
1433 1446
1434 final_deps += [ ":${_template_name}__final_dex" ] 1447 final_deps += [ ":$final_dex_target_name" ]
1435 dex("${_template_name}__final_dex") { 1448 dex("$final_dex_target_name") {
1436 deps = [ 1449 deps = [
1437 ":${_template_name}__java", 1450 ":${_template_name}__java",
1438 ] 1451 ]
1439 sources = [ 1452 sources = [
1440 jar_path, 1453 jar_path,
1441 ] 1454 ]
1442 inputs = [ 1455 inputs = [
1443 _build_config, 1456 _build_config,
1444 ] 1457 ]
1445 output = final_dex_path 1458 output = final_dex_path
1446 dex_arg_key = "${_rebased_build_config}:final_dex:dependency_dex_files" 1459 dex_arg_key = "${_rebased_build_config}:final_dex:dependency_dex_files"
1447 args = [ "--inputs=@FileArg($dex_arg_key)" ] 1460 args = [ "--inputs=@FileArg($dex_arg_key)" ]
1448 } 1461 }
1449 1462
1450 if (_native_libs != []) { 1463 if (_native_libs != []) {
1451 action("${_template_name}__prepare_native") { 1464 action("${_template_name}__prepare_native") {
1452 script = "//build/android/gyp/pack_arm_relocations.py" 1465 script = "//build/android/gyp/pack_arm_relocations.py"
1453 packed_libraries_dir = "$_native_libs_dir/$android_app_abi" 1466 packed_libraries_dir = "$_native_libs_dir/$android_app_abi"
1454 depfile = "$target_gen_dir/$target_name.d" 1467 depfile = "$target_gen_dir/$target_name.d"
1455 outputs = [ 1468 outputs = [
1456 depfile, 1469 depfile,
1457 ] 1470 ]
1458 inputs = [ _build_config ] + _native_libs 1471 inputs = [ _build_config ] + _native_libs
1459 deps = [] 1472 deps = _chromium_linker_dep
1460 skip_packing_list = [ 1473 skip_packing_list = [
1461 "gdbserver", 1474 "gdbserver",
1462 "libchromium_android_linker.so", 1475 "libchromium_android_linker.so",
1463 ] 1476 ]
1464 1477
1465 enable_packing_arg = 0 1478 enable_packing_arg = 0
1466 if (_enable_relocation_packing) { 1479 if (_enable_relocation_packing) {
1467 enable_packing_arg = 1 1480 enable_packing_arg = 1
1468 deps += [ relocation_packer_target ] 1481 deps += [ relocation_packer_target ]
1469 } 1482 }
(...skipping 46 matching lines...) Expand 10 before | Expand all | Expand 10 after
1516 version_code = _version_code 1529 version_code = _version_code
1517 version_name = _version_name 1530 version_name = _version_name
1518 1531
1519 keystore_name = _keystore_name 1532 keystore_name = _keystore_name
1520 keystore_path = _keystore_path 1533 keystore_path = _keystore_path
1521 keystore_password = _keystore_password 1534 keystore_password = _keystore_password
1522 1535
1523 # This target generates the input file _all_resources_zip_path. 1536 # This target generates the input file _all_resources_zip_path.
1524 deps = [ 1537 deps = [
1525 ":$process_resources_target", 1538 ":$process_resources_target",
1539 ":$final_dex_target_name",
1526 ] 1540 ]
1527 1541
1528 if (defined(invoker.asset_location)) { 1542 if (defined(invoker.asset_location)) {
1529 asset_location = invoker.asset_location 1543 asset_location = invoker.asset_location
1530 1544
1531 # We don't know the exact dependencies that create the assets in 1545 # We don't know the exact dependencies that create the assets in
1532 # |asset_location|; we depend on all caller deps until a better solution 1546 # |asset_location|; we depend on all caller deps until a better solution
1533 # is figured out (http://crbug.com/433330). 1547 # is figured out (http://crbug.com/433330).
1534 if (defined(invoker.deps)) { 1548 if (defined(invoker.deps)) {
1535 deps += invoker.deps 1549 deps += invoker.deps
(...skipping 37 matching lines...) Expand 10 before | Expand all | Expand 10 after
1573 1587
1574 native_libs_dir = _native_libs_dir 1588 native_libs_dir = _native_libs_dir
1575 deps = [ 1589 deps = [
1576 ":${_template_name}__prepare_native", 1590 ":${_template_name}__prepare_native",
1577 ] 1591 ]
1578 } 1592 }
1579 } 1593 }
1580 1594
1581 group(target_name) { 1595 group(target_name) {
1582 deps = final_deps 1596 deps = final_deps
1583 if (defined(invoker.datadeps)) { 1597 if (defined(invoker.data_deps)) {
1584 datadeps = invoker.datadeps 1598 data_deps = invoker.data_deps
1585 } 1599 }
1586 } 1600 }
1587 } 1601 }
1588 1602
1589 # Declare an Android gtest apk 1603 # Declare an Android gtest apk
1590 # 1604 #
1591 # This target creates an Android apk for running gtest-based unittests. 1605 # This target creates an Android apk for running gtest-based unittests.
1592 # 1606 #
1593 # Variables 1607 # Variables
1594 # deps: Specifies the dependencies of this target. These will be passed to 1608 # deps: Specifies the dependencies of this target. These will be passed to
(...skipping 52 matching lines...) Expand 10 before | Expand all | Expand 10 after
1647 asset_location = invoker.asset_location 1661 asset_location = invoker.asset_location
1648 } 1662 }
1649 deps = [ 1663 deps = [
1650 "//base:base_java", 1664 "//base:base_java",
1651 "//build/android/pylib/remote/device/dummy:remote_device_dummy_apk", 1665 "//build/android/pylib/remote/device/dummy:remote_device_dummy_apk",
1652 "//testing/android/appurify_support:appurify_support_java", 1666 "//testing/android/appurify_support:appurify_support_java",
1653 ] 1667 ]
1654 if (defined(invoker.deps)) { 1668 if (defined(invoker.deps)) {
1655 deps += invoker.deps 1669 deps += invoker.deps
1656 } 1670 }
1657 datadeps = [ 1671 data_deps = [ "//tools/android/md5sum" ]
1658 "//tools/android/md5sum",
1659 ]
1660 if (host_os == "linux") { 1672 if (host_os == "linux") {
1661 datadeps += [ "//tools/android/forwarder2" ] 1673 data_deps += [ "//tools/android/forwarder2" ]
1662 } 1674 }
1663 if (defined(invoker.datadeps)) { 1675 if (defined(invoker.data_deps)) {
1664 datadeps += invoker.datadeps 1676 data_deps += invoker.data_deps
1665 } 1677 }
1666 } 1678 }
1667 } 1679 }
1668 1680
1669 # Generate .java files from .aidl files. 1681 # Generate .java files from .aidl files.
1670 # 1682 #
1671 # This target will store the .java files in a srcjar and should be included in 1683 # This target will store the .java files in a srcjar and should be included in
1672 # an android_library or android_apk's srcjar_deps. 1684 # an android_library or android_apk's srcjar_deps.
1673 # 1685 #
1674 # Variables 1686 # Variables
(...skipping 213 matching lines...) Expand 10 before | Expand all | Expand 10 after
1888 template("uiautomator_test") { 1900 template("uiautomator_test") {
1889 set_sources_assignment_filter([]) 1901 set_sources_assignment_filter([])
1890 if (defined(invoker.testonly)) { 1902 if (defined(invoker.testonly)) {
1891 testonly = invoker.testonly 1903 testonly = invoker.testonly
1892 } 1904 }
1893 assert(target_name != "") 1905 assert(target_name != "")
1894 assert(invoker.deps != [] || true) 1906 assert(invoker.deps != [] || true)
1895 group(target_name) { 1907 group(target_name) {
1896 } 1908 }
1897 } 1909 }
OLDNEW
« no previous file with comments | « build/config/android/internal_rules.gni ('k') | chrome/android/BUILD.gn » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698