blob: 9222b176d7bc5fc69ca2b68ddb9a581d1421d0aa [file] [log] [blame]
markchien38c32482021-09-29 12:19:44 +08001// Copyright (C) 2021 The Android Open Source Project
2//
3// Licensed under the Apache License, Version 2.0 (the "License");
4// you may not use this file except in compliance with the License.
5// You may obtain a copy of the License at
6//
7// http://www.apache.org/licenses/LICENSE-2.0
8//
9// Unless required by applicable law or agreed to in writing, software
10// distributed under the License is distributed on an "AS IS" BASIS,
11// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12// See the License for the specific language governing permissions and
13// limitations under the License.
14
Bob Badour957b6942021-10-07 11:58:21 -070015package {
Aditya Choudhary01b5ede2024-01-31 11:08:57 +000016 default_team: "trendy_team_fwk_core_networking",
Bob Badour957b6942021-10-07 11:58:21 -070017 default_applicable_licenses: ["Android-Apache-2.0"],
18}
19
markchien38c32482021-09-29 12:19:44 +080020java_library {
21 name: "netd_aidl_interface-lateststable-java",
22 sdk_version: "system_current",
Maciej Żenczykowski127a1442023-09-19 23:17:10 +000023 min_sdk_version: "30",
markchien38c32482021-09-29 12:19:44 +080024 static_libs: [
Lorenzo Colittid731b812025-02-12 19:50:08 +090025 "netd_aidl_interface-V17-java",
markchien38c32482021-09-29 12:19:44 +080026 ],
27 apex_available: [
28 "//apex_available:platform", // used from services.net
markchien38c32482021-09-29 12:19:44 +080029 "com.android.tethering",
30 "com.android.wifi",
31 ],
32}
33
34cc_library_static {
35 name: "netd_event_listener_interface-lateststable-ndk",
36 whole_static_libs: [
37 "netd_event_listener_interface-V1-ndk",
38 ],
39 apex_available: [
40 "com.android.resolv",
41 ],
Maciej Żenczykowski127a1442023-09-19 23:17:10 +000042 min_sdk_version: "30",
markchien38c32482021-09-29 12:19:44 +080043}
44
45cc_library_static {
46 name: "netd_aidl_interface-lateststable-ndk",
47 whole_static_libs: [
Lorenzo Colittid731b812025-02-12 19:50:08 +090048 "netd_aidl_interface-V17-ndk",
markchien38c32482021-09-29 12:19:44 +080049 ],
50 apex_available: [
51 "com.android.resolv",
Wayne Ma67a69e72022-01-12 11:44:27 +080052 "com.android.tethering",
markchien38c32482021-09-29 12:19:44 +080053 ],
Maciej Żenczykowski127a1442023-09-19 23:17:10 +000054 min_sdk_version: "30",
markchien38c32482021-09-29 12:19:44 +080055}
56
Ken Chenae296b22022-04-20 15:13:31 +080057cc_defaults {
58 name: "netd_aidl_interface_lateststable_cpp_static",
Lorenzo Colittid731b812025-02-12 19:50:08 +090059 static_libs: ["netd_aidl_interface-V17-cpp"],
Ken Chenae296b22022-04-20 15:13:31 +080060}
61
62cc_defaults {
63 name: "netd_aidl_interface_lateststable_cpp_shared",
Lorenzo Colittid731b812025-02-12 19:50:08 +090064 shared_libs: ["netd_aidl_interface-V17-cpp"],
Ken Chenae296b22022-04-20 15:13:31 +080065}
66
markchien38c32482021-09-29 12:19:44 +080067aidl_interface {
68 name: "netd_aidl_interface",
69 local_include_dir: "binder",
70 srcs: [
71 "binder/android/net/INetd.aidl",
72 // AIDL interface that callers can implement to receive networking events from netd.
73 "binder/android/net/INetdUnsolicitedEventListener.aidl",
74 "binder/android/net/InterfaceConfigurationParcel.aidl",
Yan Yan11111802022-12-16 02:17:07 +000075 "binder/android/net/IpSecMigrateInfoParcel.aidl",
markchien38c32482021-09-29 12:19:44 +080076 "binder/android/net/MarkMaskParcel.aidl",
77 "binder/android/net/NativeNetworkConfig.aidl",
78 "binder/android/net/NativeNetworkType.aidl",
79 "binder/android/net/NativeVpnType.aidl",
80 "binder/android/net/RouteInfoParcel.aidl",
81 "binder/android/net/TetherConfigParcel.aidl",
82 "binder/android/net/TetherOffloadRuleParcel.aidl",
83 "binder/android/net/TetherStatsParcel.aidl",
84 "binder/android/net/UidRangeParcel.aidl",
85 // Add new AIDL classes in android.net.netd.aidl to consist with other network modules.
86 "binder/android/net/netd/aidl/**/*.aidl",
87 ],
88 backend: {
89 cpp: {
90 gen_log: true,
91 },
92 java: {
93 // TODO: Remove apex_available and restrict visibility to only mainline modules that are
94 // either outside the system server or use jarjar to rename the generated AIDL classes.
95 apex_available: [
96 "//apex_available:platform", // used from services.net
markchien38c32482021-09-29 12:19:44 +080097 "com.android.tethering",
98 "com.android.wifi",
99 ],
Maciej Żenczykowski127a1442023-09-19 23:17:10 +0000100 // this is part of updatable modules(NetworkStack) which targets 30(R)
101 min_sdk_version: "30",
markchien38c32482021-09-29 12:19:44 +0800102 },
103 ndk: {
104 apex_available: [
105 "//apex_available:platform",
Wayne Ma67a69e72022-01-12 11:44:27 +0800106 "com.android.tethering",
markchien38c32482021-09-29 12:19:44 +0800107 ],
Maciej Żenczykowski127a1442023-09-19 23:17:10 +0000108 // This is necessary for the DnsResovler tests to run in Android R.
109 // Soong would recognize this value and produce the R compatible aidl library.
110 min_sdk_version: "30",
markchien38c32482021-09-29 12:19:44 +0800111 },
112 },
Hungming Chened129262022-04-26 19:10:45 +0800113 versions_with_info: [
114 {
115 version: "1",
116 imports: [],
117 },
118 {
119 version: "2",
120 imports: [],
121 },
122 {
123 version: "3",
124 imports: [],
125 },
126 {
127 version: "4",
128 imports: [],
129 },
130 {
131 version: "5",
132 imports: [],
133 },
134 {
135 version: "6",
136 imports: [],
137 },
138 {
139 version: "7",
140 imports: [],
141 },
142 {
143 version: "8",
144 imports: [],
145 },
146 {
147 version: "9",
148 imports: [],
149 },
Lorenzo Colitti747ba672022-06-15 23:39:12 +0900150 {
151 version: "10",
152 imports: [],
153 },
Chalard Jean8a00b8c2022-12-12 19:26:13 +0900154 {
155 version: "11",
156 imports: [],
157 },
Yan Yan11111802022-12-16 02:17:07 +0000158 {
159 version: "12",
160 imports: [],
161 },
Ken Chenda7a00d2022-12-23 17:26:13 +0800162 {
163 version: "13",
164 imports: [],
165 },
Ken Chen91dc3a12023-11-13 12:18:53 +0800166 {
167 version: "14",
168 imports: [],
169 },
Patrick Rohr7959e962024-04-26 11:25:19 -0700170 {
171 version: "15",
172 imports: [],
173 },
Melisa CZ0d08a892025-02-03 22:50:42 +0000174 {
175 version: "16",
176 imports: [],
177 },
Lorenzo Colittid731b812025-02-12 19:50:08 +0900178 {
179 version: "17",
180 imports: [],
181 },
Hungming Chened129262022-04-26 19:10:45 +0800182
markchien38c32482021-09-29 12:19:44 +0800183 ],
Ken Chen91dc3a12023-11-13 12:18:53 +0800184 frozen: true,
Hungming Chened129262022-04-26 19:10:45 +0800185
markchien38c32482021-09-29 12:19:44 +0800186}
187
188java_library {
189 name: "netd_event_listener_interface-lateststable-java",
190 sdk_version: "system_current",
Maciej Żenczykowski127a1442023-09-19 23:17:10 +0000191 min_sdk_version: "30",
markchien38c32482021-09-29 12:19:44 +0800192 static_libs: [
193 "netd_event_listener_interface-V1-java",
194 ],
195 apex_available: [
196 "//apex_available:platform",
markchien38c32482021-09-29 12:19:44 +0800197 "com.android.wifi",
198 "com.android.tethering",
199 ],
200}
201
202aidl_interface {
203 name: "netd_event_listener_interface",
204 local_include_dir: "binder",
205 srcs: [
206 "binder/android/net/metrics/INetdEventListener.aidl",
207 ],
Alex Buynytskyy57bd2e42023-08-17 04:07:50 +0000208
markchien38c32482021-09-29 12:19:44 +0800209 backend: {
210 ndk: {
211 apex_available: [
212 "//apex_available:platform",
213 "com.android.resolv",
214 ],
Maciej Żenczykowski127a1442023-09-19 23:17:10 +0000215 min_sdk_version: "30",
markchien38c32482021-09-29 12:19:44 +0800216 },
217 java: {
218 apex_available: [
219 "//apex_available:platform",
markchien38c32482021-09-29 12:19:44 +0800220 "com.android.wifi",
221 "com.android.tethering",
222 ],
Maciej Żenczykowski127a1442023-09-19 23:17:10 +0000223 min_sdk_version: "30",
markchien38c32482021-09-29 12:19:44 +0800224 },
225 },
Alex Buynytskyy57bd2e42023-08-17 04:07:50 +0000226 versions_with_info: [
227 {
228 version: "1",
229 imports: [],
230 },
231 {
232 version: "2",
233 imports: [],
234 },
235
236 ],
237 frozen: true,
238
markchien38c32482021-09-29 12:19:44 +0800239}
paulhu483b3562022-01-14 15:30:06 +0800240
241aidl_interface {
242 name: "mdns_aidl_interface",
243 local_include_dir: "binder",
244 srcs: [
245 "binder/android/net/mdns/aidl/**/*.aidl",
246 ],
247 backend: {
248 java: {
249 sdk_version: "module_current",
250 apex_available: [
251 "//apex_available:platform",
252 "com.android.tethering",
253 ],
254 min_sdk_version: "30",
255 },
256 },
Ken Chenfe523c22023-12-13 09:44:17 +0800257 versions_with_info: [
258 {
259 version: "1",
260 imports: [],
261 },
Ken Chen15e23742023-12-13 10:06:51 +0800262 {
263 version: "2",
264 imports: [],
265 },
266
Ken Chenfe523c22023-12-13 09:44:17 +0800267 ],
Ken Chen15e23742023-12-13 10:06:51 +0800268 frozen: true,
Ken Chenfe523c22023-12-13 09:44:17 +0800269
paulhu483b3562022-01-14 15:30:06 +0800270}