| filegroup { |
| name: "services.core-sources", |
| srcs: ["java/**/*.java"], |
| path: "java", |
| visibility: ["//frameworks/base/services"], |
| } |
| |
| java_library { |
| name: "protolog-common", |
| srcs: [ |
| "java/com/android/server/protolog/common/**/*.java", |
| ], |
| host_supported: true, |
| } |
| |
| java_library { |
| name: "services.core.wm.protologgroups", |
| srcs: [ |
| "java/com/android/server/wm/ProtoLogGroup.java", |
| ], |
| static_libs: ["protolog-common"], |
| } |
| |
| genrule { |
| name: "services.core.protologsrc", |
| srcs: [ |
| ":services.core.wm.protologgroups", |
| ":services.core-sources", |
| ], |
| tools: ["protologtool"], |
| cmd: "$(location protologtool) transform-protolog-calls " + |
| "--protolog-class com.android.server.protolog.common.ProtoLog " + |
| "--protolog-impl-class com.android.server.protolog.ProtoLogImpl " + |
| "--protolog-cache-class 'com.android.server.protolog.ProtoLog$$Cache' " + |
| "--loggroups-class com.android.server.wm.ProtoLogGroup " + |
| "--loggroups-jar $(location :services.core.wm.protologgroups) " + |
| "--output-srcjar $(out) " + |
| "$(locations :services.core-sources)", |
| out: ["services.core.protolog.srcjar"], |
| } |
| |
| genrule { |
| name: "generate-protolog.json", |
| 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 :services.core-sources)", |
| out: ["services.core.protolog.json"], |
| } |
| |
| genrule { |
| name: "checked-protolog.json", |
| srcs: [ |
| ":generate-protolog.json", |
| ":services.core.protolog.json", |
| ], |
| cmd: "cp $(location :generate-protolog.json) $(out) && " + |
| "{ ! (diff $(out) $(location :services.core.protolog.json) | grep -q '^<') || " + |
| "{ echo -e '\\n\\n################################################################\\n#\\n" + |
| "# ERROR: ProtoLog viewer config is stale. To update it, run:\\n#\\n" + |
| "# cp $(location :generate-protolog.json) " + |
| "$(location :services.core.protolog.json)\\n#\\n" + |
| "################################################################\\n\\n' >&2 && false; } }", |
| out: ["services.core.protolog.json"], |
| } |
| |
| java_library_static { |
| name: "services.core.unboosted", |
| srcs: [ |
| ":services.core.protologsrc", |
| ":dumpstate_aidl", |
| ":framework_native_aidl", |
| ":gsiservice_aidl", |
| ":idmap2_aidl", |
| ":installd_aidl", |
| ":storaged_aidl", |
| ":vold_aidl", |
| ":platform-compat-config", |
| ":display-device-config", |
| "java/com/android/server/EventLogTags.logtags", |
| "java/com/android/server/am/EventLogTags.logtags", |
| "java/com/android/server/wm/EventLogTags.logtags", |
| "java/com/android/server/policy/EventLogTags.logtags", |
| ], |
| |
| libs: [ |
| "services-stubs", |
| "services.net", |
| "android.hardware.light-V2.0-java", |
| "android.hardware.power-V1.0-java", |
| "android.hardware.tv.cec-V1.0-java", |
| "android.hardware.vibrator-java", |
| "app-compat-annotations", |
| "framework-tethering", |
| ], |
| |
| required: [ |
| "gps_debug.conf", |
| "protolog.conf.json.gz", |
| ], |
| |
| static_libs: [ |
| "time_zone_distro", |
| "time_zone_distro_installer", |
| "android.hardware.authsecret-V1.0-java", |
| "android.hardware.broadcastradio-V2.0-java", |
| "android.hardware.health-V1.0-java", |
| "android.hardware.health-V2.0-java", |
| "android.hardware.weaver-V1.0-java", |
| "android.hardware.biometrics.face-V1.0-java", |
| "android.hardware.biometrics.fingerprint-V2.1-java", |
| "android.hardware.oemlock-V1.0-java", |
| "android.hardware.configstore-V1.0-java", |
| "android.hardware.contexthub-V1.0-java", |
| "android.hardware.rebootescrow-java", |
| "android.hardware.soundtrigger-V2.3-java", |
| "android.hidl.manager-V1.2-java", |
| "dnsresolver_aidl_interface-V2-java", |
| "netd_event_listener_interface-java", |
| ], |
| |
| plugins: [ |
| "compat-changeid-annotation-processor", |
| ], |
| } |
| |
| java_genrule { |
| name: "services.core.priorityboosted", |
| srcs: [":services.core.unboosted"], |
| tools: ["lockedregioncodeinjection"], |
| cmd: "$(location lockedregioncodeinjection) " + |
| " --targets \"Lcom/android/server/am/ActivityManagerService;,Lcom/android/server/wm/WindowManagerGlobalLock;\" " + |
| " --pre \"com/android/server/am/ActivityManagerService.boostPriorityForLockedSection,com/android/server/wm/WindowManagerService.boostPriorityForLockedSection\" " + |
| " --post \"com/android/server/am/ActivityManagerService.resetPriorityAfterLockedSection,com/android/server/wm/WindowManagerService.resetPriorityAfterLockedSection\" " + |
| " -o $(out) " + |
| " -i $(in)", |
| out: ["services.core.priorityboosted.jar"], |
| } |
| |
| java_library { |
| name: "services.core", |
| static_libs: ["services.core.priorityboosted"], |
| } |
| |
| |
| prebuilt_etc { |
| name: "gps_debug.conf", |
| src: "java/com/android/server/location/gps_debug.conf", |
| } |
| |
| genrule { |
| name: "services.core.json.gz", |
| srcs: [":checked-protolog.json"], |
| out: ["services.core.protolog.json.gz"], |
| cmd: "$(location minigzip) -c < $(in) > $(out)", |
| tools: ["minigzip"], |
| } |
| |
| prebuilt_etc { |
| name: "protolog.conf.json.gz", |
| src: ":services.core.json.gz", |
| } |