summaryrefslogtreecommitdiffstats
path: root/chromium/chrome/android/BUILD.gn
diff options
context:
space:
mode:
Diffstat (limited to 'chromium/chrome/android/BUILD.gn')
-rw-r--r--chromium/chrome/android/BUILD.gn523
1 files changed, 285 insertions, 238 deletions
diff --git a/chromium/chrome/android/BUILD.gn b/chromium/chrome/android/BUILD.gn
index cb76914c7ca..f0c7c5c7f7e 100644
--- a/chromium/chrome/android/BUILD.gn
+++ b/chromium/chrome/android/BUILD.gn
@@ -8,6 +8,7 @@ import("//build/config/android/rules.gni")
import("//build/config/python.gni")
import("//build/util/process_version.gni")
import("//build/util/version.gni")
+import("//chrome/android/chrome_bundle_tmpl.gni")
import("//chrome/android/chrome_common_shared_library.gni")
import("//chrome/android/chrome_public_apk_tmpl.gni")
import("//chrome/android/features/dev_ui/dev_ui_module.gni")
@@ -27,6 +28,7 @@ import("//third_party/protobuf/proto_library.gni")
import("//tools/resources/generate_resource_whitelist.gni")
import("//tools/v8_context_snapshot/v8_context_snapshot.gni")
import("//ui/android/features.gni")
+import("//weblayer/variables.gni")
import("channel.gni")
import("java_sources.gni")
import("static_initializers.gni")
@@ -141,17 +143,6 @@ if (enable_feed_in_chrome) {
}
}
-if (notouch_build) {
- android_resources("chrome_touchless_java_resources") {
- resource_dirs = [ "//chrome/android/touchless/java/res" ]
- deps = [
- ":chrome_app_java_resources",
- "//chrome/android/touchless:touchless_strings_grd",
- ]
- custom_package = "org.chromium.chrome.touchless"
- }
-}
-
android_resources("chrome_download_java_resources") {
resource_dirs = [ "//chrome/android/java/res_download" ]
deps = [
@@ -251,7 +242,7 @@ java_cpp_template("vr_build_config") {
android_library("chrome_public_java") {
java_files = [ "//chrome/android/java/src/org/chromium/chrome/browser/compositor/CompositorViewResizer.java" ]
deps = [
- "//third_party/android_deps:com_android_support_support_annotations_java",
+ "//third_party/android_deps:androidx_annotation_annotation_java",
]
}
@@ -288,10 +279,10 @@ android_library("chrome_java") {
"//chrome/android/webapk/libs/runtime_library:webapk_service_aidl_java",
"//chrome/browser/android/thin_webview:factory_java",
"//chrome/browser/android/thin_webview:java",
+ "//chrome/browser/image_fetcher:java",
"//chrome/browser/ui/android/widget:java",
- "//chrome/lib/image_fetcher/public/android:java",
+ "//chrome/browser/util/android:java",
"//chrome/lib/lifecycle/public/android:java",
- "//chrome/lib/util/public/android:java",
"//components/autofill/android:autofill_java",
"//components/autofill_assistant/browser:proto_java",
"//components/background_task_scheduler:background_task_scheduler_java",
@@ -362,6 +353,7 @@ android_library("chrome_java") {
"//third_party/android_deps:android_arch_lifecycle_common_java8_java",
"//third_party/android_deps:android_arch_lifecycle_runtime_java",
"//third_party/android_deps:android_support_v7_appcompat_java",
+ "//third_party/android_deps:androidx_annotation_annotation_java",
"//third_party/android_deps:com_android_support_collections_java",
"//third_party/android_deps:com_android_support_coordinatorlayout_java",
"//third_party/android_deps:com_android_support_customview_java",
@@ -371,7 +363,6 @@ android_library("chrome_java") {
"//third_party/android_deps:com_android_support_mediarouter_v7_java",
"//third_party/android_deps:com_android_support_preference_v7_java",
"//third_party/android_deps:com_android_support_recyclerview_v7_java",
- "//third_party/android_deps:com_android_support_support_annotations_java",
"//third_party/android_deps:com_android_support_support_compat_java",
"//third_party/android_deps:com_android_support_support_v13_java",
"//third_party/android_deps:com_android_support_viewpager_java",
@@ -401,13 +392,13 @@ android_library("chrome_java") {
deps += feed_deps
srcjar_deps = [
- ":browser_build_config",
":chrome_android_java_enums_srcjar",
":chrome_android_java_switches_srcjar",
":chrome_android_java_google_api_keys_srcjar",
":chrome_locale_config",
":photo_picker_aidl",
":resource_id_javagen",
+ ":sync_user_settings_enums_java",
"//chrome:assist_ranker_prediction_enum_javagen",
"//chrome:content_setting_javagen",
"//chrome:content_settings_type_javagen",
@@ -421,9 +412,7 @@ android_library("chrome_java") {
"//chrome:payments_journey_logger_enum_javagen",
"//chrome:pref_enum_javagen",
"//chrome:quick_action_category_enum_javagen",
- "//chrome:signin_metrics_enum_javagen",
"//chrome/browser/notifications/scheduler/public:jni_enums",
- "//chrome/browser:sharing_device_capability_generated_enum",
"//chrome/browser:sharing_dialog_type_generated_enum",
"//chrome/browser:sharing_send_message_result_generated_enum",
"//chrome/browser/supervised_user/supervised_user_error_page:enums_srcjar",
@@ -432,7 +421,6 @@ android_library("chrome_java") {
"//components/browsing_data/core:browsing_data_utils_java",
"//components/browsing_data/core:clear_browsing_data_tab_java",
"//components/consent_auditor:consent_auditor_java",
- "//components/contextual_search/core:enums_java",
"//components/data_reduction_proxy/core/browser:data_reduction_proxy_savings_cleared_enum_java",
"//components/favicon_base:favicon_base_enums_java",
"//components/dom_distiller/core:distiller_type_java",
@@ -475,9 +463,6 @@ android_library("chrome_java") {
if (enable_feed_in_chrome) {
deps += [ ":chrome_feed_java_resources" ]
}
- if (notouch_build) {
- deps += [ ":chrome_touchless_java_resources" ]
- }
# Add the actual implementation where necessary so that downstream targets
# can provide their own implementations.
@@ -492,23 +477,6 @@ android_library("chrome_java") {
"//components/module_installer/android:module_interface_processor",
]
- proguard_configs = []
- if (async_ar) {
- proguard_configs += [ "//chrome/android/features/ar/proguard_async.flags" ]
- }
- if (async_vr) {
- proguard_configs += [
- "//chrome/android/features/vr/proguard_async.flags",
- "//chrome/android/features/vr/proguard_async_manual.flags",
- ]
- }
- if (async_tab_ui) {
- proguard_configs += [
- "//chrome/android/features/tab_ui/proguard_async.flags",
- "//chrome/android/features/tab_ui/proguard_async_manual.flags",
- ]
- }
-
processor_args_javac = [ "dagger.fastInit=enabled" ]
}
@@ -524,6 +492,8 @@ java_group("chrome_all_java") {
"//chrome/android/features/keyboard_accessory:internal_java",
"//chrome/android/features/media_router:java",
"//chrome/android/features/test_dummy/internal:base_module_java",
+ "//chrome/android/modules/extra_icu/provider:java",
+ "//chrome/browser/touch_to_fill/android/internal:java",
]
if (disable_autofill_assistant_dfm) {
@@ -548,8 +518,9 @@ group("jni_headers") {
"//chrome/android/features/keyboard_accessory:jni_headers",
"//chrome/android/features/media_router:jni_headers",
"//chrome/android/public/profiles:jni_headers",
- "//chrome/lib/image_fetcher/public/android:jni_headers",
- "//chrome/lib/util/public/android:jni_headers",
+ "//chrome/browser/image_fetcher:jni_headers",
+ "//chrome/browser/touch_to_fill/android:jni_headers",
+ "//chrome/browser/util/android:jni_headers",
]
}
@@ -576,7 +547,6 @@ java_cpp_enum("chrome_android_java_enums_srcjar") {
sources = [
"//chrome/browser/android/customtabs/detached_resource_request.h",
"//chrome/browser/android/digital_asset_links/digital_asset_links_handler.h",
- "//chrome/browser/android/download/download_open_source.h",
"//chrome/browser/android/explore_sites/explore_sites_bridge.h",
"//chrome/browser/android/explore_sites/explore_sites_feature.h",
"//chrome/browser/android/feedback/connectivity_checker.cc",
@@ -587,6 +557,7 @@ java_cpp_enum("chrome_android_java_enums_srcjar") {
"//chrome/browser/android/webapk/webapk_installer.h",
"//chrome/browser/android/webapk/webapk_types.h",
"//chrome/browser/banners/app_banner_settings_helper.h",
+ "//chrome/browser/download/android/download_open_source.h",
"//chrome/browser/notifications/notification_channels_provider_android.h",
"//chrome/browser/notifications/notification_handler.h",
"//chrome/browser/notifications/notification_platform_bridge_android.cc",
@@ -610,23 +581,17 @@ java_cpp_enum("chrome_vr_android_java_enums_srcjar") {
]
}
-java_cpp_strings("chrome_android_java_switches_srcjar") {
+java_cpp_enum("sync_user_settings_enums_java") {
sources = [
- "//chrome/common/chrome_switches.cc",
+ "//components/sync/driver/sync_user_settings.h",
]
- template = "//chrome/android/java_templates/ChromeSwitches.java.tmpl"
}
-java_cpp_template("browser_build_config") {
+java_cpp_strings("chrome_android_java_switches_srcjar") {
sources = [
- "//chrome/android/java_templates/BuildConfig.template",
+ "//chrome/common/chrome_switches.cc",
]
- package_path = "org/chromium/chrome/browser"
-
- defines = []
- if (!notouch_build) {
- defines += [ "_ENABLE_OFFLINE_PAGES" ]
- }
+ template = "//chrome/android/java_templates/ChromeSwitches.java.tmpl"
}
proto_java_library("partner_location_descriptor_proto_java") {
@@ -706,6 +671,8 @@ junit_binary("chrome_junit_tests") {
"//chrome/android/webapk/libs/client:client_java",
"//chrome/android/webapk/libs/common:common_java",
"//chrome/android/webapk/test:junit_test_support",
+ "//chrome/browser/image_fetcher:java",
+ "//chrome/browser/ui/android/widget:ui_widget_junit_tests",
"//chrome/test/android:chrome_java_test_support",
"//components/background_task_scheduler:background_task_scheduler_java",
"//components/bookmarks/common/android:bookmarks_java",
@@ -728,9 +695,9 @@ junit_binary("chrome_junit_tests") {
"//services/media_session/public/cpp/android:media_session_java",
"//third_party/android_deps:android_arch_lifecycle_common_java",
"//third_party/android_deps:android_support_v7_appcompat_java",
+ "//third_party/android_deps:androidx_annotation_annotation_java",
"//third_party/android_deps:com_android_support_mediarouter_v7_java",
"//third_party/android_deps:com_android_support_recyclerview_v7_java",
- "//third_party/android_deps:com_android_support_support_annotations_java",
"//third_party/android_sdk/androidx_browser:androidx_browser_java",
"//third_party/blink/public:blink_headers_java",
"//third_party/blink/public/mojom:android_mojo_bindings_java",
@@ -740,8 +707,9 @@ junit_binary("chrome_junit_tests") {
"//url/mojom:url_mojom_gurl_java",
]
- srcjar_deps =
- [ "//components/module_installer/android:module_installer_build_config" ]
+ data_deps = [
+ "//testing/buildbot/filters:chrome_junit_tests_filters",
+ ]
package_name = chrome_public_manifest_package
}
@@ -793,6 +761,7 @@ android_library("chrome_test_java") {
deps = [
":browser_java_test_support",
+ ":chrome_public_test_apk_resources",
":chrome_test_util_java",
":partner_location_descriptor_proto_java",
"$google_play_services_package:google_play_services_base_java",
@@ -817,7 +786,8 @@ android_library("chrome_test_java") {
"//chrome/android/webapk/libs/common:common_java",
"//chrome/browser/android/metrics:ukm_utils_java",
"//chrome/browser/ui/android/widget:java",
- "//chrome/lib/util/public/android:java",
+ "//chrome/browser/ui/android/widget:test_support_java",
+ "//chrome/browser/util/android:java",
"//chrome/test/android:chrome_java_test_support",
"//chrome/test/android/test_trusted_web_activity:test_trusted_web_activity_java",
"//components/autofill/android:autofill_java",
@@ -855,6 +825,7 @@ android_library("chrome_test_java") {
"//components/signin/core/browser/android:java",
"//components/signin/core/browser/android:signin_java_test_support",
"//components/signin/core/browser/android:signin_javatests",
+ "//components/signin/public/identity_manager/android:java",
"//components/sync:sync_java_test_support",
"//components/sync/android:sync_java",
"//components/sync/android:sync_javatests",
@@ -877,11 +848,11 @@ android_library("chrome_test_java") {
"//third_party/android_data_chart:android_data_chart_java",
"//third_party/android_deps:android_arch_lifecycle_common_java",
"//third_party/android_deps:android_support_v7_appcompat_java",
+ "//third_party/android_deps:androidx_annotation_annotation_java",
"//third_party/android_deps:com_android_support_collections_java",
"//third_party/android_deps:com_android_support_design_java",
"//third_party/android_deps:com_android_support_preference_v7_java",
"//third_party/android_deps:com_android_support_recyclerview_v7_java",
- "//third_party/android_deps:com_android_support_support_annotations_java",
"//third_party/android_deps:com_google_protobuf_protobuf_lite_java",
"//third_party/android_sdk:android_test_base_java",
"//third_party/android_sdk:android_test_mock_java",
@@ -914,6 +885,7 @@ android_library("chrome_test_java") {
data = [
"//chrome/test/data/android/",
"//chrome/test/data/autofill/",
+ "//chrome/test/data/background_sync/",
"//chrome/test/data/banners/",
"//chrome/test/data/browsing_data/",
"//chrome/test/data/encoding_tests/auto_detect/Big5_with_no_encoding_specified.html",
@@ -970,16 +942,16 @@ if (enable_vr || enable_arcore) {
"//chrome/android:app_hooks_java",
"//chrome/android:chrome_java",
"//chrome/android/features/vr:java",
+ "//chrome/browser/util/android:java",
"//chrome/test/android:chrome_java_test_support",
- "//chrome/lib/util/public/android:java",
"//components/policy/android:policy_java",
"//content/public/android:content_java",
"//content/public/test/android:content_java_test_support",
"//net/android:net_java_test_support",
"//third_party/android_deps:android_arch_lifecycle_common_java",
"//third_party/android_deps:android_support_v7_appcompat_java",
+ "//third_party/android_deps:androidx_annotation_annotation_java",
"//third_party/android_deps:com_android_support_recyclerview_v7_java",
- "//third_party/android_deps:com_android_support_support_annotations_java",
"//third_party/android_support_test_runner:rules_java",
"//third_party/android_support_test_runner:runner_java",
"//third_party/android_sdk/androidx_browser:androidx_browser_java",
@@ -1064,15 +1036,13 @@ if (enable_vr || enable_arcore) {
"javatests/src/org/chromium/chrome/browser/vr/rules/VrModuleNotInstalled.java",
]
- deps =
- chrome_test_xr_java_deps + [
- "//chrome/android:chrome_test_xr_java",
- "//third_party/gvr-android-sdk:controller_test_api_java",
- "//third_party/gvr-android-sdk:gvr_common_java",
- ":chrome_test_util_java",
- "//components/module_installer/android:module_installer_java",
- "//components/module_installer/android:module_installer_test_java",
- ]
+ deps = chrome_test_xr_java_deps + [
+ "//chrome/android:chrome_test_xr_java",
+ "//third_party/gvr-android-sdk:controller_test_api_java",
+ "//third_party/gvr-android-sdk:gvr_common_java",
+ ":chrome_test_util_java",
+ "//components/module_installer/android:module_installer_java",
+ ]
data = [
"//chrome/android/shared_preference_files/test/",
@@ -1105,6 +1075,14 @@ if (enable_vr || enable_arcore) {
}
}
+android_resources("chrome_public_test_apk_resources") {
+ resource_dirs = [ "javatests/res" ]
+ deps = [
+ ":chrome_app_java_resources",
+ ]
+ custom_package = "org.chromium.chrome.test"
+}
+
# Overrides icon / name defined in chrome_app_java_resources.
android_resources("chrome_public_apk_resources") {
resource_dirs = [ "java/res_chromium" ]
@@ -1170,7 +1148,6 @@ jinja_template_resources("chrome_test_apk_template_resources") {
"java/res_template/xml/file_paths.xml",
"java/res_template/xml/launchershortcuts.xml",
"java/res_template/xml/searchable.xml",
- "java/res_template/xml/syncadapter.xml",
]
res_dir = "java/res_template"
@@ -1196,7 +1173,6 @@ chrome_common_shared_library("libchrome") {
deps += [ "//chrome/browser/android/vr:module_factory" ]
}
- allow_partitions = true
module_descs = chrome_modern_module_descs
}
@@ -1212,6 +1188,7 @@ chrome_common_shared_library("libchromefortest") {
"//base/test:test_support",
"//chrome:chrome_android_core",
"//chrome/browser/android/metrics:ukm_utils_for_test",
+ "//chrome/browser/subresource_filter:test_support",
"//components/autofill_assistant/browser:test_support",
"//components/crash/android:crash_android",
"//components/heap_profiling:test_support",
@@ -1224,6 +1201,10 @@ chrome_common_shared_library("libchromefortest") {
if (enable_vr) {
deps += [ "//chrome/browser/android/vr:test_support" ]
}
+
+ # TODO(http://crbug.com/1008123): Include module native code by enumerating
+ # module descriptors.
+ deps += [ "//chrome/android/modules/test_dummy/internal:native" ]
}
# Ensure that .pak files are built only once (build them in the default
@@ -1376,11 +1357,17 @@ if (current_toolchain == default_toolchain) {
additional_extra_paks +=
[ "$root_gen_dir/android_webview/aw_resources.pak" ]
deps += [ "//android_webview:generate_aw_resources" ]
+
+ if (webview_includes_weblayer) {
+ additional_extra_paks +=
+ [ "$root_gen_dir/weblayer/weblayer_resources.pak" ]
+ deps += [ "//weblayer:resources" ]
+ }
}
if (!dfmify_dev_ui) {
additional_extra_paks +=
- [ "$root_gen_dir/chrome/bluetooth_internals_resources.pak" ]
- deps += [ "//chrome/browser/resources/bluetooth_internals:resources" ]
+ [ "$root_gen_dir/chrome/dev_ui_page_resources.pak" ]
+ deps += [ "//chrome/browser/resources:dev_ui_paks" ]
}
if (enable_resource_whitelist_generation) {
@@ -1425,6 +1412,9 @@ if (current_toolchain == default_toolchain) {
]
if (_is_monochrome) {
deps += [ "//android_webview:locale_pak_assets" ]
+ if (webview_includes_weblayer) {
+ deps += [ "//weblayer:locale_pak_assets" ]
+ }
}
}
}
@@ -1452,15 +1442,20 @@ template("libmonochrome_apk_or_bundle_tmpl") {
]
deps = [
"//android_webview:common",
+ "//components/about_ui:about_ui_android",
"//components/crash/android:crashpad_main",
]
+ if (webview_includes_weblayer) {
+ defines = [ "WEBVIEW_INCLUDES_WEBLAYER" ]
+ deps += [ "//weblayer:weblayer_lib" ]
+ }
+
if (enable_vr) {
deps += [ "//chrome/browser/android/vr:module_factory" ]
}
is_monochrome = true
- allow_partitions = true
module_descs = monochrome_module_descs
}
}
@@ -1511,6 +1506,7 @@ java_group("chrome_public_base_module_java_for_test") {
":chrome_public_base_module_java",
"//chrome/android/features/autofill_assistant:autofill_assistant_java_test_support",
"//chrome/browser/android/metrics:ukm_utils_java",
+ "//chrome/browser/subresource_filter:subresource_filter_java_test_support",
"//components/heap_profiling:heap_profiling_java_test_support",
"//components/minidump_uploader:minidump_uploader_java",
"//content/public/test/android:content_java_test_support",
@@ -1527,10 +1523,12 @@ _chrome_public_shared_deps = [
]
generate_jni("test_support_jni_headers") {
+ testonly = true
sources = [
"javatests/src/org/chromium/chrome/browser/ServicificationBackgroundService.java",
"javatests/src/org/chromium/chrome/browser/offlinepages/OfflineTestUtil.java",
"javatests/src/org/chromium/chrome/browser/offlinepages/prefetch/PrefetchTestBridge.java",
+ "javatests/src/org/chromium/chrome/browser/prerender/PrerenderTestHelper.java",
"javatests/src/org/chromium/chrome/browser/test/MockCertVerifierRuleAndroid.java",
]
}
@@ -1541,6 +1539,7 @@ android_library("browser_java_test_support") {
java_files = [
"javatests/src/org/chromium/chrome/browser/offlinepages/prefetch/PrefetchTestBridge.java",
"javatests/src/org/chromium/chrome/browser/offlinepages/OfflineTestUtil.java",
+ "javatests/src/org/chromium/chrome/browser/prerender/PrerenderTestHelper.java",
"javatests/src/org/chromium/chrome/browser/sync/FakeServerHelper.java",
"javatests/src/org/chromium/chrome/browser/test/MockCertVerifierRuleAndroid.java",
"javatests/src/org/chromium/chrome/browser/ServicificationBackgroundService.java",
@@ -1568,6 +1567,7 @@ static_library("browser_test_support") {
"../browser/android/ssl/mock_cert_verifier_rule_android.h",
"../browser/offline_pages/android/offline_test_util_jni.cc",
"../browser/offline_pages/android/prefetch_test_bridge.cc",
+ "../browser/prerender/prerender_test_helper.cc",
]
deps = [
":test_support_jni_headers",
@@ -1697,7 +1697,8 @@ template("monochrome_public_apk_or_module_tmpl") {
# of manually-instantiated manifests.
jinja_template("${target_name}__android_manifest") {
includes = [ "java/AndroidManifest.xml" ]
- variables = chrome_public_jinja_variables
+ variables =
+ chrome_public_jinja_variables + [ "include_arcore_manifest_flag=true" ]
if (_is_trichrome) {
input = "java/AndroidManifest_trichrome_chrome.xml"
variables += trichrome_jinja_variables
@@ -1711,7 +1712,6 @@ template("monochrome_public_apk_or_module_tmpl") {
variables += monochrome_android_manifest_jinja_variables + [
"target_sdk_version=$android_sdk_version",
"webview_library=libmonochrome${_arch}.so",
- "include_arcore_manifest_flag=true",
]
}
@@ -1765,14 +1765,16 @@ template("monochrome_public_apk_or_module_tmpl") {
}
}
-monochrome_public_apk_or_module_tmpl("monochrome_public_apk") {
- version_code = monochrome_version_code
- version_name = chrome_version_name
- apk_name = "MonochromePublic"
- target_type = "android_apk"
-}
-
+# Public webview targets don't work with non-public sdks.
+# https://crbug.com/1000763
if (public_android_sdk) {
+ monochrome_public_apk_or_module_tmpl("monochrome_public_apk") {
+ version_code = monochrome_version_code
+ version_name = chrome_version_name
+ apk_name = "MonochromePublic"
+ target_type = "android_apk"
+ }
+
trichrome_library_apk_tmpl("trichrome_library_apk") {
apk_name = "TrichromeLibrary"
android_manifest = trichrome_library_android_manifest
@@ -1998,11 +2000,17 @@ chrome_test_apk_tmpl("chrome_public_test_apk") {
"//chrome/android/webapk/libs/runtime_library:runtime_library_javatests",
"//chrome/android/webapk/shell_apk:shell_apk_javatests",
"//chrome/browser/profiling_host:profiling_host_javatests",
+ "//chrome/browser/subresource_filter:subresource_filter_javatests",
+ "//chrome/browser/touch_to_fill/android:test_java",
+ "//chrome/browser/ui/android/widget:ui_widget_java_tests",
]
+
+ data_deps = [
+ "//testing/buildbot/filters:chrome_public_test_apk_filters",
+ ]
+
if (enable_chrome_android_internal) {
- data_deps = [
- "//clank/build/bot/filters:chrome_public_test_apk_filters",
- ]
+ data_deps += [ "//clank/build/bot/filters:chrome_public_test_apk_filters" ]
}
additional_apks = [
"//chrome/android/webapk/libs/runtime_library/javatests/apk_with_webapk_service:apk_with_webapk_service",
@@ -2095,7 +2103,7 @@ android_test_apk("chrome_smoke_test_apk") {
apk_name = "ChromeSmokeTest"
android_manifest =
"javatests/src/org/chromium/chrome/test/smoke/AndroidManifest.xml"
- target_sdk_version = 28
+ target_sdk_version = android_sdk_version
testonly = true
java_files =
[ "javatests/src/org/chromium/chrome/test/smoke/ChromeSmokeTest.java" ]
@@ -2110,16 +2118,33 @@ android_test_apk("chrome_smoke_test_apk") {
}
instrumentation_test_runner("chrome_public_smoke_test") {
- apk_under_test = "//chrome/android:chrome_public_apk"
+ apk_under_test = ":chrome_public_apk"
+ android_test_apk = ":chrome_smoke_test_apk"
+ android_test_apk_name = "ChromeSmokeTest"
+}
+
+instrumentation_test_runner("chrome_modern_public_smoke_test") {
+ apk_under_test = ":chrome_modern_public_apk"
android_test_apk = ":chrome_smoke_test_apk"
android_test_apk_name = "ChromeSmokeTest"
}
+# Public webview targets don't work with non-public sdks.
+# https://crbug.com/1000763
+if (public_android_sdk) {
+ instrumentation_test_runner("monochrome_public_smoke_test") {
+ apk_under_test = ":monochrome_public_apk"
+ android_test_apk = ":chrome_smoke_test_apk"
+ android_test_apk_name = "ChromeSmokeTest"
+ never_incremental = true
+ }
+}
+
android_test_apk("chrome_bundle_smoke_test_apk") {
apk_name = "ChromeBundleSmokeTest"
android_manifest =
"javatests/src/org/chromium/chrome/test/smoke/AndroidManifest_bundle.xml"
- target_sdk_version = 28
+ target_sdk_version = android_sdk_version
testonly = true
java_files = [
"javatests/src/org/chromium/chrome/test/smoke/ChromeBundleSmokeTest.java",
@@ -2134,75 +2159,113 @@ android_test_apk("chrome_bundle_smoke_test_apk") {
]
}
-instrumentation_test_runner("monochrome_public_bundle_smoke_test") {
- apk_under_test = "//chrome/android:monochrome_public_bundle_apks"
+_bundle_smoke_test_extra_args = [
+ # Make extra args be passed through to the bundle under test (see below).
+ "--use-apk-under-test-flags-file",
+
+ # Chrome crashes at startup if strict mode is turned on.
+ "--strict-mode=off",
+
+ # These args are passed through to the bundle under test.
+ "--enable-test-dummy-module",
+ "--disable-fre",
+]
+
+instrumentation_test_runner("chrome_modern_public_bundle_smoke_test") {
+ apk_under_test = ":chrome_modern_public_bundle_apks"
android_test_apk = ":chrome_bundle_smoke_test_apk"
android_test_apk_name = "ChromeBundleSmokeTest"
never_incremental = true
modules = [ "test_dummy" ]
- command_line_args = [
- "--enable-test-dummy-module",
- "--no-fre",
- ]
+ extra_args = _bundle_smoke_test_extra_args
}
-if (defined(expected_static_initializer_count)) {
- action_with_pydeps("monochrome_static_initializers") {
- script = "//build/android/gyp/assert_static_initializers.py"
- inputs = [
- "$root_build_dir/apks/MonochromePublic.apk",
- ]
- outputs = [
- "$target_gen_dir/$target_name.stamp",
- ]
- deps = [
- ":monochrome_public_apk",
- ]
- args = [
- "--expected-count=$expected_static_initializer_count",
- "--tool-prefix",
- rebase_path(android_tool_prefix, root_build_dir),
- "--touch",
- rebase_path(outputs[0], root_build_dir),
- rebase_path(inputs[0], root_build_dir),
- ]
- }
+_bundle_fake_modules_smoke_test_extra_args = [
+ # These are in addition to the ones listed in _bundle_smoke_test_extra_args.
+ "--fake-feature-module-install",
+]
+
+instrumentation_test_runner(
+ "chrome_modern_public_bundle_fake_modules_smoke_test") {
+ apk_under_test = ":chrome_modern_public_bundle_apks"
+ android_test_apk = ":chrome_bundle_smoke_test_apk"
+ android_test_apk_name = "ChromeBundleSmokeTest"
+ never_incremental = true
+ fake_modules = [ "test_dummy" ]
+ extra_args =
+ _bundle_smoke_test_extra_args + _bundle_fake_modules_smoke_test_extra_args
}
-# Feature modules that go into Chrome Modern application bundles.
-# Note that Mono- and Trichrome feature modules are instantiated in the
-# Mono- and Trichrome bundle target template.
-_chrome_modern_extra_modules = []
-foreach(_module_desc, chrome_modern_module_descs) {
- chrome_feature_module(
- "chrome_modern_public_bundle_${_module_desc.name}_bundle_module") {
- manifest_package = chrome_public_manifest_package
- base_module_target = ":chrome_modern_public_base_bundle_module"
- uncompress_shared_libraries = chromium_linker_supported
- is_monochrome_or_trichrome = false
- is_64_bit_browser = android_64bit_target_cpu
- include_32_bit_webview = false
- version_code = chrome_modern_version_code
- version_name = chrome_version_name
- module_desc = _module_desc
- min_sdk_version = 21
+# Public webview targets don't work with non-public sdks.
+# https://crbug.com/1000763
+if (public_android_sdk) {
+ instrumentation_test_runner("monochrome_public_bundle_smoke_test") {
+ apk_under_test = "//chrome/android:monochrome_public_bundle_apks"
+ android_test_apk = ":chrome_bundle_smoke_test_apk"
+ android_test_apk_name = "ChromeBundleSmokeTest"
+ never_incremental = true
+ modules = [ "test_dummy" ]
+ extra_args = _bundle_smoke_test_extra_args
+ }
+
+ instrumentation_test_runner(
+ "monochrome_public_bundle_fake_modules_smoke_test") {
+ apk_under_test = "//chrome/android:monochrome_public_bundle_apks"
+ android_test_apk = ":chrome_bundle_smoke_test_apk"
+ android_test_apk_name = "ChromeBundleSmokeTest"
+ never_incremental = true
+ fake_modules = [ "test_dummy" ]
+ extra_args = _bundle_smoke_test_extra_args +
+ _bundle_fake_modules_smoke_test_extra_args
+ }
+
+ if (defined(expected_static_initializer_count)) {
+ action_with_pydeps("monochrome_static_initializers") {
+ script = "//build/android/gyp/assert_static_initializers.py"
+ inputs = [
+ "$root_build_dir/apks/MonochromePublic.apk",
+ ]
+ outputs = [
+ "$target_gen_dir/$target_name.stamp",
+ ]
+ deps = [
+ ":monochrome_public_apk",
+ ]
+ args = [
+ "--expected-count=$expected_static_initializer_count",
+ "--tool-prefix",
+ rebase_path(android_tool_prefix, root_build_dir),
+ "--touch",
+ rebase_path(outputs[0], root_build_dir),
+ rebase_path(inputs[0], root_build_dir),
+ ]
+ }
}
- _module_desc.module_target =
- ":chrome_modern_public_bundle_${_module_desc.name}_bundle_module"
- _chrome_modern_extra_modules += [ _module_desc ]
}
-android_app_bundle("chrome_modern_public_bundle") {
- bundle_name = "ChromeModernPublic"
+group("chrome_public_wpt") {
+ testonly = true
+ data_deps = [
+ ":chrome_public_apk",
+ "//build/android:test_runner_py",
+ ]
+ set_sources_assignment_filter([ "#*" ])
+ sources = read_file("//testing/scripts/run_android_wpt.pydeps", "list lines")
+ data = sources
+ data += [ "//third_party/blink/web_tests/external/" ]
+}
+
+chrome_bundle("chrome_modern_public_bundle") {
base_module_target = ":chrome_modern_public_base_bundle_module"
- command_line_flags_file = "chrome-command-line"
- if (!is_java_debug) {
- proguard_enabled = true
- }
- enable_language_splits = true
+ bundle_name = "ChromeModernPublic"
compress_shared_libraries = true
+ include_32_bit_webview = false
+ is_64_bit_browser = android_64bit_target_cpu
+ is_monochrome_or_trichrome = false
+ manifest_package = chrome_public_manifest_package
min_sdk_version = 21
- extra_modules = _chrome_modern_extra_modules
+ module_descs = chrome_modern_module_descs
+ version_code = chrome_modern_version_code
}
if (is_official_build) {
@@ -2257,7 +2320,6 @@ template("monochrome_or_trichrome_public_bundle_tmpl") {
_version_code = monochrome_version_code
}
}
- _version_name = chrome_version_name
monochrome_public_apk_or_module_tmpl(_base_module_target_name) {
forward_variables_from(invoker,
@@ -2270,7 +2332,6 @@ template("monochrome_or_trichrome_public_bundle_tmpl") {
target_type = "android_app_bundle_module"
is_base_module = true
version_code = _version_code
- version_name = _version_name
if (defined(invoker.verify_android_configuration) &&
invoker.verify_android_configuration) {
@@ -2283,116 +2344,104 @@ template("monochrome_or_trichrome_public_bundle_tmpl") {
}
}
- _extra_modules = []
- foreach(_module_desc, _module_descs) {
- chrome_feature_module("${target_name}_${_module_desc.name}_bundle_module") {
- manifest_package = chrome_public_manifest_package
- base_module_target = ":$_base_module_target_name"
- uncompress_shared_libraries = true
- is_monochrome_or_trichrome = true
- is_64_bit_browser =
- defined(invoker.is_64_bit_browser) && invoker.is_64_bit_browser
- include_32_bit_webview = defined(invoker.include_32_bit_webview) &&
- invoker.include_32_bit_webview
- version_code = _version_code
- version_name = _version_name
- module_desc = _module_desc
- min_sdk_version = _min_sdk_version
- }
- _module_desc.module_target =
- ":${target_name}_${_module_desc.name}_bundle_module"
- _extra_modules += [ _module_desc ]
- }
-
- android_app_bundle(target_name) {
- bundle_name = _bundle_name
+ chrome_bundle(target_name) {
base_module_target = ":$_base_module_target_name"
- command_line_flags_file = "chrome-command-line"
- system_image_locale_whitelist = locales - android_chrome_omitted_locales
+ bundle_name = _bundle_name
+ include_32_bit_webview = defined(invoker.include_32_bit_webview) &&
+ invoker.include_32_bit_webview
+ is_64_bit_browser =
+ defined(invoker.is_64_bit_browser) && invoker.is_64_bit_browser
+ is_monochrome_or_trichrome = true
+ manifest_package = chrome_public_manifest_package
+ min_sdk_version = _min_sdk_version
+ module_descs = _module_descs
+ version_code = _version_code
if (!is_java_debug) {
- proguard_enabled = true
proguard_android_sdk_dep = webview_framework_dep
if (defined(invoker.verify_android_configuration) &&
invoker.verify_android_configuration) {
verify_proguard_flags = true
}
}
- enable_language_splits = true
- min_sdk_version = _min_sdk_version
if (trichrome_synchronized_proguard && _is_trichrome) {
static_library_provider = ":trichrome_library_for_bundle_apk"
}
-
- extra_modules = _extra_modules
}
}
-monochrome_or_trichrome_public_bundle_tmpl("monochrome_public_bundle") {
- bundle_suffix = ""
-
- # Having //clank present causes different flags because of how play services
- # is wired up.
- # The channel is required because manifest entries vary based on channel.
- if (!enable_chrome_android_internal && android_channel == "stable") {
- verify_android_configuration = true
+# Public webview targets don't work with non-public sdks.
+# https://crbug.com/1000763
+if (public_android_sdk) {
+ monochrome_or_trichrome_public_bundle_tmpl("monochrome_public_bundle") {
+ bundle_suffix = ""
+
+ # Having //clank present causes different flags because of how play services
+ # is wired up.
+ # The channel is required because manifest entries vary based on channel.
+ if (!enable_chrome_android_internal && android_channel == "stable") {
+ verify_android_configuration = true
+ }
}
-}
-if (is_official_build) {
- # Used for binary size monitoring.
- create_app_bundle_minimal_apks("monochrome_public_minimal_apks") {
- deps = [
- ":monochrome_public_bundle",
- ]
- bundle_path = "$root_build_dir/apks/MonochromePublic.aab"
- }
- android_resource_sizes_test("resource_sizes_monochrome_public_minimal_apks") {
- file_path = "$root_build_dir/apks/MonochromePublic.minimal.apks"
- data_deps = [
- ":monochrome_public_minimal_apks",
- ]
+ if (is_official_build) {
+ # Used for binary size monitoring.
+ create_app_bundle_minimal_apks("monochrome_public_minimal_apks") {
+ deps = [
+ ":monochrome_public_bundle",
+ ]
+ bundle_path = "$root_build_dir/apks/MonochromePublic.aab"
+ }
+ android_resource_sizes_test(
+ "resource_sizes_monochrome_public_minimal_apks") {
+ file_path = "$root_build_dir/apks/MonochromePublic.minimal.apks"
+ data_deps = [
+ ":monochrome_public_minimal_apks",
+ ]
+ }
}
-}
-monochrome_or_trichrome_public_bundle_tmpl("trichrome_chrome_bundle") {
- bundle_suffix = ""
- use_trichrome_library = true
-}
+ monochrome_or_trichrome_public_bundle_tmpl("trichrome_chrome_bundle") {
+ bundle_suffix = ""
+ use_trichrome_library = true
+ }
-if (android_64bit_target_cpu) {
- monochrome_or_trichrome_public_bundle_tmpl("monochrome_64_public_bundle") {
- bundle_suffix = "64"
- is_64_bit_browser = true
- if (build_apk_secondary_abi) {
- include_32_bit_webview = false
+ if (android_64bit_target_cpu) {
+ monochrome_or_trichrome_public_bundle_tmpl("monochrome_64_public_bundle") {
+ bundle_suffix = "64"
+ is_64_bit_browser = true
+ if (build_apk_secondary_abi) {
+ include_32_bit_webview = false
+ }
}
- }
- monochrome_or_trichrome_public_bundle_tmpl("monochrome_64_32_public_bundle") {
- bundle_suffix = "6432"
- is_64_bit_browser = true
- if (build_apk_secondary_abi) {
- include_32_bit_webview = true
+ monochrome_or_trichrome_public_bundle_tmpl(
+ "monochrome_64_32_public_bundle") {
+ bundle_suffix = "6432"
+ is_64_bit_browser = true
+ if (build_apk_secondary_abi) {
+ include_32_bit_webview = true
+ }
}
- }
- monochrome_or_trichrome_public_bundle_tmpl("trichrome_chrome_64_bundle") {
- bundle_suffix = "64"
- is_64_bit_browser = true
- use_trichrome_library = true
- if (build_apk_secondary_abi) {
- include_32_bit_webview = false
+ monochrome_or_trichrome_public_bundle_tmpl("trichrome_chrome_64_bundle") {
+ bundle_suffix = "64"
+ is_64_bit_browser = true
+ use_trichrome_library = true
+ if (build_apk_secondary_abi) {
+ include_32_bit_webview = false
+ }
}
- }
- monochrome_or_trichrome_public_bundle_tmpl("trichrome_chrome_64_32_bundle") {
- bundle_suffix = "6432"
- is_64_bit_browser = true
- use_trichrome_library = true
- if (build_apk_secondary_abi) {
- include_32_bit_webview = true
+ monochrome_or_trichrome_public_bundle_tmpl(
+ "trichrome_chrome_64_32_bundle") {
+ bundle_suffix = "6432"
+ is_64_bit_browser = true
+ use_trichrome_library = true
+ if (build_apk_secondary_abi) {
+ include_32_bit_webview = true
+ }
}
}
}
@@ -2404,7 +2453,6 @@ generate_jni("chrome_jni_headers") {
"java/src/org/chromium/chrome/browser/AfterStartupTaskUtils.java",
"java/src/org/chromium/chrome/browser/AppHooks.java",
"java/src/org/chromium/chrome/browser/ApplicationLifetime.java",
- "java/src/org/chromium/chrome/browser/BackgroundSyncLauncher.java",
"java/src/org/chromium/chrome/browser/ChromeBackupAgent.java",
"java/src/org/chromium/chrome/browser/ChromeBackupWatcher.java",
"java/src/org/chromium/chrome/browser/ChromeFeatureList.java",
@@ -2431,6 +2479,7 @@ generate_jni("chrome_jni_headers") {
"java/src/org/chromium/chrome/browser/background_sync/BackgroundSyncBackgroundTask.java",
"java/src/org/chromium/chrome/browser/background_sync/BackgroundSyncBackgroundTaskScheduler.java",
"java/src/org/chromium/chrome/browser/background_sync/BackgroundSyncPwaDetector.java",
+ "java/src/org/chromium/chrome/browser/background_sync/GooglePlayServicesChecker.java",
"java/src/org/chromium/chrome/browser/background_sync/PeriodicBackgroundSyncChromeWakeUpTask.java",
"java/src/org/chromium/chrome/browser/background_task_scheduler/ChromeBackgroundTaskFactory.java",
"java/src/org/chromium/chrome/browser/banners/AppBannerManager.java",
@@ -2446,7 +2495,6 @@ generate_jni("chrome_jni_headers") {
"java/src/org/chromium/chrome/browser/complex_tasks/endpoint_fetcher/EndpointFetcher.java",
"java/src/org/chromium/chrome/browser/complex_tasks/endpoint_fetcher/EndpointResponse.java",
"java/src/org/chromium/chrome/browser/component_updater/UpdateScheduler.java",
- "java/src/org/chromium/chrome/browser/component_updater/VrAssetsComponentInstaller.java",
"java/src/org/chromium/chrome/browser/compositor/CompositorView.java",
"java/src/org/chromium/chrome/browser/compositor/LayerTitleCache.java",
"java/src/org/chromium/chrome/browser/compositor/bottombar/OverlayPanelContent.java",
@@ -2466,7 +2514,6 @@ generate_jni("chrome_jni_headers") {
"java/src/org/chromium/chrome/browser/contextmenu/ContextMenuParams.java",
"java/src/org/chromium/chrome/browser/contextualsearch/ContextualSearchContext.java",
"java/src/org/chromium/chrome/browser/contextualsearch/ContextualSearchManager.java",
- "java/src/org/chromium/chrome/browser/contextualsearch/ContextualSearchPreferenceHelper.java",
"java/src/org/chromium/chrome/browser/contextualsearch/ContextualSearchRankerLoggerImpl.java",
"java/src/org/chromium/chrome/browser/contextualsearch/ContextualSearchTabHelper.java",
"java/src/org/chromium/chrome/browser/contextualsearch/CtrSuppression.java",
@@ -2474,7 +2521,6 @@ generate_jni("chrome_jni_headers") {
"java/src/org/chromium/chrome/browser/crash/MinidumpUploadService.java",
"java/src/org/chromium/chrome/browser/crash/PureJavaExceptionHandler.java",
"java/src/org/chromium/chrome/browser/customtabs/CustomTabsConnection.java",
- "java/src/org/chromium/chrome/browser/customtabs/dynamicmodule/ModuleMetrics.java",
"java/src/org/chromium/chrome/browser/database/SQLiteCursor.java",
"java/src/org/chromium/chrome/browser/device_dialog/BluetoothChooserDialog.java",
"java/src/org/chromium/chrome/browser/device_dialog/BluetoothScanningPermissionDialog.java",
@@ -2546,7 +2592,6 @@ generate_jni("chrome_jni_headers") {
"java/src/org/chromium/chrome/browser/infobar/UpdatePasswordInfoBar.java",
"java/src/org/chromium/chrome/browser/init/NativeStartupBridge.java",
"java/src/org/chromium/chrome/browser/instantapps/InstantAppsSettings.java",
- "java/src/org/chromium/chrome/browser/invalidation/InvalidationServiceFactory.java",
"java/src/org/chromium/chrome/browser/jsdialog/JavascriptAppModalDialog.java",
"java/src/org/chromium/chrome/browser/jsdialog/JavascriptTabModalDialog.java",
"java/src/org/chromium/chrome/browser/locale/LocaleManager.java",
@@ -2663,7 +2708,7 @@ generate_jni("chrome_jni_headers") {
"java/src/org/chromium/chrome/browser/snackbar/smartlockautosignin/AutoSigninSnackbarController.java",
"java/src/org/chromium/chrome/browser/ssl/CaptivePortalHelper.java",
"java/src/org/chromium/chrome/browser/ssl/SecurityStateModel.java",
- "java/src/org/chromium/chrome/browser/subresource_filter/TestSubresourceFilterPublisher.java",
+ "java/src/org/chromium/chrome/browser/status_indicator/StatusIndicatorSceneLayer.java",
"java/src/org/chromium/chrome/browser/suggestions/SuggestionsEventReporterBridge.java",
"java/src/org/chromium/chrome/browser/suggestions/mostvisited/MostVisitedSites.java",
"java/src/org/chromium/chrome/browser/suggestions/mostvisited/MostVisitedSitesBridge.java",
@@ -2681,10 +2726,7 @@ generate_jni("chrome_jni_headers") {
"java/src/org/chromium/chrome/browser/translate/TranslateBridge.java",
"java/src/org/chromium/chrome/browser/usage_stats/NotificationSuspender.java",
"java/src/org/chromium/chrome/browser/usage_stats/UsageStatsBridge.java",
- "java/src/org/chromium/chrome/browser/util/ChromeContextUtil.java",
"java/src/org/chromium/chrome/browser/util/FeatureUtilities.java",
- "java/src/org/chromium/chrome/browser/util/PlatformUtil.java",
- "java/src/org/chromium/chrome/browser/webapps/AddToHomescreenManager.java",
"java/src/org/chromium/chrome/browser/webapps/WebApkHandlerDelegate.java",
"java/src/org/chromium/chrome/browser/webapps/WebApkInstallService.java",
"java/src/org/chromium/chrome/browser/webapps/WebApkInstaller.java",
@@ -2693,6 +2735,7 @@ generate_jni("chrome_jni_headers") {
"java/src/org/chromium/chrome/browser/webapps/WebApkUpdateDataFetcher.java",
"java/src/org/chromium/chrome/browser/webapps/WebApkUpdateManager.java",
"java/src/org/chromium/chrome/browser/webapps/WebappRegistry.java",
+ "java/src/org/chromium/chrome/browser/webapps/addtohomescreen/AddToHomescreenManager.java",
"java/src/org/chromium/chrome/browser/widget/ThumbnailGenerator.java",
]
@@ -2713,4 +2756,8 @@ generate_jni("chrome_jni_headers") {
"feed/core/java/src/org/chromium/chrome/browser/feed/FeedSchedulerBridge.java",
]
}
+
+ if (enable_vr) {
+ sources += [ "java/src/org/chromium/chrome/browser/component_updater/VrAssetsComponentInstaller.java" ]
+ }
}