| package { | |
| // See: http://go/android-license-faq | |
| // A large-scale-change added 'default_applicable_licenses' to import | |
| // all of the 'license_kinds' from "frameworks_base_license" | |
| // to get the below license kinds: | |
| // SPDX-license-identifier-Apache-2.0 | |
| default_applicable_licenses: ["frameworks_base_license"], | |
| } | |
| filegroup { | |
| name: "services.core-sources-am-wm", | |
| srcs: [ | |
| "java/com/android/server/am/**/*.java", | |
| "java/com/android/server/wm/**/*.java", | |
| ], | |
| path: "java", | |
| visibility: ["//frameworks/base/services"], | |
| } | |
| filegroup { | |
| name: "services.core-sources", | |
| srcs: ["java/**/*.java"], | |
| exclude_srcs: [ | |
| ":services.core-sources-am-wm", | |
| ], | |
| path: "java", | |
| visibility: [ | |
| "//frameworks/base/services", | |
| "//frameworks/base/core/java/com/android/internal/protolog", | |
| ], | |
| } | |
| genrule { | |
| name: "services.core.protologsrc", | |
| srcs: [ | |
| ":protolog-groups", | |
| ":services.core-sources-am-wm", | |
| ], | |
| tools: ["protologtool"], | |
| cmd: "$(location protologtool) transform-protolog-calls " + | |
| "--protolog-class com.android.internal.protolog.common.ProtoLog " + | |
| "--protolog-impl-class com.android.internal.protolog.ProtoLogImpl " + | |
| "--protolog-cache-class 'com.android.server.wm.ProtoLogCache' " + | |
| "--loggroups-class com.android.internal.protolog.ProtoLogGroup " + | |
| "--loggroups-jar $(location :protolog-groups) " + | |
| "--output-srcjar $(out) " + | |
| "$(locations :services.core-sources-am-wm)", | |
| out: ["services.core.protolog.srcjar"], | |
| } | |
| genrule { | |
| name: "generate-protolog.json", | |
| srcs: [ | |
| ":protolog-groups", | |
| ":services.core-sources-am-wm", | |
| ], | |
| tools: ["protologtool"], | |
| cmd: "$(location protologtool) generate-viewer-config " + | |
| "--protolog-class com.android.internal.protolog.common.ProtoLog " + | |
| "--loggroups-class com.android.internal.protolog.ProtoLogGroup " + | |
| "--loggroups-jar $(location :protolog-groups) " + | |
| "--viewer-conf $(out) " + | |
| "$(locations :services.core-sources-am-wm)", | |
| 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"], | |
| } | |
| genrule { | |
| name: "statslog-art-java-gen", | |
| tools: ["stats-log-api-gen"], | |
| cmd: "$(location stats-log-api-gen) --java $(out) --module art" + | |
| " --javaPackage com.android.internal.art --javaClass ArtStatsLog --worksource", | |
| out: ["com/android/internal/art/ArtStatsLog.java"], | |
| } | |
| java_library_static { | |
| name: "services.core.unboosted", | |
| defaults: ["platform_service_defaults"], | |
| srcs: [ | |
| ":android.hardware.biometrics.face-V1-java-source", | |
| ":statslog-art-java-gen", | |
| ":services.core-sources", | |
| ":services.core.protologsrc", | |
| ":dumpstate_aidl", | |
| ":framework_native_aidl", | |
| ":gsiservice_aidl", | |
| ":inputconstants_aidl", | |
| ":installd_aidl", | |
| ":storaged_aidl", | |
| ":vold_aidl", | |
| ":platform-compat-config", | |
| ":platform-compat-overrides", | |
| ":display-device-config", | |
| ":display-layout-config", | |
| ":device-state-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.net", | |
| "android.hardware.common-V2-java", | |
| "android.hardware.light-V2.0-java", | |
| "android.hardware.gnss-V1-java", | |
| "android.hardware.power-V1-java", | |
| "android.hardware.power-V1.0-java", | |
| "android.hardware.vibrator-V2-java", | |
| "app-compat-annotations", | |
| "framework-tethering.stubs.module_lib", | |
| "service-permission.stubs.system_server", | |
| ], | |
| 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.boot-V1.0-java", | |
| "android.hardware.boot-V1.1-java", | |
| "android.hardware.boot-V1.2-java", | |
| "android.hardware.broadcastradio-V2.0-java", | |
| "android.hardware.health-V1.0-java", | |
| "android.hardware.health-V2.0-java", | |
| "android.hardware.health-V2.1-java", | |
| "android.hardware.light-V1-java", | |
| "android.hardware.tv.cec-V1.1-java", | |
| "android.hardware.weaver-V1.0-java", | |
| "android.hardware.biometrics.face-V1.0-java", | |
| "android.hardware.biometrics.fingerprint-V2.3-java", | |
| "android.hardware.biometrics.fingerprint-V1-java", | |
| "android.hardware.oemlock-V1.0-java", | |
| "android.hardware.configstore-V1.1-java", | |
| "android.hardware.contexthub-V1.0-java", | |
| "android.hardware.rebootescrow-V1-java", | |
| "android.hardware.soundtrigger-V2.3-java", | |
| "android.hardware.power.stats-V1-java", | |
| "android.hidl.manager-V1.2-java", | |
| "capture_state_listener-aidl-java", | |
| "icu4j_calendar_astronomer", | |
| "netd-client", | |
| "overlayable_policy_aidl-java", | |
| "SurfaceFlingerProperties", | |
| "com.android.sysprop.watchdog", | |
| ], | |
| javac_shard_size: 50, | |
| } | |
| java_genrule { | |
| name: "services.core.priorityboosted", | |
| srcs: [":services.core.unboosted"], | |
| tools: ["lockedregioncodeinjection"], | |
| cmd: "$(location lockedregioncodeinjection) " + | |
| " --targets \"Lcom/android/server/am/ActivityManagerService;,Lcom/android/server/am/ActivityManagerGlobalLock;,Lcom/android/server/wm/WindowManagerGlobalLock;\" " + | |
| " --pre \"com/android/server/am/ActivityManagerService.boostPriorityForLockedSection,com/android/server/am/ActivityManagerService.boostPriorityForProcLockedSection,com/android/server/wm/WindowManagerService.boostPriorityForLockedSection\" " + | |
| " --post \"com/android/server/am/ActivityManagerService.resetPriorityAfterLockedSection,com/android/server/am/ActivityManagerService.resetPriorityAfterProcLockedSection,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"], | |
| } | |
| java_library_host { | |
| name: "core_cts_test_resources", | |
| srcs: ["java/com/android/server/notification/SmallHash.java"], | |
| } | |
| prebuilt_etc { | |
| name: "gps_debug.conf", | |
| src: "java/com/android/server/location/gnss/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", | |
| } |