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("//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("//build/toolchain/toolchain.gni") | 8 import("//build/toolchain/toolchain.gni") |
9 import("//third_party/android_platform/config.gni") | 9 import("//third_party/android_platform/config.gni") |
10 import("//tools/grit/grit_rule.gni") | 10 import("//tools/grit/grit_rule.gni") |
(...skipping 1048 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
1059 # dex_path: If set, the resulting .dex.jar file will be placed under this | 1059 # dex_path: If set, the resulting .dex.jar file will be placed under this |
1060 # path. | 1060 # path. |
1061 # | 1061 # |
1062 # alternative_android_sdk_ijar: if set, the given android_sdk_ijar file | 1062 # alternative_android_sdk_ijar: if set, the given android_sdk_ijar file |
1063 # replaces the default android_sdk_ijar. | 1063 # replaces the default android_sdk_ijar. |
1064 # | 1064 # |
1065 # alternative_android_sdk_ijar_dep: the target that generates | 1065 # alternative_android_sdk_ijar_dep: the target that generates |
1066 # alternative_android_sdk_ijar, must be set if alternative_android_sdk_ijar | 1066 # alternative_android_sdk_ijar, must be set if alternative_android_sdk_ijar |
1067 # is used. | 1067 # is used. |
1068 # | 1068 # |
1069 # emma_never_instrument: Disables EMMA Java code coverage for this target. | |
1070 # | |
1069 # Example | 1071 # Example |
1070 # android_library("foo_java") { | 1072 # android_library("foo_java") { |
1071 # java_files = [ | 1073 # java_files = [ |
1072 # "android/org/chromium/foo/Foo.java", | 1074 # "android/org/chromium/foo/Foo.java", |
1073 # "android/org/chromium/foo/FooInterface.java", | 1075 # "android/org/chromium/foo/FooInterface.java", |
1074 # "android/org/chromium/foo/FooService.java", | 1076 # "android/org/chromium/foo/FooService.java", |
1075 # ] | 1077 # ] |
1076 # deps = [ | 1078 # deps = [ |
1077 # ":bar_java" | 1079 # ":bar_java" |
1078 # ] | 1080 # ] |
(...skipping 273 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
1352 | 1354 |
1353 # Help GN understand that _create_abi_split is not unused (bug in GN). | 1355 # Help GN understand that _create_abi_split is not unused (bug in GN). |
1354 assert(_create_abi_split || true) | 1356 assert(_create_abi_split || true) |
1355 | 1357 |
1356 _proguard_enabled = | 1358 _proguard_enabled = |
1357 defined(invoker.proguard_enabled) && invoker.proguard_enabled | 1359 defined(invoker.proguard_enabled) && invoker.proguard_enabled |
1358 if (_proguard_enabled) { | 1360 if (_proguard_enabled) { |
1359 _proguard_jar_path = "$base_path.proguard.jar" | 1361 _proguard_jar_path = "$base_path.proguard.jar" |
1360 } | 1362 } |
1361 | 1363 |
1364 _emma_never_instrument = defined(invoker.testonly) && invoker.testonly | |
agrieve
2015/11/19 01:50:52
testonly -> emma_never_instrument
pkotwicz
2015/11/19 16:55:59
Line 1364 belongs to "android_apk" template. Line
| |
1365 | |
1362 build_config_target = "${_template_name}__build_config" | 1366 build_config_target = "${_template_name}__build_config" |
1363 write_build_config(build_config_target) { | 1367 write_build_config(build_config_target) { |
1364 forward_variables_from(invoker, [ "apk_under_test" ]) | 1368 forward_variables_from(invoker, [ "apk_under_test" ]) |
1365 type = "android_apk" | 1369 type = "android_apk" |
1366 jar_path = _jar_path | 1370 jar_path = _jar_path |
1367 dex_path = final_dex_path | 1371 dex_path = final_dex_path |
1368 resources_zip = resources_zip_path | 1372 resources_zip = resources_zip_path |
1369 build_config = _build_config | 1373 build_config = _build_config |
1370 android_manifest = _android_manifest | 1374 android_manifest = _android_manifest |
1371 | 1375 |
(...skipping 93 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
1465 if (defined(invoker.java_files)) { | 1469 if (defined(invoker.java_files)) { |
1466 java_files = invoker.java_files | 1470 java_files = invoker.java_files |
1467 } else if (defined(invoker.DEPRECATED_java_in_dir)) { | 1471 } else if (defined(invoker.DEPRECATED_java_in_dir)) { |
1468 DEPRECATED_java_in_dir = invoker.DEPRECATED_java_in_dir | 1472 DEPRECATED_java_in_dir = invoker.DEPRECATED_java_in_dir |
1469 } else { | 1473 } else { |
1470 java_files = [] | 1474 java_files = [] |
1471 } | 1475 } |
1472 srcjar_deps = _srcjar_deps | 1476 srcjar_deps = _srcjar_deps |
1473 jar_path = _jar_path | 1477 jar_path = _jar_path |
1474 dex_path = _lib_dex_path | 1478 dex_path = _lib_dex_path |
1479 emma_never_instrument = _emma_never_instrument | |
1475 | 1480 |
1476 if (defined(invoker.deps)) { | 1481 if (defined(invoker.deps)) { |
1477 deps += invoker.deps | 1482 deps += invoker.deps |
1478 } | 1483 } |
1479 } | 1484 } |
1480 | 1485 |
1481 if (_dist_jar_path != "") { | 1486 if (_dist_jar_path != "") { |
1482 create_dist_target = "${_template_name}__create_dist_jar" | 1487 create_dist_target = "${_template_name}__create_dist_jar" |
1483 _final_deps += [ ":$create_dist_target" ] | 1488 _final_deps += [ ":$create_dist_target" ] |
1484 | 1489 |
(...skipping 61 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
1546 | 1551 |
1547 dex("$final_dex_target_name") { | 1552 dex("$final_dex_target_name") { |
1548 deps = _dex_deps + [ ":$build_config_target" ] | 1553 deps = _dex_deps + [ ":$build_config_target" ] |
1549 inputs = [ | 1554 inputs = [ |
1550 _build_config, | 1555 _build_config, |
1551 ] | 1556 ] |
1552 sources = _dex_sources | 1557 sources = _dex_sources |
1553 output = final_dex_path | 1558 output = final_dex_path |
1554 _dex_arg_key = "${_rebased_build_config}:final_dex:dependency_dex_files" | 1559 _dex_arg_key = "${_rebased_build_config}:final_dex:dependency_dex_files" |
1555 args = [ "--inputs=@FileArg($_dex_arg_key)" ] | 1560 args = [ "--inputs=@FileArg($_dex_arg_key)" ] |
1561 | |
1562 if (emma_coverage && !_emma_never_instrument) { | |
1563 no_locals = true | |
1564 sources += [ "$android_sdk_root/tools/lib/emma_device.jar" ] | |
1565 } | |
1556 } | 1566 } |
1557 | 1567 |
1558 if (_native_libs != []) { | 1568 if (_native_libs != []) { |
1559 _prepare_native_target_name = "${_template_name}__prepare_native" | 1569 _prepare_native_target_name = "${_template_name}__prepare_native" |
1560 action(_prepare_native_target_name) { | 1570 action(_prepare_native_target_name) { |
1561 forward_variables_from(invoker, | 1571 forward_variables_from(invoker, |
1562 [ | 1572 [ |
1563 "data_deps", | 1573 "data_deps", |
1564 "public_deps", | 1574 "public_deps", |
1565 ]) | 1575 ]) |
(...skipping 59 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
1625 "language_splits", | 1635 "language_splits", |
1626 "shared_resources", | 1636 "shared_resources", |
1627 ]) | 1637 ]) |
1628 apk_path = _final_apk_path | 1638 apk_path = _final_apk_path |
1629 android_manifest = _android_manifest | 1639 android_manifest = _android_manifest |
1630 assets_build_config = _build_config | 1640 assets_build_config = _build_config |
1631 resources_zip = _all_resources_zip_path | 1641 resources_zip = _all_resources_zip_path |
1632 dex_path = final_dex_path | 1642 dex_path = final_dex_path |
1633 load_library_from_apk = _load_library_from_apk | 1643 load_library_from_apk = _load_library_from_apk |
1634 create_density_splits = _create_density_splits | 1644 create_density_splits = _create_density_splits |
1645 emma_instrument = emma_coverage && !_emma_never_instrument | |
1635 | 1646 |
1636 if (!defined(extensions_to_not_compress)) { | 1647 if (!defined(extensions_to_not_compress)) { |
1637 # Allow icu data, v8 snapshots, and pak files to be loaded directly from | 1648 # Allow icu data, v8 snapshots, and pak files to be loaded directly from |
1638 # the .apk. | 1649 # the .apk. |
1639 # Note: These are actually suffix matches, not necessarily extensions. | 1650 # Note: These are actually suffix matches, not necessarily extensions. |
1640 extensions_to_not_compress = ".dat,.bin,.pak" | 1651 extensions_to_not_compress = ".dat,.bin,.pak" |
1641 } | 1652 } |
1642 | 1653 |
1643 version_code = _version_code | 1654 version_code = _version_code |
1644 version_name = _version_name | 1655 version_name = _version_name |
(...skipping 518 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
2163 } | 2174 } |
2164 | 2175 |
2165 android_library(target_name) { | 2176 android_library(target_name) { |
2166 java_files = [] | 2177 java_files = [] |
2167 srcjar_deps = [ ":${_template_name}__protoc_java" ] | 2178 srcjar_deps = [ ":${_template_name}__protoc_java" ] |
2168 deps = [ | 2179 deps = [ |
2169 "//third_party/android_protobuf:protobuf_nano_javalib", | 2180 "//third_party/android_protobuf:protobuf_nano_javalib", |
2170 ] | 2181 ] |
2171 } | 2182 } |
2172 } | 2183 } |
OLD | NEW |