blob: 0f8caf4330d7f3ef874a363904e73562ef4b105f [file] [log] [blame]
Hungming Chened7b4602021-12-17 15:03:47 +08001// Copyright (C) 2022 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
15package {
16 default_applicable_licenses: ["Android-Apache-2.0"],
17}
18
19cc_library_static {
20 name: "libclat",
21 defaults: ["netd_defaults"],
Hungming Chen8ebdb6f2022-01-16 14:44:11 +080022 header_libs: [
23 "bpf_connectivity_headers",
24 "bpf_headers",
25 "bpf_syscall_wrappers",
Maciej Żenczykowski0bbe3d22022-01-31 20:08:32 -080026 "libbase_headers",
Hungming Chen8ebdb6f2022-01-16 14:44:11 +080027 ],
28 srcs: [
29 "TcUtils.cpp", // TODO: move to frameworks/libs/net
30 "bpfhelper.cpp",
31 "clatutils.cpp",
32 ],
Hungming Chened7b4602021-12-17 15:03:47 +080033 stl: "libc++_static",
Hungming Chen8ebdb6f2022-01-16 14:44:11 +080034 static_libs: [
Hungming Chen8ebdb6f2022-01-16 14:44:11 +080035 "libip_checksum",
36 "libnetdutils", // for netdutils/UidConstants.h in bpf_shared.h
37 ],
Hungming Chen86a56de2021-12-17 19:40:59 +080038 shared_libs: ["liblog"],
Hungming Chened7b4602021-12-17 15:03:47 +080039 export_include_dirs: ["include"],
40 min_sdk_version: "30",
41 apex_available: ["com.android.tethering"],
42}
43
44cc_test {
45 name: "libclat_test",
46 defaults: ["netd_defaults"],
47 test_suites: ["device-tests"],
Hungming Chen8ebdb6f2022-01-16 14:44:11 +080048 header_libs: [
49 "bpf_connectivity_headers",
50 "bpf_headers",
51 "bpf_syscall_wrappers",
52 ],
Hungming Chened7b4602021-12-17 15:03:47 +080053 srcs: [
Hungming Chen8ebdb6f2022-01-16 14:44:11 +080054 "TcUtilsTest.cpp",
Hungming Chened7b4602021-12-17 15:03:47 +080055 "clatutils_test.cpp",
56 ],
57 static_libs: [
58 "libbase",
59 "libclat",
60 "libip_checksum",
Hungming Chen8ff032b2021-12-17 21:12:53 +080061 "libnetd_test_tun_interface",
Hungming Chen8ebdb6f2022-01-16 14:44:11 +080062 "libnetdutils", // for netdutils/UidConstants.h in bpf_shared.h
63 "libtcutils",
Hungming Chened7b4602021-12-17 15:03:47 +080064 ],
Hungming Chen8ff032b2021-12-17 21:12:53 +080065 shared_libs: [
66 "liblog",
67 "libnetutils",
68 ],
69 require_root: true,
Hungming Chen8ebdb6f2022-01-16 14:44:11 +080070}