blob: 7a26b21d6ac707345cdf5e43aadc0899ccef4ac1 [file] [log] [blame]
Jiyong Parkbae2e902019-11-17 13:11:19 +09001filegroup {
2 name: "services.core-sources",
3 srcs: ["java/**/*.java"],
4 path: "java",
5 visibility: ["//frameworks/base/services"],
6}
7
Adam Pardyl0f1b3d42019-08-19 15:24:11 +02008java_library {
9 name: "protolog-common",
10 srcs: [
11 "java/com/android/server/protolog/common/**/*.java",
12 ],
13 host_supported: true,
14}
15
16java_library {
17 name: "services.core.wm.protologgroups",
18 srcs: [
19 "java/com/android/server/wm/ProtoLogGroup.java",
20 ],
21 static_libs: ["protolog-common"],
22}
23
24genrule {
25 name: "services.core.protologsrc",
Jiyong Parkbae2e902019-11-17 13:11:19 +090026 srcs: [
27 ":services.core.wm.protologgroups",
28 ":services.core-sources",
29 ],
Adam Pardyl0f1b3d42019-08-19 15:24:11 +020030 tools: ["protologtool"],
31 cmd: "$(location protologtool) transform-protolog-calls " +
32 "--protolog-class com.android.server.protolog.common.ProtoLog " +
33 "--protolog-impl-class com.android.server.protolog.ProtoLogImpl " +
Adrian Roos2ca5d862019-10-03 17:30:14 +020034 "--protolog-cache-class 'com.android.server.protolog.ProtoLog$$Cache' " +
Adam Pardyl0f1b3d42019-08-19 15:24:11 +020035 "--loggroups-class com.android.server.wm.ProtoLogGroup " +
36 "--loggroups-jar $(location :services.core.wm.protologgroups) " +
37 "--output-srcjar $(out) " +
Jiyong Parkbae2e902019-11-17 13:11:19 +090038 "$(locations :services.core-sources)",
Adam Pardyl0f1b3d42019-08-19 15:24:11 +020039 out: ["services.core.protolog.srcjar"],
40}
41
42genrule {
43 name: "generate-protolog.json",
Jiyong Parkbae2e902019-11-17 13:11:19 +090044 srcs: [
45 ":services.core.wm.protologgroups",
46 ":services.core-sources",
47 ],
Adam Pardyl0f1b3d42019-08-19 15:24:11 +020048 tools: ["protologtool"],
49 cmd: "$(location protologtool) generate-viewer-config " +
50 "--protolog-class com.android.server.protolog.common.ProtoLog " +
51 "--loggroups-class com.android.server.wm.ProtoLogGroup " +
52 "--loggroups-jar $(location :services.core.wm.protologgroups) " +
53 "--viewer-conf $(out) " +
Jiyong Parkbae2e902019-11-17 13:11:19 +090054 "$(locations :services.core-sources)",
Adam Pardyl0f1b3d42019-08-19 15:24:11 +020055 out: ["services.core.protolog.json"],
56}
57
58genrule {
59 name: "checked-protolog.json",
60 srcs: [
61 ":generate-protolog.json",
62 ":services.core.protolog.json",
63 ],
64 cmd: "cp $(location :generate-protolog.json) $(out) && " +
Adrian Roos125b8392019-10-02 19:03:34 +020065 "{ ! (diff $(out) $(location :services.core.protolog.json) | grep -q '^<') || " +
Adrian Roosb2af8ab2019-10-02 14:48:11 +020066 "{ echo -e '\\n\\n################################################################\\n#\\n" +
67 "# ERROR: ProtoLog viewer config is stale. To update it, run:\\n#\\n" +
68 "# cp $(location :generate-protolog.json) " +
69 "$(location :services.core.protolog.json)\\n#\\n" +
70 "################################################################\\n\\n' >&2 && false; } }",
Adam Pardyl0f1b3d42019-08-19 15:24:11 +020071 out: ["services.core.protolog.json"],
72}
73
Colin Crosse0b2ee52017-12-05 09:46:29 -080074java_library_static {
Colin Cross4c0b06b2017-12-12 19:43:04 -080075 name: "services.core.unboosted",
Colin Crosse0b2ee52017-12-05 09:46:29 -080076 srcs: [
Adam Pardyl0f1b3d42019-08-19 15:24:11 +020077 ":services.core.protologsrc",
Nandana Duttb3f71682018-10-03 10:01:25 +010078 ":dumpstate_aidl",
Jiyong Parkbae2e902019-11-17 13:11:19 +090079 ":framework_native_aidl",
80 ":gsiservice_aidl",
MÃ¥rten Kongstad06a1ac82018-09-20 13:09:47 +020081 ":idmap2_aidl",
Colin Crosse0b2ee52017-12-05 09:46:29 -080082 ":installd_aidl",
83 ":storaged_aidl",
84 ":vold_aidl",
atrost7e6060f2019-07-24 14:12:48 +010085 ":platform-compat-config",
Santos Cordon4505e5e2020-01-17 15:18:10 +000086 ":display-device-config",
Colin Crosse0b2ee52017-12-05 09:46:29 -080087 "java/com/android/server/EventLogTags.logtags",
88 "java/com/android/server/am/EventLogTags.logtags",
Jeff Changd136e772019-11-05 20:33:52 +080089 "java/com/android/server/wm/EventLogTags.logtags",
Siarhei Vishniakou4dfa4702019-03-25 15:38:11 -070090 "java/com/android/server/policy/EventLogTags.logtags",
Colin Crosse0b2ee52017-12-05 09:46:29 -080091 ],
92
93 libs: [
Anton Hanssona49fb992020-03-19 15:23:32 +000094 "android_system_server_stubs_current",
Colin Crosse0b2ee52017-12-05 09:46:29 -080095 "services.net",
96 "android.hardware.light-V2.0-java",
Jia-yi Chenbfd8f1f2020-02-24 13:27:16 -080097 "android.hardware.power-java",
Colin Crosse0b2ee52017-12-05 09:46:29 -080098 "android.hardware.power-V1.0-java",
99 "android.hardware.tv.cec-V1.0-java",
Steven Morelandf53d7fe2020-01-06 13:40:51 -0800100 "android.hardware.vibrator-java",
Anton Hansson0d95282d2020-03-12 16:56:08 +0000101 "android.net.ipsec.ike.stubs.module_libs_api",
atrost1a945502019-11-04 17:03:54 +0000102 "app-compat-annotations",
Anton Hanssonfe8b0452020-03-07 12:36:42 +0000103 "framework-tethering-stubs-module_libs_api",
Colin Crosse0b2ee52017-12-05 09:46:29 -0800104 ],
105
Anton Hansson11905c62018-11-27 12:10:30 +0000106 required: [
107 "gps_debug.conf",
Adam Pardyl0f1b3d42019-08-19 15:24:11 +0200108 "protolog.conf.json.gz",
Anton Hansson11905c62018-11-27 12:10:30 +0000109 ],
110
Colin Crosse0b2ee52017-12-05 09:46:29 -0800111 static_libs: [
112 "time_zone_distro",
113 "time_zone_distro_installer",
Andrew Sculle6527c12018-01-05 18:33:58 +0000114 "android.hardware.authsecret-V1.0-java",
Tomasz Wasilczykd65b3ca2017-12-13 08:26:25 -0800115 "android.hardware.broadcastradio-V2.0-java",
Colin Crosse0b2ee52017-12-05 09:46:29 -0800116 "android.hardware.health-V1.0-java",
117 "android.hardware.health-V2.0-java",
Stephane Lee90bf8742020-02-06 18:48:03 -0800118 "android.hardware.health-V2.1-java",
Ivailo Karamanolevc176fb82019-12-02 10:41:25 +0100119 "android.hardware.light-java",
Colin Crosse0b2ee52017-12-05 09:46:29 -0800120 "android.hardware.weaver-V1.0-java",
Ilya Matyukhin244aee62020-03-16 18:39:47 +0000121 "android.hardware.biometrics.face-V1.0-java",
Ilya Matyukhinef410e32020-02-04 13:39:48 -0800122 "android.hardware.biometrics.fingerprint-V2.2-java",
Colin Crosse0b2ee52017-12-05 09:46:29 -0800123 "android.hardware.oemlock-V1.0-java",
Colin Crosse0b2ee52017-12-05 09:46:29 -0800124 "android.hardware.configstore-V1.0-java",
125 "android.hardware.contexthub-V1.0-java",
Kenny Rootf76cfc32019-11-08 14:36:03 -0800126 "android.hardware.rebootescrow-java",
Ytai Ben-Tsvi93c117c862019-11-25 12:43:28 -0800127 "android.hardware.soundtrigger-V2.3-java",
Peter Kalauskas65589e92019-01-22 15:41:59 -0800128 "android.hidl.manager-V1.2-java",
Lorenzo Colittife0c38a2019-05-21 19:45:09 +0900129 "dnsresolver_aidl_interface-V2-java",
Lorenzo Colitti31324cb2018-12-11 13:45:14 +0900130 "netd_event_listener_interface-java",
Winson62ac8b52019-12-04 08:36:48 -0800131 "overlayable_policy_aidl-java",
Colin Crosse0b2ee52017-12-05 09:46:29 -0800132 ],
Bernardo Rufino60c39b32019-11-08 16:11:15 +0000133
134 plugins: [
135 "compat-changeid-annotation-processor",
136 ],
Colin Crosse0b2ee52017-12-05 09:46:29 -0800137}
138
139java_genrule {
140 name: "services.core.priorityboosted",
Colin Cross4c0b06b2017-12-12 19:43:04 -0800141 srcs: [":services.core.unboosted"],
Colin Crosse0b2ee52017-12-05 09:46:29 -0800142 tools: ["lockedregioncodeinjection"],
143 cmd: "$(location lockedregioncodeinjection) " +
Wale Ogunwaledb485de2018-10-29 09:47:07 -0700144 " --targets \"Lcom/android/server/am/ActivityManagerService;,Lcom/android/server/wm/WindowManagerGlobalLock;\" " +
Colin Crosse0b2ee52017-12-05 09:46:29 -0800145 " --pre \"com/android/server/am/ActivityManagerService.boostPriorityForLockedSection,com/android/server/wm/WindowManagerService.boostPriorityForLockedSection\" " +
146 " --post \"com/android/server/am/ActivityManagerService.resetPriorityAfterLockedSection,com/android/server/wm/WindowManagerService.resetPriorityAfterLockedSection\" " +
147 " -o $(out) " +
148 " -i $(in)",
149 out: ["services.core.priorityboosted.jar"],
150}
Colin Cross4c0b06b2017-12-12 19:43:04 -0800151
152java_library {
153 name: "services.core",
154 static_libs: ["services.core.priorityboosted"],
155}
Anton Hansson11905c62018-11-27 12:10:30 +0000156
157
158prebuilt_etc {
159 name: "gps_debug.conf",
160 src: "java/com/android/server/location/gps_debug.conf",
161}
Adam Pardyl0f1b3d42019-08-19 15:24:11 +0200162
163genrule {
164 name: "services.core.json.gz",
165 srcs: [":checked-protolog.json"],
166 out: ["services.core.protolog.json.gz"],
Adrian Roosa91161e2019-10-09 13:16:33 +0200167 cmd: "$(location minigzip) -c < $(in) > $(out)",
168 tools: ["minigzip"],
Adam Pardyl0f1b3d42019-08-19 15:24:11 +0200169}
170
171prebuilt_etc {
172 name: "protolog.conf.json.gz",
173 src: ":services.core.json.gz",
174}