blob: 4931696881673fda8871f89a4dd999a113d4e0f0 [file] [log] [blame]
Brian Silvermancb5da1f2015-12-05 22:19:58 -05001# The primary client logging interface.
2cc_library(
Philipp Schrader9b1790e2018-03-10 20:21:30 -08003 name = "logging",
4 srcs = [
5 "context.cc",
6 "interface.cc",
7 ],
8 hdrs = [
9 "context.h",
10 "interface.h",
11 "logging.h",
12 ],
13 visibility = ["//visibility:public"],
14 deps = [
15 ":sizes",
Austin Schuhdf6cbb12019-02-02 13:46:52 -080016 "//aos:complex_thread_local",
John Park33858a32018-09-28 23:05:48 -070017 "//aos:die",
18 "//aos:macros",
19 "//aos/libc:aos_strerror",
Philipp Schrader9b1790e2018-03-10 20:21:30 -080020 ],
Brian Silvermancb5da1f2015-12-05 22:19:58 -050021)
Austin Schuhf0736512015-09-07 01:22:16 -070022
James Kuszmaul011b67a2019-12-15 12:52:34 -080023cc_library(
24 name = "log_namer",
25 srcs = ["log_namer.cc"],
26 hdrs = ["log_namer.h"],
27 copts = ["-Wno-format-nonliteral"],
28 visibility = ["//visibility:public"],
29 deps = [
30 "//aos:configuration",
31 "@com_github_google_glog//:glog",
32 ],
33)
34
Brian Silvermanf44f1242015-12-05 20:19:48 -050035cc_binary(
Philipp Schrader9b1790e2018-03-10 20:21:30 -080036 name = "binary_log_writer",
37 srcs = [
38 "binary_log_writer.cc",
39 ],
40 visibility = ["//visibility:public"],
41 deps = [
42 ":binary_log_file",
43 ":implementations",
James Kuszmaul011b67a2019-12-15 12:52:34 -080044 ":log_namer",
Philipp Schrader9b1790e2018-03-10 20:21:30 -080045 ":logging",
John Park398c74a2018-10-20 21:17:39 -070046 "//aos:configuration",
Austin Schuhdf6cbb12019-02-02 13:46:52 -080047 "//aos:die",
John Park398c74a2018-10-20 21:17:39 -070048 "//aos:init",
49 "//aos/ipc_lib:queue",
Austin Schuhdf6cbb12019-02-02 13:46:52 -080050 "//aos/time",
Philipp Schrader9b1790e2018-03-10 20:21:30 -080051 ],
Brian Silvermanf44f1242015-12-05 20:19:48 -050052)
53
54cc_binary(
Philipp Schrader9b1790e2018-03-10 20:21:30 -080055 name = "log_streamer",
56 srcs = [
57 "log_streamer.cc",
58 ],
59 visibility = ["//visibility:public"],
60 deps = [
61 ":implementations",
62 ":logging",
John Park398c74a2018-10-20 21:17:39 -070063 "//aos:init",
64 "//aos/ipc_lib:queue",
Austin Schuhdf6cbb12019-02-02 13:46:52 -080065 "//aos/time",
Philipp Schrader9b1790e2018-03-10 20:21:30 -080066 ],
Brian Silvermanf44f1242015-12-05 20:19:48 -050067)
68
69cc_binary(
Philipp Schrader9b1790e2018-03-10 20:21:30 -080070 name = "log_displayer",
71 srcs = [
72 "log_displayer.cc",
73 ],
74 visibility = ["//visibility:public"],
75 deps = [
76 ":binary_log_file",
77 ":implementations",
78 ":logging",
John Park398c74a2018-10-20 21:17:39 -070079 "//aos:configuration",
80 "//aos:init",
Austin Schuhdf6cbb12019-02-02 13:46:52 -080081 "//aos/util:string_to_num",
Philipp Schrader9b1790e2018-03-10 20:21:30 -080082 ],
Brian Silvermanf44f1242015-12-05 20:19:48 -050083)
84
85cc_library(
Philipp Schrader9b1790e2018-03-10 20:21:30 -080086 name = "binary_log_file",
87 srcs = [
88 "binary_log_file.cc",
89 ],
90 hdrs = [
91 "binary_log_file.h",
92 ],
93 deps = [
94 ":implementations",
95 ],
Austin Schuhf0736512015-09-07 01:22:16 -070096)
Brian Silverman100534c2015-09-07 15:51:23 -040097
98cc_library(
Philipp Schrader9b1790e2018-03-10 20:21:30 -080099 name = "sizes",
100 hdrs = [
101 "sizes.h",
102 ],
Austin Schuh044e18b2015-10-21 20:17:09 -0700103)
104
Brian Silvermancb5da1f2015-12-05 22:19:58 -0500105cc_test(
Philipp Schrader9b1790e2018-03-10 20:21:30 -0800106 name = "implementations_test",
107 srcs = [
108 "implementations_test.cc",
109 ],
110 deps = [
111 ":implementations",
112 ":logging",
113 "//aos/testing:googletest",
114 ],
Brian Silvermancb5da1f2015-12-05 22:19:58 -0500115)
116
117cc_library(
Philipp Schrader9b1790e2018-03-10 20:21:30 -0800118 name = "printf_formats",
119 hdrs = [
120 "printf_formats.h",
121 ],
122 visibility = ["//visibility:public"],
123 deps = [
John Park33858a32018-09-28 23:05:48 -0700124 "//aos:macros",
Philipp Schrader9b1790e2018-03-10 20:21:30 -0800125 ],
Austin Schuh044e18b2015-10-21 20:17:09 -0700126)
127
128cc_library(
Philipp Schrader9b1790e2018-03-10 20:21:30 -0800129 name = "implementations",
130 srcs = [
131 "implementations.cc",
132 ],
133 hdrs = [
134 "implementations.h",
135 ],
136 linkopts = [
137 "-lpthread",
138 ],
139 visibility = ["//visibility:public"],
140 deps = [
141 ":logging",
Alex Perrycb7da4b2019-08-28 19:35:56 -0700142 ":printf_formats",
Philipp Schrader9b1790e2018-03-10 20:21:30 -0800143 ":sizes",
John Park33858a32018-09-28 23:05:48 -0700144 "//aos:die",
145 "//aos:macros",
John Park398c74a2018-10-20 21:17:39 -0700146 "//aos/ipc_lib:queue",
Austin Schuhdf6cbb12019-02-02 13:46:52 -0800147 "//aos/mutex",
148 "//aos/time",
149 "//aos/type_traits",
Austin Schuh8e17be92019-12-24 09:32:11 -0800150 "@com_google_absl//absl/base",
Philipp Schrader9b1790e2018-03-10 20:21:30 -0800151 ],
Brian Silvermanf480a612015-09-13 02:22:01 -0400152)