blob: 45c1d72924f0c16f67387faa3a0c54110ecfa63f [file] [log] [blame]
Brian Silverman100534c2015-09-07 15:51:23 -04001package(default_visibility = ['//visibility:public'])
2
3load('/aos/build/queues', 'queue_library')
4
5queue_library(
Austin Schuhf0736512015-09-07 01:22:16 -07006 name = 'test_queue',
7 srcs = [
8 'test_queue.q',
9 ],
10)
Austin Schuhf0736512015-09-07 01:22:16 -070011
12cc_library(
Austin Schuh044e18b2015-10-21 20:17:09 -070013 name = 'math',
14 hdrs = [
15 'commonmath.h',
16 ],
17)
18
19cc_library(
Austin Schuhf0736512015-09-07 01:22:16 -070020 name = 'queue_testutils',
21 srcs = [
22 'queue_testutils.cc',
23 ],
Brian Silverman100534c2015-09-07 15:51:23 -040024 hdrs = [
25 'queue_testutils.h',
26 ],
Austin Schuhf0736512015-09-07 01:22:16 -070027 deps = [
Austin Schuh044e18b2015-10-21 20:17:09 -070028 ':once',
29 ':queues',
Brian Silverman258b9172015-09-19 14:32:57 -040030 '//aos/testing:googletest',
Brian Silverman100534c2015-09-07 15:51:23 -040031 '//aos/common/logging',
Austin Schuhf0736512015-09-07 01:22:16 -070032 '//aos/linux_code/ipc_lib:shared_mem',
Brian Silvermanf480a612015-09-13 02:22:01 -040033 '//aos/linux_code/ipc_lib:mutex',
Austin Schuhf0736512015-09-07 01:22:16 -070034 ],
35)
36
37cc_library(
Austin Schuh044e18b2015-10-21 20:17:09 -070038 name = 'macros',
39 hdrs = [
40 'macros.h',
41 ],
42)
43
44cc_library(
45 name = 'type_traits',
46 hdrs = [
47 'type_traits.h',
48 ],
49)
50
51cc_library(
Austin Schuhf0736512015-09-07 01:22:16 -070052 name = 'time',
Austin Schuhf0736512015-09-07 01:22:16 -070053 srcs = [
54 'time.cc',
55 ],
Brian Silverman100534c2015-09-07 15:51:23 -040056 hdrs = [
57 'time.h',
58 ],
Austin Schuhf0736512015-09-07 01:22:16 -070059 deps = [
Brian Silverman100534c2015-09-07 15:51:23 -040060 '//aos/common/logging:logging_interface',
Brian Silvermanf480a612015-09-13 02:22:01 -040061 '//aos/linux_code/ipc_lib:mutex',
Austin Schuh044e18b2015-10-21 20:17:09 -070062 ':macros',
63 '//aos/linux_code/ipc_lib:shared_mem',
Austin Schuhf0736512015-09-07 01:22:16 -070064 ],
65)
66
Brian Silvermanf480a612015-09-13 02:22:01 -040067genrule(
68 name = 'gen_queue_primitives',
69 visibility = ['//visibility:private'],
70 tools = ['//aos/build/queues:queue_primitives'],
71 outs = ['queue_primitives.h'],
72 cmd = '$(location //aos/build/queues:queue_primitives) $@',
73)
74
75genrule(
76 name = 'gen_print_field',
77 visibility = ['//visibility:private'],
78 tools = ['//aos/build/queues:print_field'],
79 outs = ['print_field.cc'],
80 cmd = '$(location //aos/build/queues:print_field) $@',
81)
82
Austin Schuhf0736512015-09-07 01:22:16 -070083cc_library(
Brian Silverman258b9172015-09-19 14:32:57 -040084 name = 'generated_queue_headers',
85 visibility = ['//aos/common/logging:__pkg__'],
86 hdrs = [
87 ':gen_queue_primitives',
88 ],
89)
90
91cc_library(
Brian Silverman086cb8c2015-10-26 11:39:40 -040092 name = 'real_event',
93 visibility = ['//aos/linux_code/ipc_lib:__pkg__'],
Austin Schuh044e18b2015-10-21 20:17:09 -070094 hdrs = [
95 'event.h',
96 ],
97 deps = [
98 '//aos/linux_code/ipc_lib:aos_sync',
99 ],
100)
101
102cc_library(
Brian Silverman086cb8c2015-10-26 11:39:40 -0400103 # Use this one!
104 # TODO(Brian): Remove this mess...
105 name = 'event',
106 deps = [
107 '//aos/linux_code/ipc_lib:event',
108 ],
109)
110
111cc_library(
Austin Schuh044e18b2015-10-21 20:17:09 -0700112 name = 'unique_malloc_ptr',
113 hdrs = [
114 'unique_malloc_ptr.h',
115 ],
116)
117
118cc_library(
Austin Schuhf0736512015-09-07 01:22:16 -0700119 name = 'queue_types',
120 srcs = [
121 'queue_types.cc',
Brian Silvermanf480a612015-09-13 02:22:01 -0400122 ':gen_print_field',
Austin Schuh044e18b2015-10-21 20:17:09 -0700123 'print_field_helpers.h',
Austin Schuhf0736512015-09-07 01:22:16 -0700124 ],
Brian Silverman100534c2015-09-07 15:51:23 -0400125 hdrs = [
126 'queue_types.h',
127 ],
128 deps = [
Brian Silverman258b9172015-09-19 14:32:57 -0400129 ':generated_queue_headers',
Brian Silverman100534c2015-09-07 15:51:23 -0400130 '//aos/linux_code/ipc_lib:shared_mem',
131 '//aos/linux_code/ipc_lib:core_lib',
Brian Silvermanf480a612015-09-13 02:22:01 -0400132 '//aos/linux_code/ipc_lib:mutex',
Austin Schuh044e18b2015-10-21 20:17:09 -0700133 '//aos/common/logging:logging_printf_formats',
Brian Silverman100534c2015-09-07 15:51:23 -0400134 ':time',
Austin Schuh044e18b2015-10-21 20:17:09 -0700135 ':byteorder'
Brian Silverman100534c2015-09-07 15:51:23 -0400136 ],
137)
138
139cc_test(
140 name = 'queue_types_test',
141 srcs = [
142 'queue_types_test.cc',
143 ],
144 deps = [
145 ':queue_types',
Brian Silverman258b9172015-09-19 14:32:57 -0400146 '//aos/testing:googletest',
Brian Silverman100534c2015-09-07 15:51:23 -0400147 ':test_queue',
148 '//aos/common/logging',
149 ':queue_testutils',
150 ],
151)
152
153cc_library(
Austin Schuh044e18b2015-10-21 20:17:09 -0700154 name = 'network_port',
155 hdrs = [
156 'network_port.h',
157 ],
158)
159
160cc_library(
161 name = 'byteorder',
162 hdrs = [
163 'byteorder.h',
164 ],
165)
166
167cc_library(
Brian Silverman100534c2015-09-07 15:51:23 -0400168 name = 'queues',
169 srcs = [
170 'queue.cc',
171 ],
172 hdrs = [
173 'queue.h',
174 ],
175 deps = [
176 '//aos/linux_code/ipc_lib:queue',
177 ':time',
Austin Schuh044e18b2015-10-21 20:17:09 -0700178 ':macros',
179 '//aos/linux_code:queue',
180 ':byteorder',
Brian Silverman100534c2015-09-07 15:51:23 -0400181 ],
182)
183
184cc_library(
185 name = 'scoped_fd',
Austin Schuh044e18b2015-10-21 20:17:09 -0700186 hdrs = [
187 'scoped_fd.h',
188 ],
Brian Silverman100534c2015-09-07 15:51:23 -0400189 deps = [
190 '//aos/common/logging',
191 ],
192)
193
194cc_test(
195 name = 'queue_test',
196 srcs = [
197 'queue_test.cc',
198 ],
199 deps = [
Brian Silverman258b9172015-09-19 14:32:57 -0400200 '//aos/testing:googletest',
Brian Silverman100534c2015-09-07 15:51:23 -0400201 ':queue_testutils',
202 ':test_queue',
203 '//aos/common/util:thread',
204 ':die',
205 ],
206)
207
208cc_test(
209 name = 'type_traits_test',
210 srcs = [
211 'type_traits_test.cpp',
212 ],
213 deps = [
Brian Silverman258b9172015-09-19 14:32:57 -0400214 '//aos/testing:googletest',
Austin Schuh044e18b2015-10-21 20:17:09 -0700215 ':type_traits',
Brian Silverman100534c2015-09-07 15:51:23 -0400216 ],
217)
218
219cc_library(
220 name = 'gtest_prod',
Austin Schuh044e18b2015-10-21 20:17:09 -0700221 hdrs = [
222 'gtest_prod.h',
223 ],
Brian Silverman100534c2015-09-07 15:51:23 -0400224)
225
226cc_library(
227 name = 'once',
Austin Schuh044e18b2015-10-21 20:17:09 -0700228 hdrs = [
229 'once.h',
230 ],
231 srcs = [
232 'once-tmpl.h',
233 ],
Brian Silverman100534c2015-09-07 15:51:23 -0400234 deps = [
Brian Silvermanea542292015-09-13 02:24:45 -0400235 ':gtest_prod',
Austin Schuh044e18b2015-10-21 20:17:09 -0700236 ':type_traits',
Brian Silverman100534c2015-09-07 15:51:23 -0400237 ],
238)
239
240cc_test(
241 name = 'once_test',
242 srcs = [
243 'once_test.cc',
244 ],
245 deps = [
Brian Silverman258b9172015-09-19 14:32:57 -0400246 '//aos/testing:googletest',
Brian Silverman100534c2015-09-07 15:51:23 -0400247 ':once',
248 ],
249)
250
251cc_test(
252 name = 'time_test',
253 srcs = [
254 'time_test.cc',
255 ],
256 deps = [
Brian Silverman258b9172015-09-19 14:32:57 -0400257 '//aos/testing:googletest',
Brian Silverman100534c2015-09-07 15:51:23 -0400258 ':time',
259 '//aos/common/logging',
260 '//aos/common/util:death_test_log_implementation',
261 ],
262)
263
264cc_library(
265 name = 'die',
266 srcs = [
267 'die.cc',
268 ],
269 hdrs = [
270 'die.h',
271 ],
272 deps = [
Austin Schuh044e18b2015-10-21 20:17:09 -0700273 ':macros',
Brian Silverman100534c2015-09-07 15:51:23 -0400274 '//aos/common/libc:aos_strerror',
275 ],
276)
277
278cc_test(
279 name = 'queue_testutils_test',
280 srcs = [
281 'queue_testutils_test.cc',
282 ],
283 deps = [
Brian Silverman258b9172015-09-19 14:32:57 -0400284 '//aos/testing:googletest',
Brian Silverman100534c2015-09-07 15:51:23 -0400285 ':queue_testutils',
286 '//aos/common/logging',
287 ],
288)
289
290cc_test(
291 name = 'mutex_test',
292 srcs = [
293 'mutex_test.cc',
294 ],
295 deps = [
Brian Silverman258b9172015-09-19 14:32:57 -0400296 '//aos/testing:googletest',
Brian Silvermanf480a612015-09-13 02:22:01 -0400297 '//aos/linux_code/ipc_lib:mutex',
Brian Silverman100534c2015-09-07 15:51:23 -0400298 ':die',
299 '//aos/common/logging',
300 '//aos/common/util:death_test_log_implementation',
301 '//aos/common/util:thread',
302 '//aos/common:time',
303 ':queue_testutils',
304 ],
305)
306
307cc_test(
308 name = 'event_test',
309 srcs = [
310 'event_test.cc',
311 ],
312 deps = [
Brian Silverman258b9172015-09-19 14:32:57 -0400313 '//aos/testing:googletest',
Brian Silverman086cb8c2015-10-26 11:39:40 -0400314 ':event',
Brian Silverman100534c2015-09-07 15:51:23 -0400315 ':queue_testutils',
316 ':time',
317 ],
318)
319
Austin Schuh044e18b2015-10-21 20:17:09 -0700320cc_library(
Brian Silverman086cb8c2015-10-26 11:39:40 -0400321 name = 'real_condition',
322 visibility = ['//aos/linux_code/ipc_lib:__pkg__'],
Austin Schuh044e18b2015-10-21 20:17:09 -0700323 hdrs = [
324 'condition.h',
325 ],
326)
327
Brian Silverman086cb8c2015-10-26 11:39:40 -0400328cc_library(
329 # Use this one!
330 # TODO(Brian): Remove this mess...
331 name = 'condition',
332 deps = [
333 '//aos/linux_code/ipc_lib:condition',
334 ],
335)
336
Brian Silverman100534c2015-09-07 15:51:23 -0400337cc_test(
338 name = 'condition_test',
339 srcs = [
340 'condition_test.cc',
341 ],
342 deps = [
Brian Silverman258b9172015-09-19 14:32:57 -0400343 '//aos/testing:googletest',
Brian Silverman086cb8c2015-10-26 11:39:40 -0400344 ':condition',
Brian Silverman100534c2015-09-07 15:51:23 -0400345 '//aos/common/util:thread',
346 ':time',
Brian Silvermanf480a612015-09-13 02:22:01 -0400347 '//aos/linux_code/ipc_lib:mutex',
Brian Silverman100534c2015-09-07 15:51:23 -0400348 '//aos/common/logging',
349 ':queue_testutils',
350 '//aos/linux_code/ipc_lib:core_lib',
351 '//aos/linux_code/ipc_lib:aos_sync',
352 ':die',
Brian Silverman100534c2015-09-07 15:51:23 -0400353 ],
354)
355
356cc_test(
357 name = 'die_test',
358 srcs = [
359 'die_test.cc',
360 ],
361 deps = [
Brian Silverman258b9172015-09-19 14:32:57 -0400362 '//aos/testing:googletest',
Brian Silverman100534c2015-09-07 15:51:23 -0400363 ':die',
364 ],
365)
366
367cc_library(
368 name = 'stl_mutex',
Austin Schuh044e18b2015-10-21 20:17:09 -0700369 hdrs = [
370 'stl_mutex.h',
371 ],
Brian Silverman100534c2015-09-07 15:51:23 -0400372 deps = [
373 '//aos/linux_code/ipc_lib:aos_sync',
374 '//aos/common/logging',
375 ],
376)
377
Austin Schuh044e18b2015-10-21 20:17:09 -0700378cc_library(
379 name = 'mutex',
380 hdrs = [
381 'mutex.h',
382 ],
383 deps = [
384 '//aos/linux_code/ipc_lib:aos_sync',
385 ':die',
386 ],
387)
388
Brian Silverman100534c2015-09-07 15:51:23 -0400389cc_test(
390 name = 'stl_mutex_test',
391 srcs = [
392 'stl_mutex_test.cc',
393 ],
394 deps = [
395 ':stl_mutex',
Brian Silverman258b9172015-09-19 14:32:57 -0400396 '//aos/testing:googletest',
Brian Silverman100534c2015-09-07 15:51:23 -0400397 ':queue_testutils',
398 '//aos/common/util:thread',
399 ':die',
400 ],
Austin Schuhf0736512015-09-07 01:22:16 -0700401)
Brian Silverman3d37a5f2014-09-05 18:42:20 -0400402
403cc_library(
404 name = 'transaction',
405 hdrs = [
406 'transaction.h',
407 ],
408 deps = [
409 '//aos/common/logging:logging_interface',
410 '//aos/common/util:compiler_memory_barrier',
411 ],
412)
413
414cc_test(
415 name = 'transaction_test',
416 srcs = [
417 'transaction_test.cc',
418 ],
419 deps = [
420 ':transaction',
421 '//aos/testing:googletest',
422 '//aos/common/logging',
423 '//aos/common/util:death_test_log_implementation',
424 ],
425)