blob: 43027e161a0c9756f04ae001160d9e1613dad79a [file] [log] [blame]
Remi NGUYEN VAN59262cb2020-12-21 18:40:08 +09001//
2// Copyright (C) 2020 The Android Open Source Project
3//
4// Licensed under the Apache License, Version 2.0 (the "License");
5// you may not use this file except in compliance with the License.
6// You may obtain a copy of the License at
7//
8// http://www.apache.org/licenses/LICENSE-2.0
9//
10// Unless required by applicable law or agreed to in writing, software
11// distributed under the License is distributed on an "AS IS" BASIS,
12// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13// See the License for the specific language governing permissions and
14// limitations under the License.
15//
16
Bob Badour6c7ed9d2021-02-12 17:07:05 -080017package {
Aditya Choudhary01b5ede2024-01-31 11:08:57 +000018 default_team: "trendy_team_fwk_core_networking",
Bob Badour6c7ed9d2021-02-12 17:07:05 -080019 // See: http://go/android-license-faq
Baligh Uddin36847132021-05-23 16:38:40 +000020 default_applicable_licenses: ["Android-Apache-2.0"],
Bob Badour6c7ed9d2021-02-12 17:07:05 -080021}
22
Remi NGUYEN VANc41daa42023-08-14 15:34:20 +090023service_remoteauth_pre_jarjar_lib = "service-remoteauth-pre-jarjar"
24
25// The above variables may have different values
26// depending on the branch, and this comment helps
27// separate them from the rest of the file to avoid merge conflicts
28
Tyler Wearb37f5512021-10-01 13:22:00 -070029aidl_interface {
30 name: "connectivity_native_aidl_interface",
31 local_include_dir: "binder",
Tyler Wearb37f5512021-10-01 13:22:00 -070032 srcs: [
33 "binder/android/net/connectivity/aidl/*.aidl",
34 ],
35 backend: {
36 java: {
37 apex_available: [
38 "com.android.tethering",
39 ],
40 min_sdk_version: "30",
41 },
42 ndk: {
43 apex_available: [
44 "com.android.tethering",
45 ],
46 min_sdk_version: "30",
47 },
48 },
49 versions: ["1"],
50
51}
52
53cc_library_static {
54 name: "connectivity_native_aidl_interface-lateststable-ndk",
55 min_sdk_version: "30",
56 whole_static_libs: [
57 "connectivity_native_aidl_interface-V1-ndk",
58 ],
59 apex_available: [
60 "com.android.tethering",
61 ],
62}
63
64java_library {
65 name: "connectivity_native_aidl_interface-lateststable-java",
66 sdk_version: "system_current",
67 min_sdk_version: "30",
68 static_libs: [
69 "connectivity_native_aidl_interface-V1-java",
70 ],
71 apex_available: [
72 "com.android.tethering",
73 ],
74}
75
markchien8fb75e32021-11-11 17:53:56 +080076// The library name match the service-connectivity jarjar rules that put the JNI utils in the
Remi NGUYEN VAN6a20eed2022-01-31 11:21:08 +090077// android.net.connectivity.com.android.net.module.util package.
markchien8fb75e32021-11-11 17:53:56 +080078cc_library_shared {
Remi NGUYEN VAN6a20eed2022-01-31 11:21:08 +090079 name: "libandroid_net_connectivity_com_android_net_module_util_jni",
markchien8fb75e32021-11-11 17:53:56 +080080 min_sdk_version: "30",
81 cflags: [
82 "-Wall",
83 "-Werror",
84 "-Wno-unused-parameter",
85 "-Wthread-safety",
86 ],
87 srcs: [
88 "jni/com_android_net_module_util/onload.cpp",
89 ],
markchien8fb75e32021-11-11 17:53:56 +080090 static_libs: [
91 "libnet_utils_device_common_bpfjni",
Tyler Wearb37f5512021-10-01 13:22:00 -070092 "libnet_utils_device_common_bpfutils",
markchien8fb75e32021-11-11 17:53:56 +080093 ],
94 shared_libs: [
95 "liblog",
96 "libnativehelper",
97 ],
98 apex_available: [
99 "com.android.tethering",
100 ],
101}
102
Remi NGUYEN VANeaa96582021-01-08 01:19:44 +0000103cc_library_shared {
104 name: "libservice-connectivity",
Remi NGUYEN VANda43ef02021-03-23 14:45:58 +0000105 min_sdk_version: "30",
Remi NGUYEN VAN59262cb2020-12-21 18:40:08 +0900106 cflags: [
107 "-Wall",
108 "-Werror",
109 "-Wno-unused-parameter",
110 "-Wthread-safety",
111 ],
112 srcs: [
Remi NGUYEN VANd9504892022-02-02 13:03:29 +0900113 ":services.connectivity-netstats-jni-sources",
Hungming Chene2cf0552021-12-25 17:05:41 +0800114 "jni/com_android_server_connectivity_ClatCoordinator.cpp",
Kangping Dong192e4b02023-10-25 20:34:21 +0800115 "jni/com_android_server_ServiceManagerWrapper.cpp",
Remi NGUYEN VANeaa96582021-01-08 01:19:44 +0000116 "jni/onload.cpp",
Remi NGUYEN VAN59262cb2020-12-21 18:40:08 +0900117 ],
Remi NGUYEN VANda43ef02021-03-23 14:45:58 +0000118 header_libs: [
Patrick Rohr361b8592022-01-28 15:39:17 +0100119 "bpf_connectivity_headers",
Remi NGUYEN VANda43ef02021-03-23 14:45:58 +0000120 ],
Hungming Chene2cf0552021-12-25 17:05:41 +0800121 static_libs: [
122 "libclat",
123 "libip_checksum",
Remi NGUYEN VANd9504892022-02-02 13:03:29 +0900124 "libmodules-utils-build",
Hungming Chene2cf0552021-12-25 17:05:41 +0800125 "libnetjniutils",
Remi NGUYEN VANd9504892022-02-02 13:03:29 +0900126 "libnet_utils_device_common_bpfjni",
Paul Hu8c8d2b12024-10-15 15:59:31 +0000127 "libnet_utils_device_common_timerfdjni",
Patrick Rohr361b8592022-01-28 15:39:17 +0100128 "netd_aidl_interface-lateststable-ndk",
Hungming Chene2cf0552021-12-25 17:05:41 +0800129 ],
Remi NGUYEN VAN59262cb2020-12-21 18:40:08 +0900130 shared_libs: [
Maciej Żenczykowskidcae3512022-01-31 19:59:32 -0800131 "libbase",
Kangping Dong192e4b02023-10-25 20:34:21 +0800132 "libbinder_ndk",
Remi NGUYEN VANd9504892022-02-02 13:03:29 +0900133 "libcutils",
Maciej Żenczykowskidcae3512022-01-31 19:59:32 -0800134 "libnetdutils",
Remi NGUYEN VAN59262cb2020-12-21 18:40:08 +0900135 "liblog",
136 "libnativehelper",
Remi NGUYEN VANd9504892022-02-02 13:03:29 +0900137 "libnetworkstats",
Remi NGUYEN VAN59262cb2020-12-21 18:40:08 +0900138 ],
Pete Bentleyb1456112021-01-07 13:51:18 +0000139 apex_available: [
Remi NGUYEN VANeaa96582021-01-08 01:19:44 +0000140 "com.android.tethering",
Pete Bentleyb1456112021-01-07 13:51:18 +0000141 ],
142}
143
Remi NGUYEN VAN59262cb2020-12-21 18:40:08 +0900144java_library {
Aaron Huang63338842021-01-08 18:32:00 +0800145 name: "service-connectivity-pre-jarjar",
Remi NGUYEN VAN4ee6c502021-03-22 10:25:12 +0000146 sdk_version: "system_server_current",
Remi NGUYEN VANda43ef02021-03-23 14:45:58 +0000147 min_sdk_version: "30",
Remi NGUYEN VAN02eee9a2023-01-30 19:19:48 +0900148 // NetworkStackApiShimSettingsForCurrentBranch provides the latest available shims depending on
149 // the branch to "service-connectivity".
150 // There are Tethering.apk and TetheringNext.apk variants for the tethering APEX,
151 // which use NetworkStackApiStableShims and NetworkStackApiCurrentShims respectively.
152 // Note that there can be no service-connectivity-next because it would need to be configured in
153 // default_art_config.mk which doesn't support conditionals, hence this scheme of using a
154 // variable here.
155 defaults: ["NetworkStackApiShimSettingsForCurrentBranch"],
Remi NGUYEN VAN59262cb2020-12-21 18:40:08 +0900156 srcs: [
Remi NGUYEN VANcdb45f82021-05-13 12:53:15 +0000157 "src/**/*.java",
Aaron Huang63338842021-01-08 18:32:00 +0800158 ":framework-connectivity-shared-srcs",
Remi NGUYEN VAN4ee6c502021-03-22 10:25:12 +0000159 ":services-connectivity-shared-srcs",
Motomu Utsumi166f9662022-09-01 10:35:29 +0900160 ":statslog-connectivity-java-gen",
Remi NGUYEN VAN59262cb2020-12-21 18:40:08 +0900161 ],
Remi NGUYEN VAN59262cb2020-12-21 18:40:08 +0900162 libs: [
Remi NGUYEN VAN4ee6c502021-03-22 10:25:12 +0000163 "framework-annotations-lib",
Jihoon Kang8401b6a2024-08-30 00:29:58 +0000164 "framework-configinfrastructure.stubs.module_lib",
Remi NGUYEN VAN6a20eed2022-01-31 11:21:08 +0900165 "framework-connectivity-pre-jarjar",
Paul Duffin5118a522022-10-05 18:34:24 +0100166 // The framework-connectivity-t library is only available on T+ platforms
167 // so any calls to it must be protected with a check to ensure that it is
168 // available. The linter will detect any unprotected calls through an API
169 // but not direct calls to the implementation. So, this depends on the
170 // module lib stubs directly to ensure the linter will work correctly
171 // as depending on framework-connectivity-t would cause it to be compiled
172 // against the implementation because the two libraries are in the same
173 // APEX.
paulhu537f7202022-02-08 21:25:28 +0800174 "framework-connectivity-t.stubs.module_lib",
Igor Chernyshev9dac6602022-12-13 19:28:32 -0800175 // TODO: figure out why just using "framework-tethering" uses the stubs, even though both
176 // service-connectivity and framework-tethering are in the same APEX.
177 "framework-tethering.impl",
Jihoon Kang8401b6a2024-08-30 00:29:58 +0000178 "framework-wifi.stubs.module_lib",
Remi NGUYEN VAN59262cb2020-12-21 18:40:08 +0900179 "unsupportedappusage",
Remi NGUYEN VAN907ebd42021-03-08 22:05:03 +0900180 "ServiceConnectivityResources",
Jihoon Kang8401b6a2024-08-30 00:29:58 +0000181 "framework-statsd.stubs.module_lib",
182 "framework-permission.stubs.module_lib",
183 "framework-permission-s.stubs.module_lib",
Remi NGUYEN VAN59262cb2020-12-21 18:40:08 +0900184 ],
185 static_libs: [
Remi NGUYEN VAN6a20eed2022-01-31 11:21:08 +0900186 // Do not add libs here if they are already included
187 // in framework-connectivity
Igor Chernyshev9dac6602022-12-13 19:28:32 -0800188 "androidx.annotation_annotation",
Hungming Chen01f25502022-06-28 22:47:00 +0800189 "connectivity-net-module-utils-bpf",
Tyler Wearb37f5512021-10-01 13:22:00 -0700190 "connectivity_native_aidl_interface-lateststable-java",
Lorenzo Colitti191f1b22024-04-17 22:06:08 +0900191 "dnsresolver_aidl_interface-V15-java",
William Escandeea9e22e2021-08-19 12:26:52 +0200192 "modules-utils-shell-command-handler",
Handa Wang9b0df362024-07-02 13:17:43 +0000193 "net-utils-service-connectivity",
lucaslinef337532021-01-18 11:58:24 +0800194 "netd-client",
Remi NGUYEN VAN4ee6c502021-03-22 10:25:12 +0000195 "networkstack-client",
lifrc0d25c12021-03-09 17:24:46 +0800196 "PlatformProperties",
Remi NGUYEN VANd8bc0fa2021-03-11 15:41:52 +0900197 "service-connectivity-protos",
Frank Li55f79d42022-11-25 06:00:54 +0000198 "service-connectivity-stats-protos",
Remi NGUYEN VAN59262cb2020-12-21 18:40:08 +0900199 ],
200 apex_available: [
Remi NGUYEN VANeaa96582021-01-08 01:19:44 +0000201 "com.android.tethering",
Remi NGUYEN VAN59262cb2020-12-21 18:40:08 +0900202 ],
Cole Fausta52ecf02023-12-20 11:57:07 -0800203 lint: {
Cole Fausta52ecf02023-12-20 11:57:07 -0800204 baseline_filename: "lint-baseline.xml",
Cole Faustbe30b3e2024-01-25 02:41:58 +0000205
Cole Fausta52ecf02023-12-20 11:57:07 -0800206 },
paulhu802ab972021-12-14 01:30:22 +0000207 visibility: [
208 "//packages/modules/Connectivity/service-t",
Yan Yanb4ccc6a2024-11-02 01:37:17 +0000209 "//packages/modules/Connectivity/service-b",
Sandro Montanari9ffc0682024-07-24 15:50:37 +0000210 "//packages/modules/Connectivity/networksecurity:__subpackages__",
paulhu802ab972021-12-14 01:30:22 +0000211 "//packages/modules/Connectivity/tests:__subpackages__",
Kangping Dong192e4b02023-10-25 20:34:21 +0800212 "//packages/modules/Connectivity/thread/service:__subpackages__",
213 "//packages/modules/Connectivity/thread/tests:__subpackages__",
paulhu802ab972021-12-14 01:30:22 +0000214 ],
Remi NGUYEN VAN59262cb2020-12-21 18:40:08 +0900215}
Aaron Huang63338842021-01-08 18:32:00 +0800216
217java_library {
Remi NGUYEN VANd8bc0fa2021-03-11 15:41:52 +0900218 name: "service-connectivity-protos",
Remi NGUYEN VAN4ee6c502021-03-22 10:25:12 +0000219 sdk_version: "system_current",
Remi NGUYEN VANda43ef02021-03-23 14:45:58 +0000220 min_sdk_version: "30",
Remi NGUYEN VANd8bc0fa2021-03-11 15:41:52 +0900221 proto: {
222 type: "nano",
223 },
224 srcs: [
225 ":system-messages-proto-src",
226 ],
227 libs: ["libprotobuf-java-nano"],
228 apex_available: [
Remi NGUYEN VANd8bc0fa2021-03-11 15:41:52 +0900229 "com.android.tethering",
230 ],
Paul Duffin5118a522022-10-05 18:34:24 +0100231 lint: {
232 strict_updatability_linting: true,
Cole Faustbe30b3e2024-01-25 02:41:58 +0000233
Paul Duffin5118a522022-10-05 18:34:24 +0100234 },
Remi NGUYEN VANd8bc0fa2021-03-11 15:41:52 +0900235}
236
Paul Duffin5fc809f2022-05-20 14:15:42 +0000237java_defaults {
238 name: "service-connectivity-defaults",
Remi NGUYEN VAN4ee6c502021-03-22 10:25:12 +0000239 sdk_version: "system_server_current",
Remi NGUYEN VANda43ef02021-03-23 14:45:58 +0000240 min_sdk_version: "30",
zhidoub33a2632022-09-06 17:58:20 +0000241 defaults: [
242 "standalone-system-server-module-optimize-defaults",
243 ],
paulhu802ab972021-12-14 01:30:22 +0000244 // This library combines system server jars that have access to different bootclasspath jars.
245 // Lower SDK service jars must not depend on higher SDK jars as that would let them
246 // transitively depend on the wrong bootclasspath jars. Sources also cannot be added here as
Remi NGUYEN VAN371e7f72022-07-25 18:52:58 +0900247 // they would depend on bootclasspath jars that may not be available.
lifrc0d25c12021-03-09 17:24:46 +0800248 static_libs: [
Aaron Huang63338842021-01-08 18:32:00 +0800249 "service-connectivity-pre-jarjar",
paulhu802ab972021-12-14 01:30:22 +0000250 "service-connectivity-tiramisu-pre-jarjar",
Remi NGUYEN VANb6cde3d2022-03-10 04:32:15 +0000251 "service-nearby-pre-jarjar",
Sandro Montanari9ffc0682024-07-24 15:50:37 +0000252 "service-networksecurity-pre-jarjar",
Remi NGUYEN VANc41daa42023-08-14 15:34:20 +0900253 service_remoteauth_pre_jarjar_lib,
Kangping Donge7fef892023-08-11 15:30:09 +0800254 "service-thread-pre-jarjar",
Yan Yanb4ccc6a2024-11-02 01:37:17 +0000255 ] + select(release_flag("RELEASE_MOVE_VCN_TO_MAINLINE"), {
256 true: ["service-connectivity-b-pre-jarjar"],
257 default: [],
258 }),
259
Remi NGUYEN VAN371e7f72022-07-25 18:52:58 +0900260 // The below libraries are not actually needed to build since no source is compiled
261 // (only combining prebuilt static_libs), but they are necessary so that R8 has the right
262 // references to optimize the code. Without these, there will be missing class warnings and
263 // code may be wrongly optimized.
264 // R8 runs after jarjar, so the framework-X libraries need to be the post-jarjar artifacts
265 // (.impl), if they are not just stubs, so that the name of jarjared classes match.
266 libs: [
267 "androidx.annotation_annotation",
268 "framework-annotations-lib",
269 "framework-connectivity.impl",
270 "framework-connectivity-t.impl",
Igor Chernyshev9dac6602022-12-13 19:28:32 -0800271 "framework-tethering.impl",
Jihoon Kang8401b6a2024-08-30 00:29:58 +0000272 "framework-wifi.stubs.module_lib",
Remi NGUYEN VAN371e7f72022-07-25 18:52:58 +0900273 "libprotobuf-java-nano",
Jihoon Kang8401b6a2024-08-30 00:29:58 +0000274 "framework-permission.stubs.module_lib",
275 "framework-permission-s.stubs.module_lib",
Remi NGUYEN VAN371e7f72022-07-25 18:52:58 +0900276 ],
Remi NGUYEN VAN6a20eed2022-01-31 11:21:08 +0900277 jarjar_rules: ":connectivity-jarjar-rules",
Aaron Huang63338842021-01-08 18:32:00 +0800278 apex_available: [
Aaron Huang63338842021-01-08 18:32:00 +0800279 "com.android.tethering",
280 ],
Remi NGUYEN VANc6f8fb02022-04-20 18:58:53 +0900281 optimize: {
Remi NGUYEN VANc6f8fb02022-04-20 18:58:53 +0900282 proguard_flags_files: ["proguard.flags"],
283 },
Aaron Huang63338842021-01-08 18:32:00 +0800284}
Remi NGUYEN VAN8ea5ee62021-06-28 18:48:43 +0900285
Paul Duffin5fc809f2022-05-20 14:15:42 +0000286// A special library created strictly for use by the tests as they need the
287// implementation library but that is not available when building from prebuilts.
288// Using a library with a different name to what is used by the prebuilts ensures
289// that this will never depend on the prebuilt.
290// Switching service-connectivity to a java_sdk_library would also have worked as
291// that has built in support for managing this but that is too big a change at this
292// point.
293java_library {
294 name: "service-connectivity-for-tests",
295 defaults: ["service-connectivity-defaults"],
296}
297
298java_library {
299 name: "service-connectivity",
300 defaults: ["service-connectivity-defaults"],
301 installable: true,
302}
303
Frank Lie6b47f32022-10-25 18:57:10 +0000304java_library_static {
305 name: "service-connectivity-stats-protos",
306 sdk_version: "system_current",
307 min_sdk_version: "30",
308 proto: {
309 type: "lite",
310 },
311 srcs: [
312 "src/com/android/metrics/stats.proto",
313 ],
314 static_libs: ["ConnectivityServiceprotos"],
315 apex_available: ["com.android.tethering"],
316}
317
Cole Faust9ff8f4c2024-10-22 16:31:00 -0700318java_genrule {
Remi NGUYEN VAN8ea5ee62021-06-28 18:48:43 +0900319 name: "connectivity-jarjar-rules",
Remi NGUYEN VANe55a88d2022-04-20 15:59:16 +0900320 defaults: ["jarjar-rules-combine-defaults"],
321 srcs: [
322 ":framework-connectivity-jarjar-rules",
323 ":service-connectivity-jarjar-gen",
324 ":service-nearby-jarjar-gen",
Sandro Montanari9ffc0682024-07-24 15:50:37 +0000325 ":service-networksecurity-jarjar-gen",
Casey Borders13a35ea2023-07-13 00:30:38 +0000326 ":service-remoteauth-jarjar-gen",
Kangping Donge7fef892023-08-11 15:30:09 +0800327 ":service-thread-jarjar-gen",
Remi NGUYEN VANe55a88d2022-04-20 15:59:16 +0900328 ],
329 out: ["connectivity-jarjar-rules.txt"],
Remi NGUYEN VAN8ea5ee62021-06-28 18:48:43 +0900330 visibility: ["//packages/modules/Connectivity:__subpackages__"],
331}
Wayne Ma0ea3bdc2022-01-12 01:12:11 +0800332
333// TODO: This filegroup temporary exposes for NetworkStats. It should be
334// removed right after NetworkStats moves into mainline module.
335filegroup {
336 name: "traffic-controller-utils",
337 srcs: ["src/com/android/server/BpfNetMaps.java"],
338 visibility: ["//packages/modules/Connectivity:__subpackages__"],
339}
Remi NGUYEN VANe55a88d2022-04-20 15:59:16 +0900340
341java_genrule {
342 name: "service-connectivity-jarjar-gen",
343 tool_files: [
344 ":service-connectivity-pre-jarjar{.jar}",
Yan Yanb4ccc6a2024-11-02 01:37:17 +0000345 ":service-connectivity-b-pre-jarjar{.jar}",
Remi NGUYEN VANe55a88d2022-04-20 15:59:16 +0900346 ":service-connectivity-tiramisu-pre-jarjar{.jar}",
347 "jarjar-excludes.txt",
348 ],
349 tools: [
350 "jarjar-rules-generator",
351 ],
352 out: ["service_connectivity_jarjar_rules.txt"],
353 cmd: "$(location jarjar-rules-generator) " +
Remi NGUYEN VAN0bd90f12022-08-10 20:15:46 +0900354 "$(location :service-connectivity-pre-jarjar{.jar}) " +
Yan Yanb4ccc6a2024-11-02 01:37:17 +0000355 "$(location :service-connectivity-b-pre-jarjar{.jar}) " +
Remi NGUYEN VANe55a88d2022-04-20 15:59:16 +0900356 "$(location :service-connectivity-tiramisu-pre-jarjar{.jar}) " +
357 "--prefix android.net.connectivity " +
358 "--excludes $(location jarjar-excludes.txt) " +
359 "--output $(out)",
360 visibility: ["//visibility:private"],
361}
362
363java_genrule {
364 name: "service-nearby-jarjar-gen",
365 tool_files: [
366 ":service-nearby-pre-jarjar{.jar}",
367 "jarjar-excludes.txt",
368 ],
369 tools: [
370 "jarjar-rules-generator",
371 ],
372 out: ["service_nearby_jarjar_rules.txt"],
373 cmd: "$(location jarjar-rules-generator) " +
Remi NGUYEN VAN0bd90f12022-08-10 20:15:46 +0900374 "$(location :service-nearby-pre-jarjar{.jar}) " +
Remi NGUYEN VANe55a88d2022-04-20 15:59:16 +0900375 "--prefix com.android.server.nearby " +
376 "--excludes $(location jarjar-excludes.txt) " +
377 "--output $(out)",
378 visibility: ["//visibility:private"],
379}
Motomu Utsumi166f9662022-09-01 10:35:29 +0900380
Casey Borders13a35ea2023-07-13 00:30:38 +0000381java_genrule {
382 name: "service-remoteauth-jarjar-gen",
383 tool_files: [
Remi NGUYEN VANc41daa42023-08-14 15:34:20 +0900384 ":" + service_remoteauth_pre_jarjar_lib + "{.jar}",
Casey Borders13a35ea2023-07-13 00:30:38 +0000385 "jarjar-excludes.txt",
386 ],
387 tools: [
388 "jarjar-rules-generator",
389 ],
390 out: ["service_remoteauth_jarjar_rules.txt"],
391 cmd: "$(location jarjar-rules-generator) " +
Remi NGUYEN VANc41daa42023-08-14 15:34:20 +0900392 "$(location :" + service_remoteauth_pre_jarjar_lib + "{.jar}) " +
Casey Borders13a35ea2023-07-13 00:30:38 +0000393 "--prefix com.android.server.remoteauth " +
394 "--excludes $(location jarjar-excludes.txt) " +
395 "--output $(out)",
396 visibility: ["//visibility:private"],
397}
398
Kangping Donge7fef892023-08-11 15:30:09 +0800399java_genrule {
400 name: "service-thread-jarjar-gen",
401 tool_files: [
402 ":service-thread-pre-jarjar{.jar}",
403 "jarjar-excludes.txt",
404 ],
405 tools: [
406 "jarjar-rules-generator",
407 ],
408 out: ["service_thread_jarjar_rules.txt"],
409 cmd: "$(location jarjar-rules-generator) " +
410 "$(location :service-thread-pre-jarjar{.jar}) " +
411 "--prefix com.android.server.thread " +
412 "--excludes $(location jarjar-excludes.txt) " +
413 "--output $(out)",
414 visibility: ["//visibility:private"],
415}
416
Sandro Montanari9ffc0682024-07-24 15:50:37 +0000417java_genrule {
418 name: "service-networksecurity-jarjar-gen",
419 tool_files: [
420 ":service-networksecurity-pre-jarjar{.jar}",
421 "jarjar-excludes.txt",
422 ],
423 tools: [
424 "jarjar-rules-generator",
425 ],
426 out: ["service_ct_jarjar_rules.txt"],
427 cmd: "$(location jarjar-rules-generator) " +
428 "$(location :service-networksecurity-pre-jarjar{.jar}) " +
429 "--prefix com.android.server.net.ct " +
430 "--excludes $(location jarjar-excludes.txt) " +
431 "--output $(out)",
432 visibility: ["//visibility:private"],
433}
434
Motomu Utsumi166f9662022-09-01 10:35:29 +0900435genrule {
Paul Duffin5118a522022-10-05 18:34:24 +0100436 name: "statslog-connectivity-java-gen",
437 tools: ["stats-log-api-gen"],
438 cmd: "$(location stats-log-api-gen) --java $(out) --module connectivity --javaPackage com.android.server --javaClass ConnectivityStatsLog",
439 out: ["com/android/server/ConnectivityStatsLog.java"],
Motomu Utsumi166f9662022-09-01 10:35:29 +0900440}