Skip to content

Commit

Permalink
Android: Depend on build_java explicitly
Browse files Browse the repository at this point in the history
This CL moves build_java from being a public_dep of base_java to a
regular dep. This means other targets that need to depend on build_java
must do so explicitly. Since build_java and base_java are not closely
related, this de-coupling (and when jni annotations are similarly moved)
will reduce the number of targets that depend on base_java only for its
annotations, thus speeding up builds when making changes to base_java.

By using dep_operations.py, this CL avoided adding build_java to 224+
targets that already depended on base_java across 194 files. There are
more opportunities to remove unnecessary dependencies on build_java, but
that is left for future CLs in order to prioritize removing build_java
from base_java's public_deps.

Initial estimate (after jni_java is similarly moved out of public_deps)
is that we can remove more than 265+ dependencies on base_java across
~153 files.

Bug: 1038372
Change-Id: Ia5acc70af449f10363bd7e123473e0823ce31bb1
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/3606468
Reviewed-by: Mohamed Heikal <mheikal@chromium.org>
Commit-Queue: Peter Wen <wnwen@chromium.org>
Owners-Override: Peter Wen <wnwen@chromium.org>
Cr-Commit-Position: refs/heads/main@{#996885}
  • Loading branch information
Peter Wen authored and Chromium LUCI CQ committed Apr 27, 2022
1 parent 70f03fa commit 494cdd4
Show file tree
Hide file tree
Showing 253 changed files with 456 additions and 28 deletions.
2 changes: 2 additions & 0 deletions android_webview/BUILD.gn
Original file line number Diff line number Diff line change
Expand Up @@ -650,6 +650,7 @@ android_library("browser_java") {
"//android_webview/nonembedded:system_webview_manifest",
"//android_webview/proto:metrics_bridge_records_proto_java",
"//base:base_java",
"//build/android:build_java",
"//components/android_autofill/browser:java",
"//components/autofill/android:autofill_java",
"//components/background_task_scheduler:background_task_scheduler_task_ids_java",
Expand Down Expand Up @@ -788,6 +789,7 @@ android_library("common_java") {
]
deps = [
"//base:base_java",
"//build/android:build_java",
"//cc/base:cc_base_java",
"//components/autofill/android:autofill_features_java",
"//components/feature_engagement/public:public_java",
Expand Down
1 change: 1 addition & 0 deletions android_webview/glue/BUILD.gn
Original file line number Diff line number Diff line change
Expand Up @@ -16,6 +16,7 @@ android_library("glue_java") {
"//android_webview/support_library/boundary_interfaces:boundary_interface_java",
"//android_webview/support_library/callback:callback_java",
"//base:base_java",
"//build/android:build_java",
"//components/content_capture/android:java",
"//components/embedder_support/android:application_java",
"//components/embedder_support/android:util_java",
Expand Down
1 change: 1 addition & 0 deletions android_webview/js_sandbox/BUILD.gn
Original file line number Diff line number Diff line change
Expand Up @@ -33,6 +33,7 @@ android_library("js_sandbox_service_java") {
":js_sandbox_jni_headers",
"//base:base_java",
"//base:jni_java",
"//build/android:build_java",
"//third_party/android_deps:com_google_code_findbugs_jsr305_java",
"//third_party/androidx:androidx_annotation_annotation_java",
]
Expand Down
1 change: 1 addition & 0 deletions android_webview/nonembedded/BUILD.gn
Original file line number Diff line number Diff line change
Expand Up @@ -39,6 +39,7 @@ android_library("nonembedded_java") {
"//android_webview/glue:glue_java",
"//android_webview/proto:metrics_bridge_records_proto_java",
"//base:base_java",
"//build/android:build_java",
"//components/about_ui/android:aboutui_java",
"//components/crash/android:java",
"//components/embedder_support/android:application_java",
Expand Down
1 change: 1 addition & 0 deletions android_webview/support_library/BUILD.gn
Original file line number Diff line number Diff line change
Expand Up @@ -35,6 +35,7 @@ android_library("support_lib_glue_java") {
"//android_webview/support_library/boundary_interfaces:boundary_interface_java",
"//android_webview/support_library/callback:callback_java",
"//base:base_java",
"//build/android:build_java",
"//components/embedder_support/android:util_java",
"//content/public/android:content_java",
"//third_party/androidx:androidx_annotation_annotation_java",
Expand Down
6 changes: 6 additions & 0 deletions android_webview/test/BUILD.gn
Original file line number Diff line number Diff line change
Expand Up @@ -92,6 +92,7 @@ android_apk("webview_instrumentation_apk") {
"//android_webview/js_sandbox:js_sandbox_java",
"//base:base_java",
"//base:base_java_test_support",
"//build/android:build_java",
"//components/android_autofill/browser/test_support:component_autofill_provider_java_test_support",
"//components/content_capture/android/test_support:java",
"//components/embedder_support/android:util_java",
Expand Down Expand Up @@ -231,6 +232,7 @@ instrumentation_test_apk("webview_instrumentation_test_apk") {
"//android_webview/test/embedded_test_server:aw_net_java_test_support",
"//base:base_java",
"//base:base_java_test_support",
"//build/android:build_java",
"//components/android_autofill/browser:java",
"//components/android_autofill/browser/test_support:component_autofill_provider_java_test_support",
"//components/autofill/android:autofill_java",
Expand Down Expand Up @@ -471,6 +473,7 @@ android_library("webview_instrumentation_test_mock_services_java") {
"//android_webview/nonembedded:services_java",
"//base:base_java",
"//base:base_java_test_support",
"//build/android:build_java",
"//components/component_updater/android:component_provider_service_aidl_java",
"//third_party/junit",
]
Expand All @@ -487,6 +490,7 @@ android_library("webview_instrumentation_test_utils_java") {
deps = [
"//android_webview:common_variations_java",
"//base:base_java",
"//build/android:build_java",
"//components/component_updater/android:embedded_component_loader_java",
"//components/variations/android:variations_java",
"//third_party/junit",
Expand Down Expand Up @@ -623,6 +627,7 @@ android_library("android_webview_unittests_java") {
deps = [
"//android_webview:android_webview_java",
"//base:base_java",
"//build/android:build_java",
"//content/public/test/android:content_java_test_support",
]
sources = [ "../unittestjava/src/org/chromium/android_webview/unittest/MockAwContentsClientBridge.java" ]
Expand Down Expand Up @@ -658,6 +663,7 @@ junit_binary("android_webview_junit_tests") {
"//base:base_java",
"//base:base_java_test_support",
"//base:base_junit_test_support",
"//build/android:build_java",
"//components/component_updater/android:embedded_component_loader_java",
"//content/public/test/android:content_java_test_support",
"//third_party/android_deps:protobuf_lite_runtime_java",
Expand Down
2 changes: 2 additions & 0 deletions android_webview/test/embedded_test_server/BUILD.gn
Original file line number Diff line number Diff line change
Expand Up @@ -15,6 +15,7 @@ android_library("aw_net_java_test_support") {
deps = [
"//base:base_java",
"//base:base_java_test_support",
"//build/android:build_java",
"//net/android:embedded_test_server_aidl_java",
"//net/android:net_java",
"//net/android:net_java_test_support",
Expand Down Expand Up @@ -67,6 +68,7 @@ android_apk("aw_net_test_support_apk") {
deps = [
":aw_net_java_test_support",
"//base:base_java",
"//build/android:build_java",
]
android_manifest = "java/AndroidManifest.xml"
apk_name = "ChromiumNetTestAwSupport"
Expand Down
2 changes: 2 additions & 0 deletions android_webview/tools/automated_ui_tests/BUILD.gn
Original file line number Diff line number Diff line change
Expand Up @@ -28,6 +28,7 @@ android_library("webview_ui_test_app_java") {
deps = [
":webview_ui_test_app_apk_resources",
"//base:base_java",
"//build/android:build_java",
]
}

Expand Down Expand Up @@ -58,6 +59,7 @@ instrumentation_test_apk("webview_ui_test_app_test_apk") {
":webview_ui_test_app_java",
"//base:base_java",
"//base:base_java_test_support",
"//build/android:build_java",
"//third_party/android_deps:espresso_java",
"//third_party/android_sdk:android_test_base_java",
"//third_party/android_support_test_runner:rules_java",
Expand Down
3 changes: 3 additions & 0 deletions android_webview/tools/system_webview_shell/BUILD.gn
Original file line number Diff line number Diff line change
Expand Up @@ -62,6 +62,7 @@ android_library("system_webview_shell_apk_java") {
deps = [
":system_webview_shell_apk_resources",
"//base:base_java",
"//build/android:build_java",
"//third_party/android_deps:guava_android_java",
"//third_party/androidx:androidx_activity_activity_java",
"//third_party/androidx:androidx_annotation_annotation_java",
Expand Down Expand Up @@ -121,6 +122,7 @@ instrumentation_test_apk("system_webview_shell_page_cycler_apk") {
":system_webview_shell_apk_java",
"//base:base_java",
"//base:base_java_test_support",
"//build/android:build_java",
"//content/public/android:content_java",
"//content/public/test/android:content_java_test_support",
"//third_party/android_support_test_runner:rules_java",
Expand All @@ -144,6 +146,7 @@ instrumentation_test_apk("system_webview_shell_layout_test_apk") {
":system_webview_shell_apk_java",
"//base:base_java",
"//base:base_java_test_support",
"//build/android:build_java",
"//third_party/android_sdk:android_test_base_java",
"//third_party/android_support_test_runner:rules_java",
"//third_party/android_support_test_runner:runner_java",
Expand Down
25 changes: 18 additions & 7 deletions base/BUILD.gn
Original file line number Diff line number Diff line change
Expand Up @@ -3984,6 +3984,7 @@ if (is_android) {
]

deps = [
"//build/android:build_java",
"//third_party/android_deps:com_google_code_findbugs_jsr305_java",
"//third_party/androidx:androidx_annotation_annotation_experimental_java",
"//third_party/androidx:androidx_annotation_annotation_java",
Expand All @@ -3992,10 +3993,7 @@ if (is_android) {
"//third_party/androidx:androidx_multidex_multidex_java",
]

public_deps = [
":jni_java",
"//build/android:build_java",
]
public_deps = [ ":jni_java" ]

sources = [
"android/java/src/org/chromium/base/ActivityState.java",
Expand Down Expand Up @@ -4174,6 +4172,7 @@ if (is_android) {
":base_java",
":base_java_test_support",
"//base/test:test_support_java",
"//build/android:build_java",
"//third_party/android_support_test_runner:runner_java",
"//third_party/androidx:androidx_test_runner_java",
"//third_party/hamcrest:hamcrest_java",
Expand Down Expand Up @@ -4228,6 +4227,7 @@ if (is_android) {

deps = [
":base_java",
"//build/android:build_java",
"//third_party/android_sdk:android_test_base_java",
"//third_party/android_sdk:android_test_mock_java",
"//third_party/android_support_test_runner:runner_java",
Expand Down Expand Up @@ -4323,7 +4323,10 @@ if (is_android) {
android_library("base_java_process_launcher_test_support") {
testonly = true

deps = [ ":base_java" ]
deps = [
":base_java",
"//build/android:build_java",
]

sources = [ "test/android/javatests/src/org/chromium/base/process_launcher/TestChildProcessConnection.java" ]
}
Expand All @@ -4350,6 +4353,7 @@ if (is_android) {

deps = [
":base_java",
"//build/android:build_java",
"//testing/android/junit:junit_test_support",
"//third_party/android_deps:robolectric_all_java",
"//third_party/android_support_test_runner:runner_java",
Expand Down Expand Up @@ -4417,6 +4421,7 @@ if (is_android) {
":base_junit_test_support",
":jni_java",
"//base/test:test_support_java",
"//build/android:build_java",
"//third_party/androidx:androidx_annotation_annotation_java",
"//third_party/androidx:androidx_test_runner_java",
"//third_party/hamcrest:hamcrest_java",
Expand Down Expand Up @@ -4452,13 +4457,19 @@ if (is_android) {

annotation_processor_deps = [ "//base/android/jni_generator:jni_processor" ]

deps = [ "//base:base_java" ]
deps = [
"//base:base_java",
"//build/android:build_java",
]
}

android_library("base_java_unittest_support") {
testonly = true

deps = [ ":base_java" ]
deps = [
":base_java",
"//build/android:build_java",
]

sources = [
"test/android/java/src/org/chromium/base/ContentUriTestUtils.java",
Expand Down
11 changes: 9 additions & 2 deletions base/android/jni_generator/BUILD.gn
Original file line number Diff line number Diff line change
Expand Up @@ -20,15 +20,21 @@ android_library("jni_sample_java") {
"java/src/org/chromium/example/jni_generator/SampleForTests.java",
]

deps = [ "//base:base_java" ]
deps = [
"//base:base_java",
"//build/android:build_java",
]

annotation_processor_deps = [ "//base/android/jni_generator:jni_processor" ]
}

android_library("jni_annotation_sample_java") {
sources = [ "java/src/org/chromium/example/jni_generator/SampleForAnnotationProcessor.java" ]

deps = [ "//base:base_java" ]
deps = [
"//base:base_java",
"//build/android:build_java",
]

annotation_processor_deps = [ "//base/android/jni_generator:jni_processor" ]
}
Expand Down Expand Up @@ -63,6 +69,7 @@ android_apk("sample_jni_apk") {
deps = [
":jni_sample_java",
"//base:base_java",
"//build/android:build_java",
]
shared_libraries = [ ":jni_sample_lib" ]
jni_registration_header = _registration_header
Expand Down
1 change: 1 addition & 0 deletions base/test/BUILD.gn
Original file line number Diff line number Diff line change
Expand Up @@ -391,6 +391,7 @@ if (is_android) {

deps = [
"//base:base_java",
"//build/android:build_java",
"//testing/android/native_test:native_main_runner_java",
"//third_party/android_deps:com_google_code_findbugs_jsr305_java",
]
Expand Down
1 change: 1 addition & 0 deletions build/config/android/rules.gni
Original file line number Diff line number Diff line change
Expand Up @@ -3999,6 +3999,7 @@ if (enable_java_templates) {
if (!defined(use_default_launcher) || use_default_launcher) {
deps += [
"//base:base_java",
"//build/android:build_java",
"//build/android/gtest_apk:native_test_instrumentation_test_runner_java",
"//testing/android/native_test:native_test_java",
]
Expand Down
8 changes: 8 additions & 0 deletions chrome/android/BUILD.gn
Original file line number Diff line number Diff line change
Expand Up @@ -936,6 +936,7 @@ junit_binary("chrome_junit_tests") {
"//base:base_java_test_support",
"//base:base_junit_test_support",
"//base/test:test_support_java",
"//build/android:build_java",
"//build/config/android/test/classpath_order:junit_tests",
"//cc:cc_java",
"//chrome/android:update_proto_java",
Expand Down Expand Up @@ -1236,6 +1237,7 @@ android_library("chrome_test_util_java") {
"//base:base_java",
"//base:base_java_test_support",
"//base:jni_java",
"//build/android:build_java",
"//cc:cc_java",
"//chrome/android:chrome_java",
"//chrome/browser/android/browserservices/intents:java",
Expand Down Expand Up @@ -1274,6 +1276,7 @@ android_library("chrome_unit_test_java") {
":chrome_unit_test_util_java",
"//base:base_java",
"//base:base_java_test_support",
"//build/android:build_java",
"//chrome/android:chrome_java",
"//chrome/browser/ui/android/toolbar:java",
"//chrome/test/android:chrome_java_test_support",
Expand Down Expand Up @@ -1314,6 +1317,7 @@ android_library("chrome_test_java") {
"//base:base_java",
"//base:base_java_test_support",
"//base/test:test_support_java",
"//build/android:build_java",
"//build/config/android/test/resource_overlay:javatests",
"//cc:cc_java",
"//chrome/android:chrome_java",
Expand Down Expand Up @@ -1706,6 +1710,7 @@ if (enable_vr || enable_arcore) {
":chrome_test_util_java",
"//base:base_java",
"//base:base_java_test_support",
"//build/android:build_java",
"//chrome/android:chrome_java",
"//chrome/android:delegate_public_impl_java",
"//chrome/android/features/vr:java",
Expand Down Expand Up @@ -2386,6 +2391,7 @@ android_library("browser_java_test_support") {
"//base:base_java",
"//base:base_java_test_support",
"//base:jni_java",
"//build/android:build_java",
"//chrome/browser/download/android:java",
"//chrome/browser/prefetch/android:java",
"//chrome/browser/profiles/android:java",
Expand Down Expand Up @@ -2518,6 +2524,7 @@ android_library("base_monochrome_module_java") {
":base_module_java",
"//android_webview:android_webview_no_weblayer_java",
"//base:base_java",
"//build/android:build_java",
"//components/version_info/android:version_constants_java",
"//components/version_info/android:version_constants_java",
"//content/public/android:content_java",
Expand Down Expand Up @@ -2582,6 +2589,7 @@ android_library("base_module_java") {
"$google_play_services_package:google_firebase_firebase_messaging_java",
"$google_play_services_package:google_play_services_gcm_java",
"//base:base_java",
"//build/android:build_java",
"//chrome/browser/download/android:file_provider_java",
"//chrome/browser/flags:java",
"//chrome/browser/language/android:base_module_java",
Expand Down
2 changes: 2 additions & 0 deletions chrome/android/features/autofill_assistant/BUILD.gn
Original file line number Diff line number Diff line change
Expand Up @@ -39,6 +39,7 @@ android_library("autofill_assistant_java_test_support") {
":test_support_jni_headers",
"//base:base_java",
"//base:base_java_test_support",
"//build/android:build_java",
"//components/autofill_assistant/android:java",
"//components/autofill_assistant/browser:proto_java",
"//content/public/test/android:content_java_test_support",
Expand Down Expand Up @@ -113,6 +114,7 @@ android_library("test_java") {
":test_support_jni_headers",
"//base:base_java",
"//base:base_java_test_support",
"//build/android:build_java",
"//chrome/android:chrome_app_java_resources",
"//chrome/android:chrome_java",
"//chrome/android:chrome_test_java",
Expand Down
1 change: 1 addition & 0 deletions chrome/android/features/cablev2_authenticator/BUILD.gn
Original file line number Diff line number Diff line change
Expand Up @@ -19,6 +19,7 @@ android_library("java") {
"$google_play_services_package:google_play_services_base_java",
"$google_play_services_package:google_play_services_tasks_java",
"//base:base_java",
"//build/android:build_java",
"//chrome/browser/webauthn/android:java_resources",
"//components/webauthn/android:java",
"//content/public/android:content_java",
Expand Down
1 change: 1 addition & 0 deletions chrome/android/features/dev_ui/BUILD.gn
Original file line number Diff line number Diff line change
Expand Up @@ -16,6 +16,7 @@ buildflag_header("buildflags") {
android_library("java") {
deps = [
"//base:base_java",
"//build/android:build_java",
"//chrome/android/features/dev_ui/public:java",
]
sources =
Expand Down
2 changes: 2 additions & 0 deletions chrome/android/features/keyboard_accessory/BUILD.gn
Original file line number Diff line number Diff line change
Expand Up @@ -61,6 +61,7 @@ android_library("test_java") {
"public:public_java",
"//base:base_java",
"//base:base_java_test_support",
"//build/android:build_java",
"//chrome/android:chrome_java",
"//chrome/android:chrome_test_java",
"//chrome/android:chrome_test_util_java",
Expand Down Expand Up @@ -119,6 +120,7 @@ junit_binary("keyboard_accessory_junit_tests") {
"//base:base_java",
"//base:base_java_test_support",
"//base:base_junit_test_support",
"//build/android:build_java",
"//chrome/android:chrome_java",
"//chrome/android:chrome_test_util_java",
"//chrome/android/features/keyboard_accessory/public:public_java",
Expand Down
Loading

0 comments on commit 494cdd4

Please sign in to comment.