diff --git a/services/Android.bp b/services/Android.bp index 6953e862f68b4..35dc44e0ac658 100644 --- a/services/Android.bp +++ b/services/Android.bp @@ -1,3 +1,38 @@ +filegroup { + name: "services-main-sources", + srcs: ["java/**/*.java"], + path: "java", + visibility: ["//visibility:private"], +} + +filegroup { + name: "services-sources", + srcs: [ + ":services.core-sources", + ":services.accessibility-sources", + ":services.appprediction-sources", + ":services.appwidget-sources", + ":services.autofill-sources", + ":services.backup-sources", + ":services.companion-sources", + ":services.contentcapture-sources", + ":services.contentsuggestions-sources", + ":services.coverage-sources", + ":services.devicepolicy-sources", + ":services.midi-sources", + ":services.net-sources", + ":services.print-sources", + ":services.restrictions-sources", + ":services.startop.iorap-sources", + ":services.systemcaptions-sources", + ":services.usage-sources", + ":services.usb-sources", + ":services.voiceinteraction-sources", + ":services.wifi-sources", + ], + visibility: ["//visibility:private"], +} + // merge all required services into one jar // ============================================================ java_library { @@ -9,9 +44,7 @@ java_library { profile: "art-profile", }, - srcs: [ - "java/**/*.java", - ], + srcs: [":services-main-sources"], // The convention is to name each service module 'services.$(module_name)' static_libs: [ diff --git a/services/accessibility/Android.bp b/services/accessibility/Android.bp index f991d7b50fcbb..284a2f2626a4e 100644 --- a/services/accessibility/Android.bp +++ b/services/accessibility/Android.bp @@ -1,5 +1,12 @@ +filegroup { + name: "services.accessibility-sources", + srcs: ["java/**/*.java"], + path: "java", + visibility: ["//frameworks/base/services"], +} + java_library_static { name: "services.accessibility", - srcs: ["java/**/*.java"], + srcs: [":services.accessibility-sources"], libs: ["services.core"], } diff --git a/services/appprediction/Android.bp b/services/appprediction/Android.bp index a7be58783aab8..e14e1df0b5c73 100644 --- a/services/appprediction/Android.bp +++ b/services/appprediction/Android.bp @@ -1,5 +1,12 @@ +filegroup { + name: "services.appprediction-sources", + srcs: ["java/**/*.java"], + path: "java", + visibility: ["//frameworks/base/services"], +} + java_library_static { name: "services.appprediction", - srcs: ["java/**/*.java"], + srcs: [":services.appprediction-sources"], libs: ["services.core"], } diff --git a/services/appwidget/Android.bp b/services/appwidget/Android.bp index aad2ad198bb74..54cf6cec78ea0 100644 --- a/services/appwidget/Android.bp +++ b/services/appwidget/Android.bp @@ -1,5 +1,12 @@ +filegroup { + name: "services.appwidget-sources", + srcs: ["java/**/*.java"], + path: "java", + visibility: ["//frameworks/base/services"], +} + java_library_static { name: "services.appwidget", - srcs: ["java/**/*.java"], + srcs: [":services.appwidget-sources"], libs: ["services.core"], } diff --git a/services/autofill/Android.bp b/services/autofill/Android.bp index 2768c18513143..539eb1a5220e6 100644 --- a/services/autofill/Android.bp +++ b/services/autofill/Android.bp @@ -1,5 +1,12 @@ +filegroup { + name: "services.autofill-sources", + srcs: ["java/**/*.java"], + path: "java", + visibility: ["//frameworks/base/services"], +} + java_library_static { name: "services.autofill", - srcs: ["java/**/*.java"], + srcs: [":services.autofill-sources"], libs: ["services.core"], } diff --git a/services/backup/Android.bp b/services/backup/Android.bp index a3b0c891d00a9..f02da20767066 100644 --- a/services/backup/Android.bp +++ b/services/backup/Android.bp @@ -1,6 +1,13 @@ +filegroup { + name: "services.backup-sources", + srcs: ["java/**/*.java"], + path: "java", + visibility: ["//frameworks/base/services"], +} + java_library_static { name: "services.backup", - srcs: ["java/**/*.java"], + srcs: [":services.backup-sources"], libs: ["services.core"], static_libs: ["backuplib"], } diff --git a/services/backup/backuplib/Android.bp b/services/backup/backuplib/Android.bp index 7b194a0923c2f..00f51c960636d 100644 --- a/services/backup/backuplib/Android.bp +++ b/services/backup/backuplib/Android.bp @@ -1,5 +1,12 @@ +filegroup { + name: "backuplib-sources", + srcs: ["java/**/*.java"], + path: "java", + visibility: ["//frameworks/base/services"], +} + java_library { name: "backuplib", - srcs: ["java/**/*.java"], + srcs: [":backuplib-sources"], libs: ["services.core"], } diff --git a/services/companion/Android.bp b/services/companion/Android.bp index d2dac357a2278..9677a7d83bfb8 100644 --- a/services/companion/Android.bp +++ b/services/companion/Android.bp @@ -1,5 +1,12 @@ +filegroup { + name: "services.companion-sources", + srcs: ["java/**/*.java"], + path: "java", + visibility: ["//frameworks/base/services"], +} + java_library_static { name: "services.companion", - srcs: ["java/**/*.java"], + srcs: [":services.companion-sources"], libs: ["services.core"], } diff --git a/services/contentcapture/Android.bp b/services/contentcapture/Android.bp index 57e859ebe1217..96e20726fed3f 100644 --- a/services/contentcapture/Android.bp +++ b/services/contentcapture/Android.bp @@ -1,5 +1,12 @@ +filegroup { + name: "services.contentcapture-sources", + srcs: ["java/**/*.java"], + path: "java", + visibility: ["//frameworks/base/services"], +} + java_library_static { name: "services.contentcapture", - srcs: ["java/**/*.java"], + srcs: [":services.contentcapture-sources"], libs: ["services.core"], } diff --git a/services/contentsuggestions/Android.bp b/services/contentsuggestions/Android.bp index fc09d2e5196ab..d17f06f79e974 100644 --- a/services/contentsuggestions/Android.bp +++ b/services/contentsuggestions/Android.bp @@ -1,5 +1,12 @@ +filegroup { + name: "services.contentsuggestions-sources", + srcs: ["java/**/*.java"], + path: "java", + visibility: ["//frameworks/base/services"], +} + java_library_static { name: "services.contentsuggestions", - srcs: ["java/**/*.java"], + srcs: [":services.contentsuggestions-sources"], libs: ["services.core"], -} \ No newline at end of file +} diff --git a/services/core/Android.bp b/services/core/Android.bp index b8caefd451351..594ac104ebd01 100644 --- a/services/core/Android.bp +++ b/services/core/Android.bp @@ -1,3 +1,10 @@ +filegroup { + name: "services.core-sources", + srcs: ["java/**/*.java"], + path: "java", + visibility: ["//frameworks/base/services"], +} + java_library { name: "protolog-common", srcs: [ @@ -16,7 +23,10 @@ java_library { genrule { name: "services.core.protologsrc", - srcs: [":services.core.wm.protologgroups", "java/**/*.java"], + srcs: [ + ":services.core.wm.protologgroups", + ":services.core-sources", + ], tools: ["protologtool"], cmd: "$(location protologtool) transform-protolog-calls " + "--protolog-class com.android.server.protolog.common.ProtoLog " + @@ -25,20 +35,23 @@ genrule { "--loggroups-class com.android.server.wm.ProtoLogGroup " + "--loggroups-jar $(location :services.core.wm.protologgroups) " + "--output-srcjar $(out) " + - "$(locations java/**/*.java)", + "$(locations :services.core-sources)", out: ["services.core.protolog.srcjar"], } genrule { name: "generate-protolog.json", - srcs: [":services.core.wm.protologgroups", "java/**/*.java"], + srcs: [ + ":services.core.wm.protologgroups", + ":services.core-sources", + ], tools: ["protologtool"], cmd: "$(location protologtool) generate-viewer-config " + "--protolog-class com.android.server.protolog.common.ProtoLog " + "--loggroups-class com.android.server.wm.ProtoLogGroup " + "--loggroups-jar $(location :services.core.wm.protologgroups) " + "--viewer-conf $(out) " + - "$(locations java/**/*.java)", + "$(locations :services.core-sources)", out: ["services.core.protolog.json"], } @@ -60,25 +73,15 @@ genrule { java_library_static { name: "services.core.unboosted", - - aidl: { - include_dirs: [ - "frameworks/base/cmds/idmap2/idmap2d/aidl", - "frameworks/native/aidl/binder", - "frameworks/native/cmds/dumpstate/binder", - "system/core/storaged/binder", - "system/vold/binder", - "system/gsid/aidl", - ], - }, srcs: [ ":services.core.protologsrc", ":dumpstate_aidl", + ":framework_native_aidl", + ":gsiservice_aidl", ":idmap2_aidl", ":installd_aidl", ":storaged_aidl", ":vold_aidl", - ":gsiservice_aidl", ":platform-compat-config", ":tethering-servicescore-srcs", "java/com/android/server/EventLogTags.logtags", diff --git a/services/coverage/Android.bp b/services/coverage/Android.bp index 16c9c1bfcdaac..e4f54644df46a 100644 --- a/services/coverage/Android.bp +++ b/services/coverage/Android.bp @@ -1,5 +1,12 @@ +filegroup { + name: "services.coverage-sources", + srcs: ["java/**/*.java"], + path: "java", + visibility: ["//frameworks/base/services"], +} + java_library_static { name: "services.coverage", - srcs: ["java/**/*.java"], + srcs: [":services.coverage-sources"], libs: ["jacocoagent"], } diff --git a/services/devicepolicy/Android.bp b/services/devicepolicy/Android.bp index bffa44e868a7c..380ee942af980 100644 --- a/services/devicepolicy/Android.bp +++ b/services/devicepolicy/Android.bp @@ -1,6 +1,13 @@ +filegroup { + name: "services.devicepolicy-sources", + srcs: ["java/**/*.java"], + path: "java", + visibility: ["//frameworks/base/services"], +} + java_library_static { name: "services.devicepolicy", - srcs: ["java/**/*.java"], + srcs: [":services.devicepolicy-sources"], libs: [ "services.core", @@ -15,4 +22,4 @@ java_library_static { platform_compat_config { name: "services-devicepolicy-platform-compat-config", src: ":services.devicepolicy", -} \ No newline at end of file +} diff --git a/services/midi/Android.bp b/services/midi/Android.bp index 3745e89e80349..20e00834d0ad3 100644 --- a/services/midi/Android.bp +++ b/services/midi/Android.bp @@ -1,5 +1,12 @@ +filegroup { + name: "services.midi-sources", + srcs: ["java/**/*.java"], + path: "java", + visibility: ["//frameworks/base/services"], +} + java_library_static { name: "services.midi", - srcs: ["java/**/*.java"], + srcs: [":services.midi-sources"], libs: ["services.core"], } diff --git a/services/net/Android.bp b/services/net/Android.bp index c56ecd6e19e7e..42c69e056da42 100644 --- a/services/net/Android.bp +++ b/services/net/Android.bp @@ -1,8 +1,15 @@ +filegroup { + name: "services.net-sources", + srcs: ["java/**/*.java"], + path: "java", + visibility: ["//frameworks/base/services"], +} + java_library_static { name: "services.net", srcs: [ ":tethering-servicesnet-srcs", - "java/**/*.java", + ":services.net-sources", ], static_libs: [ "dnsresolver_aidl_interface-V2-java", @@ -20,6 +27,8 @@ filegroup { "java/android/net/shared/*.java", "java/android/net/netlink/*.java", ], + path: "java", + visibility: ["//packages/modules/NetworkStack"], } filegroup { @@ -35,4 +44,5 @@ filegroup { "java/android/net/util/NetworkConstants.java", "java/android/net/util/SharedLog.java" ], + visibility: ["//frameworks/base/packages/Tethering"], } diff --git a/services/print/Android.bp b/services/print/Android.bp index 80a8c7560de65..aad24d72345b7 100644 --- a/services/print/Android.bp +++ b/services/print/Android.bp @@ -1,5 +1,12 @@ +filegroup { + name: "services.print-sources", + srcs: ["java/**/*.java"], + path: "java", + visibility: ["//frameworks/base/services"], +} + java_library_static { name: "services.print", - srcs: ["java/**/*.java"], + srcs: [":services.print-sources"], libs: ["services.core"], } diff --git a/services/restrictions/Android.bp b/services/restrictions/Android.bp index 979e891ada5ff..805858f7f654d 100644 --- a/services/restrictions/Android.bp +++ b/services/restrictions/Android.bp @@ -1,5 +1,12 @@ +filegroup { + name: "services.restrictions-sources", + srcs: ["java/**/*.java"], + path: "java", + visibility: ["//frameworks/base/services"], +} + java_library_static { name: "services.restrictions", - srcs: ["java/**/*.java"], + srcs: [":services.restrictions-sources"], libs: ["services.core"], } diff --git a/services/systemcaptions/Android.bp b/services/systemcaptions/Android.bp index 4e190b639b2ca..1ce3e665c665e 100644 --- a/services/systemcaptions/Android.bp +++ b/services/systemcaptions/Android.bp @@ -1,5 +1,12 @@ +filegroup { + name: "services.systemcaptions-sources", + srcs: ["java/**/*.java"], + path: "java", + visibility: ["//frameworks/base/services"], +} + java_library_static { name: "services.systemcaptions", - srcs: ["java/**/*.java"], + srcs: [":services.systemcaptions-sources"], libs: ["services.core"], } diff --git a/services/usage/Android.bp b/services/usage/Android.bp index 1064b6ed802f4..156bf330c1289 100644 --- a/services/usage/Android.bp +++ b/services/usage/Android.bp @@ -1,5 +1,12 @@ +filegroup { + name: "services.usage-sources", + srcs: ["java/**/*.java"], + path: "java", + visibility: ["//frameworks/base/services"], +} + java_library_static { name: "services.usage", - srcs: ["java/**/*.java"], + srcs: [":services.usage-sources"], libs: ["services.core"], } diff --git a/services/usb/Android.bp b/services/usb/Android.bp index 20855b70cabce..d2c973abbc746 100644 --- a/services/usb/Android.bp +++ b/services/usb/Android.bp @@ -1,6 +1,13 @@ +filegroup { + name: "services.usb-sources", + srcs: ["java/**/*.java"], + path: "java", + visibility: ["//frameworks/base/services"], +} + java_library_static { name: "services.usb", - srcs: ["java/**/*.java"], + srcs: [":services.usb-sources"], libs: [ "services.core", diff --git a/services/voiceinteraction/Android.bp b/services/voiceinteraction/Android.bp index 390406f972640..85b96f34f4f64 100644 --- a/services/voiceinteraction/Android.bp +++ b/services/voiceinteraction/Android.bp @@ -1,5 +1,12 @@ +filegroup { + name: "services.voiceinteraction-sources", + srcs: ["java/**/*.java"], + path: "java", + visibility: ["//frameworks/base/services"], +} + java_library_static { name: "services.voiceinteraction", - srcs: ["java/**/*.java"], + srcs: [":services.voiceinteraction-sources"], libs: ["services.core"], } diff --git a/services/wifi/Android.bp b/services/wifi/Android.bp index 608fc2c7a55ef..8a7f73fcf501f 100644 --- a/services/wifi/Android.bp +++ b/services/wifi/Android.bp @@ -1,14 +1,16 @@ -// Interfaces between the core system and the wifi mainline module. -java_library_static { - name: "services.wifi", +filegroup { + name: "services.wifi-sources", srcs: [ "java/**/*.java", "java/**/*.aidl", ], - aidl: { - local_include_dirs: ["java"] - }, - libs: [ - "services.net", - ], + path: "java", + visibility: ["//frameworks/base/services"], +} + +// Interfaces between the core system and the wifi mainline module. +java_library_static { + name: "services.wifi", + srcs: [":services.wifi-sources"], + libs: ["services.net"], } diff --git a/startop/iorap/Android.bp b/startop/iorap/Android.bp index 59a80fbae792d..993d1e1092b90 100644 --- a/startop/iorap/Android.bp +++ b/startop/iorap/Android.bp @@ -12,19 +12,24 @@ // See the License for the specific language governing permissions and // limitations under the License. +filegroup { + name: "services.startop.iorap-javasources", + srcs: ["src/**/*.java"], + path: "src", + visibility: ["//visibility:private"], +} + +filegroup { + name: "services.startop.iorap-sources", + srcs: [ + ":services.startop.iorap-javasources", + ":iorap-aidl", + ], + visibility: ["//frameworks/base/services:__subpackages__"], +} + java_library_static { name: "services.startop.iorap", - - aidl: { - include_dirs: [ - "system/iorap/binder", - ], - }, - + srcs: [":services.startop.iorap-sources"], libs: ["services.core"], - - srcs: [ - ":iorap-aidl", - "**/*.java", - ], }