blob: f2c569fd0cdac76a049006ab3d02d7662b72d0d4 [file] [log] [blame]
Ken Chenf2bb7b12022-01-22 19:17:20 +08001//
2// Copyright (C) 2017 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
17package {
Ken Chenf426b2b2022-01-23 15:39:13 +080018 default_applicable_licenses: ["Android-Apache-2.0"],
Ken Chenf2bb7b12022-01-22 19:17:20 +080019}
20
21cc_library {
Ken Chenf426b2b2022-01-23 15:39:13 +080022 name: "libnetworkstats",
Ken Chenf2bb7b12022-01-22 19:17:20 +080023 vendor_available: false,
24 host_supported: false,
25 header_libs: ["bpf_connectivity_headers"],
26 srcs: [
Ryan Zuklie0b9478b2023-01-10 13:45:39 -080027 "BpfNetworkStats.cpp",
28 "NetworkTraceHandler.cpp",
Ryan Zuklie75de7432023-03-07 10:15:32 -080029 "NetworkTracePoller.cpp",
Ken Chenf2bb7b12022-01-22 19:17:20 +080030 ],
31 shared_libs: [
32 "libbase",
33 "liblog",
Ken Chenf2bb7b12022-01-22 19:17:20 +080034 ],
Ryan Zukliea603ce52023-01-10 14:39:03 -080035 static_libs: [
36 "libperfetto_client_experimental",
37 ],
38 export_static_lib_headers: [
39 "libperfetto_client_experimental",
40 ],
Ken Chenf2bb7b12022-01-22 19:17:20 +080041 export_include_dirs: ["include"],
Ken Chenf426b2b2022-01-23 15:39:13 +080042 cflags: [
43 "-Wall",
44 "-Werror",
45 "-Wno-unused-parameter",
46 "-Wthread-safety",
47 ],
Ken Chenf2bb7b12022-01-22 19:17:20 +080048 sanitize: {
49 cfi: true,
50 },
Ken Chenf426b2b2022-01-23 15:39:13 +080051 apex_available: [
Ken Chenf426b2b2022-01-23 15:39:13 +080052 "com.android.tethering",
53 ],
54 min_sdk_version: "30",
Ken Chenf2bb7b12022-01-22 19:17:20 +080055}
56
57cc_test {
Ken Chenf426b2b2022-01-23 15:39:13 +080058 name: "libnetworkstats_test",
Ken Chenb9266bf2022-05-25 15:34:17 +080059 test_suites: ["general-tests", "mts-tethering"],
60 test_config_template: ":net_native_test_config_template",
Ken Chenf426b2b2022-01-23 15:39:13 +080061 require_root: true, // required by setrlimitForTest()
Ken Chenf2bb7b12022-01-22 19:17:20 +080062 header_libs: ["bpf_connectivity_headers"],
63 srcs: [
64 "BpfNetworkStatsTest.cpp",
Ryan Zuklie75de7432023-03-07 10:15:32 -080065 "NetworkTracePollerTest.cpp",
Ken Chenf2bb7b12022-01-22 19:17:20 +080066 ],
Ken Chenf426b2b2022-01-23 15:39:13 +080067 cflags: [
68 "-Wall",
69 "-Werror",
70 "-Wno-unused-parameter",
71 "-Wthread-safety",
72 ],
Lorenzo Colitti0db496e2022-02-07 09:01:37 +090073 static_libs: [
74 "libgmock",
75 "libnetworkstats",
Ryan Zukliea603ce52023-01-10 14:39:03 -080076 "libperfetto_client_experimental",
Lorenzo Colitti0db496e2022-02-07 09:01:37 +090077 ],
Ken Chenf2bb7b12022-01-22 19:17:20 +080078 shared_libs: [
79 "libbase",
80 "liblog",
Ryan Zuklie0b9478b2023-01-10 13:45:39 -080081 "libandroid_net",
Ken Chenf2bb7b12022-01-22 19:17:20 +080082 ],
Ken Chenb9266bf2022-05-25 15:34:17 +080083 compile_multilib: "both",
84 multilib: {
85 lib32: {
86 suffix: "32",
87 },
88 lib64: {
89 suffix: "64",
90 },
91 },
Ken Chenf2bb7b12022-01-22 19:17:20 +080092}