blob: b4413e12ddd6db779763c9208447d3ef96f3de58 [file] [log] [blame]
Vova Sharaienko3aaf79b2023-01-13 20:51:30 +00001//
2// Copyright (C) 2023 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//
16package {
17 default_applicable_licenses: ["Android-Apache-2.0"],
18}
19
Vova Sharaienko75f86002023-02-09 01:51:07 +000020cc_defaults {
21 name: "expresslog_defaults",
Vova Sharaienko3aaf79b2023-01-13 20:51:30 +000022 srcs: [
23 "Counter.cpp",
Vova Sharaienko75f86002023-02-09 01:51:07 +000024 "Histogram.cpp",
Vova Sharaienko3aaf79b2023-01-13 20:51:30 +000025 ],
Vova Sharaienko75f86002023-02-09 01:51:07 +000026}
27
28cc_library {
29 name: "libexpresslog",
Vova Sharaienko717b4a72024-09-26 21:11:51 +000030 host_supported: true,
Vova Sharaienko75f86002023-02-09 01:51:07 +000031 defaults: ["expresslog_defaults"],
Vova Sharaienko3aaf79b2023-01-13 20:51:30 +000032 cflags: [
33 "-DNAMESPACE_FOR_HASH_FUNCTIONS=farmhash",
34 "-Wall",
35 "-Werror",
36 ],
37 header_libs: [
38 "libtextclassifier_hash_headers",
39 ],
40 static_libs: [
41 "libstatslog_express",
42 "libtextclassifier_hash_static",
43 ],
44 shared_libs: [
45 "libbase",
Vova Sharaienko75f86002023-02-09 01:51:07 +000046 "liblog",
Vova Sharaienko3aaf79b2023-01-13 20:51:30 +000047 "libstatssocket",
48 ],
49 export_include_dirs: ["include"],
Henri Chataing3b795a12024-06-13 22:47:03 +000050 min_sdk_version: "33",
51 apex_available: [
52 "//apex_available:platform",
53 "com.android.btservices",
54 ],
Vova Sharaienko3aaf79b2023-01-13 20:51:30 +000055}
56
57genrule {
58 name: "statslog_express.h",
59 tools: ["stats-log-api-gen"],
60 cmd: "$(location stats-log-api-gen) --header $(genDir)/statslog_express.h --module expresslog --namespace android,expresslog",
61 out: [
62 "statslog_express.h",
63 ],
64}
65
66genrule {
67 name: "statslog_express.cpp",
68 tools: ["stats-log-api-gen"],
69 cmd: "$(location stats-log-api-gen) --cpp $(genDir)/statslog_express.cpp --module expresslog --namespace android,expresslog --importHeader statslog_express.h",
70 out: [
71 "statslog_express.cpp",
72 ],
73}
74
75cc_library_static {
76 name: "libstatslog_express",
Vova Sharaienko717b4a72024-09-26 21:11:51 +000077 host_supported: true,
Vova Sharaienko3aaf79b2023-01-13 20:51:30 +000078 generated_sources: ["statslog_express.cpp"],
79 generated_headers: ["statslog_express.h"],
80 export_generated_headers: ["statslog_express.h"],
81 shared_libs: [
82 "libstatssocket",
83 ],
Henri Chataing3b795a12024-06-13 22:47:03 +000084 min_sdk_version: "33",
85 apex_available: [
86 "//apex_available:platform",
87 "com.android.btservices",
88 ],
Vova Sharaienko3aaf79b2023-01-13 20:51:30 +000089}
Vova Sharaienko75f86002023-02-09 01:51:07 +000090
91cc_test {
92 name: "expresslog_test",
93 defaults: ["expresslog_defaults"],
94 test_suites: [
95 "general-tests",
96 ],
97 srcs: [
98 "tests/Histogram_test.cpp",
99 ],
100 local_include_dirs: [
101 "include",
102 ],
103 cflags: [
104 "-DNAMESPACE_FOR_HASH_FUNCTIONS=farmhash",
105 "-Wall",
106 "-Wextra",
107 "-Wunused",
108 "-Wpedantic",
109 "-Werror",
110 ],
111 header_libs: [
112 "libtextclassifier_hash_headers",
113 ],
114 static_libs: [
115 "libgmock",
116 "libbase",
117 "liblog",
118 "libstatslog_express",
119 "libtextclassifier_hash_static",
120 ],
121 shared_libs: [
122 "libstatssocket",
Vova Sharaienko717b4a72024-09-26 21:11:51 +0000123 ],
Vova Sharaienko75f86002023-02-09 01:51:07 +0000124}