blob: 5e208d8dd5c01fc5d54964be47ecad75a14d8034 [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",
26 ],
27 srcs: [
28 "TcUtils.cpp", // TODO: move to frameworks/libs/net
29 "bpfhelper.cpp",
30 "clatutils.cpp",
31 ],
Hungming Chened7b4602021-12-17 15:03:47 +080032 stl: "libc++_static",
Hungming Chen8ebdb6f2022-01-16 14:44:11 +080033 static_libs: [
34 "libbase",
35 "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}