blob: 525160dd60932547439ad858955e71f0ad7cfef7 [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 {
16 default_applicable_licenses: ["Android-Apache-2.0"],
17}
18
markchien38c32482021-09-29 12:19:44 +080019java_library {
20 name: "netd_aidl_interface-lateststable-java",
21 sdk_version: "system_current",
22 min_sdk_version: "29",
23 static_libs: [
Ken Chenda7a00d2022-12-23 17:26:13 +080024 "netd_aidl_interface-V13-java",
markchien38c32482021-09-29 12:19:44 +080025 ],
26 apex_available: [
27 "//apex_available:platform", // used from services.net
markchien38c32482021-09-29 12:19:44 +080028 "com.android.tethering",
29 "com.android.wifi",
30 ],
31}
32
33cc_library_static {
34 name: "netd_event_listener_interface-lateststable-ndk",
35 whole_static_libs: [
36 "netd_event_listener_interface-V1-ndk",
37 ],
38 apex_available: [
39 "com.android.resolv",
40 ],
41 min_sdk_version: "29",
42}
43
44cc_library_static {
45 name: "netd_aidl_interface-lateststable-ndk",
46 whole_static_libs: [
Ken Chenda7a00d2022-12-23 17:26:13 +080047 "netd_aidl_interface-V13-ndk",
markchien38c32482021-09-29 12:19:44 +080048 ],
49 apex_available: [
50 "com.android.resolv",
Wayne Ma67a69e72022-01-12 11:44:27 +080051 "com.android.tethering",
markchien38c32482021-09-29 12:19:44 +080052 ],
53 min_sdk_version: "29",
54}
55
Ken Chenae296b22022-04-20 15:13:31 +080056cc_defaults {
57 name: "netd_aidl_interface_lateststable_cpp_static",
Ken Chenda7a00d2022-12-23 17:26:13 +080058 static_libs: ["netd_aidl_interface-V13-cpp"],
Ken Chenae296b22022-04-20 15:13:31 +080059}
60
61cc_defaults {
62 name: "netd_aidl_interface_lateststable_cpp_shared",
Ken Chenda7a00d2022-12-23 17:26:13 +080063 shared_libs: ["netd_aidl_interface-V13-cpp"],
Ken Chenae296b22022-04-20 15:13:31 +080064}
65
markchien38c32482021-09-29 12:19:44 +080066aidl_interface {
67 name: "netd_aidl_interface",
68 local_include_dir: "binder",
69 srcs: [
70 "binder/android/net/INetd.aidl",
71 // AIDL interface that callers can implement to receive networking events from netd.
72 "binder/android/net/INetdUnsolicitedEventListener.aidl",
73 "binder/android/net/InterfaceConfigurationParcel.aidl",
Yan Yan11111802022-12-16 02:17:07 +000074 "binder/android/net/IpSecMigrateInfoParcel.aidl",
markchien38c32482021-09-29 12:19:44 +080075 "binder/android/net/MarkMaskParcel.aidl",
76 "binder/android/net/NativeNetworkConfig.aidl",
77 "binder/android/net/NativeNetworkType.aidl",
78 "binder/android/net/NativeVpnType.aidl",
79 "binder/android/net/RouteInfoParcel.aidl",
80 "binder/android/net/TetherConfigParcel.aidl",
81 "binder/android/net/TetherOffloadRuleParcel.aidl",
82 "binder/android/net/TetherStatsParcel.aidl",
83 "binder/android/net/UidRangeParcel.aidl",
84 // Add new AIDL classes in android.net.netd.aidl to consist with other network modules.
85 "binder/android/net/netd/aidl/**/*.aidl",
86 ],
87 backend: {
88 cpp: {
89 gen_log: true,
90 },
91 java: {
92 // TODO: Remove apex_available and restrict visibility to only mainline modules that are
93 // either outside the system server or use jarjar to rename the generated AIDL classes.
94 apex_available: [
95 "//apex_available:platform", // used from services.net
markchien38c32482021-09-29 12:19:44 +080096 "com.android.tethering",
97 "com.android.wifi",
98 ],
99 // this is part of updatable modules(NetworkStack) which targets 29(Q)
100 min_sdk_version: "29",
101 },
102 ndk: {
103 apex_available: [
104 "//apex_available:platform",
Wayne Ma67a69e72022-01-12 11:44:27 +0800105 "com.android.tethering",
markchien38c32482021-09-29 12:19:44 +0800106 ],
107 // This is necessary for the DnsResovler tests to run in Android Q.
108 // Soong would recognize this value and produce the Q compatible aidl library.
109 min_sdk_version: "29",
110 },
111 },
Hungming Chened129262022-04-26 19:10:45 +0800112 versions_with_info: [
113 {
114 version: "1",
115 imports: [],
116 },
117 {
118 version: "2",
119 imports: [],
120 },
121 {
122 version: "3",
123 imports: [],
124 },
125 {
126 version: "4",
127 imports: [],
128 },
129 {
130 version: "5",
131 imports: [],
132 },
133 {
134 version: "6",
135 imports: [],
136 },
137 {
138 version: "7",
139 imports: [],
140 },
141 {
142 version: "8",
143 imports: [],
144 },
145 {
146 version: "9",
147 imports: [],
148 },
Lorenzo Colitti747ba672022-06-15 23:39:12 +0900149 {
150 version: "10",
151 imports: [],
152 },
Chalard Jean8a00b8c2022-12-12 19:26:13 +0900153 {
154 version: "11",
155 imports: [],
156 },
Yan Yan11111802022-12-16 02:17:07 +0000157 {
158 version: "12",
159 imports: [],
160 },
Ken Chenda7a00d2022-12-23 17:26:13 +0800161 {
162 version: "13",
163 imports: [],
164 },
Hungming Chened129262022-04-26 19:10:45 +0800165
markchien38c32482021-09-29 12:19:44 +0800166 ],
Hungming Chened129262022-04-26 19:10:45 +0800167
markchien38c32482021-09-29 12:19:44 +0800168}
169
170java_library {
171 name: "netd_event_listener_interface-lateststable-java",
172 sdk_version: "system_current",
173 min_sdk_version: "29",
174 static_libs: [
175 "netd_event_listener_interface-V1-java",
176 ],
177 apex_available: [
178 "//apex_available:platform",
markchien38c32482021-09-29 12:19:44 +0800179 "com.android.wifi",
180 "com.android.tethering",
181 ],
182}
183
184aidl_interface {
185 name: "netd_event_listener_interface",
186 local_include_dir: "binder",
187 srcs: [
188 "binder/android/net/metrics/INetdEventListener.aidl",
189 ],
190 versions: ["1"],
191 backend: {
192 ndk: {
193 apex_available: [
194 "//apex_available:platform",
195 "com.android.resolv",
196 ],
197 min_sdk_version: "29",
198 },
199 java: {
200 apex_available: [
201 "//apex_available:platform",
markchien38c32482021-09-29 12:19:44 +0800202 "com.android.wifi",
203 "com.android.tethering",
204 ],
205 min_sdk_version: "29",
206 },
207 },
208}
paulhu483b3562022-01-14 15:30:06 +0800209
paulhu973f6f82022-03-31 02:23:34 +0000210java_library {
211 name: "mdns_aidl_interface-lateststable-java",
212 sdk_version: "module_current",
213 min_sdk_version: "30",
214 static_libs: [
215 "mdns_aidl_interface-V1-java",
216 ],
217 apex_available: [
218 "//apex_available:platform",
219 "com.android.tethering",
220 ],
221}
222
paulhu483b3562022-01-14 15:30:06 +0800223aidl_interface {
224 name: "mdns_aidl_interface",
225 local_include_dir: "binder",
226 srcs: [
227 "binder/android/net/mdns/aidl/**/*.aidl",
228 ],
229 backend: {
230 java: {
231 sdk_version: "module_current",
232 apex_available: [
233 "//apex_available:platform",
234 "com.android.tethering",
235 ],
236 min_sdk_version: "30",
237 },
238 },
paulhu973f6f82022-03-31 02:23:34 +0000239 versions: ["1"],
paulhu483b3562022-01-14 15:30:06 +0800240}