blob: 4262b60a9814ac95aa17a23343fe2f977bae390d [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',
Brian Silverman30608942015-04-08 19:16:46 -040099 ':time',
Austin Schuh044e18b2015-10-21 20:17:09 -0700100 ],
101)
102
103cc_library(
Brian Silverman086cb8c2015-10-26 11:39:40 -0400104 # Use this one!
105 # TODO(Brian): Remove this mess...
106 name = 'event',
107 deps = [
108 '//aos/linux_code/ipc_lib:event',
109 ],
110)
111
112cc_library(
Austin Schuh044e18b2015-10-21 20:17:09 -0700113 name = 'unique_malloc_ptr',
114 hdrs = [
115 'unique_malloc_ptr.h',
116 ],
117)
118
119cc_library(
Austin Schuhf0736512015-09-07 01:22:16 -0700120 name = 'queue_types',
121 srcs = [
122 'queue_types.cc',
Brian Silvermanf480a612015-09-13 02:22:01 -0400123 ':gen_print_field',
Austin Schuh044e18b2015-10-21 20:17:09 -0700124 'print_field_helpers.h',
Austin Schuhf0736512015-09-07 01:22:16 -0700125 ],
Brian Silverman100534c2015-09-07 15:51:23 -0400126 hdrs = [
127 'queue_types.h',
128 ],
129 deps = [
Brian Silverman258b9172015-09-19 14:32:57 -0400130 ':generated_queue_headers',
Brian Silverman100534c2015-09-07 15:51:23 -0400131 '//aos/linux_code/ipc_lib:shared_mem',
132 '//aos/linux_code/ipc_lib:core_lib',
Brian Silvermanf480a612015-09-13 02:22:01 -0400133 '//aos/linux_code/ipc_lib:mutex',
Austin Schuh044e18b2015-10-21 20:17:09 -0700134 '//aos/common/logging:logging_printf_formats',
Brian Silverman100534c2015-09-07 15:51:23 -0400135 ':time',
Austin Schuh044e18b2015-10-21 20:17:09 -0700136 ':byteorder'
Brian Silverman100534c2015-09-07 15:51:23 -0400137 ],
138)
139
140cc_test(
141 name = 'queue_types_test',
142 srcs = [
143 'queue_types_test.cc',
144 ],
145 deps = [
146 ':queue_types',
Brian Silverman258b9172015-09-19 14:32:57 -0400147 '//aos/testing:googletest',
Brian Silverman100534c2015-09-07 15:51:23 -0400148 ':test_queue',
149 '//aos/common/logging',
150 ':queue_testutils',
151 ],
152)
153
154cc_library(
Austin Schuh044e18b2015-10-21 20:17:09 -0700155 name = 'network_port',
156 hdrs = [
157 'network_port.h',
158 ],
159)
160
161cc_library(
162 name = 'byteorder',
163 hdrs = [
164 'byteorder.h',
165 ],
166)
167
168cc_library(
Brian Silverman100534c2015-09-07 15:51:23 -0400169 name = 'queues',
170 srcs = [
171 'queue.cc',
172 ],
173 hdrs = [
174 'queue.h',
175 ],
176 deps = [
177 '//aos/linux_code/ipc_lib:queue',
178 ':time',
Austin Schuh044e18b2015-10-21 20:17:09 -0700179 ':macros',
180 '//aos/linux_code:queue',
181 ':byteorder',
Brian Silverman100534c2015-09-07 15:51:23 -0400182 ],
183)
184
185cc_library(
186 name = 'scoped_fd',
Austin Schuh044e18b2015-10-21 20:17:09 -0700187 hdrs = [
188 'scoped_fd.h',
189 ],
Brian Silverman100534c2015-09-07 15:51:23 -0400190 deps = [
191 '//aos/common/logging',
192 ],
193)
194
195cc_test(
196 name = 'queue_test',
197 srcs = [
198 'queue_test.cc',
199 ],
200 deps = [
Brian Silverman258b9172015-09-19 14:32:57 -0400201 '//aos/testing:googletest',
Brian Silverman100534c2015-09-07 15:51:23 -0400202 ':queue_testutils',
203 ':test_queue',
204 '//aos/common/util:thread',
205 ':die',
206 ],
207)
208
209cc_test(
210 name = 'type_traits_test',
211 srcs = [
212 'type_traits_test.cpp',
213 ],
214 deps = [
Brian Silverman258b9172015-09-19 14:32:57 -0400215 '//aos/testing:googletest',
Austin Schuh044e18b2015-10-21 20:17:09 -0700216 ':type_traits',
Brian Silverman100534c2015-09-07 15:51:23 -0400217 ],
218)
219
220cc_library(
221 name = 'gtest_prod',
Austin Schuh044e18b2015-10-21 20:17:09 -0700222 hdrs = [
223 'gtest_prod.h',
224 ],
Brian Silverman100534c2015-09-07 15:51:23 -0400225)
226
227cc_library(
228 name = 'once',
Austin Schuh044e18b2015-10-21 20:17:09 -0700229 hdrs = [
230 'once.h',
231 ],
232 srcs = [
233 'once-tmpl.h',
234 ],
Brian Silverman100534c2015-09-07 15:51:23 -0400235 deps = [
Brian Silvermanea542292015-09-13 02:24:45 -0400236 ':gtest_prod',
Austin Schuh044e18b2015-10-21 20:17:09 -0700237 ':type_traits',
Brian Silverman100534c2015-09-07 15:51:23 -0400238 ],
239)
240
241cc_test(
242 name = 'once_test',
243 srcs = [
244 'once_test.cc',
245 ],
246 deps = [
Brian Silverman258b9172015-09-19 14:32:57 -0400247 '//aos/testing:googletest',
Brian Silverman100534c2015-09-07 15:51:23 -0400248 ':once',
249 ],
250)
251
252cc_test(
253 name = 'time_test',
254 srcs = [
255 'time_test.cc',
256 ],
257 deps = [
Brian Silverman258b9172015-09-19 14:32:57 -0400258 '//aos/testing:googletest',
Brian Silverman100534c2015-09-07 15:51:23 -0400259 ':time',
260 '//aos/common/logging',
261 '//aos/common/util:death_test_log_implementation',
262 ],
263)
264
265cc_library(
266 name = 'die',
267 srcs = [
268 'die.cc',
269 ],
270 hdrs = [
271 'die.h',
272 ],
273 deps = [
Austin Schuh044e18b2015-10-21 20:17:09 -0700274 ':macros',
Brian Silverman100534c2015-09-07 15:51:23 -0400275 '//aos/common/libc:aos_strerror',
276 ],
277)
278
279cc_test(
280 name = 'queue_testutils_test',
281 srcs = [
282 'queue_testutils_test.cc',
283 ],
284 deps = [
Brian Silverman258b9172015-09-19 14:32:57 -0400285 '//aos/testing:googletest',
Brian Silverman100534c2015-09-07 15:51:23 -0400286 ':queue_testutils',
287 '//aos/common/logging',
288 ],
289)
290
291cc_test(
292 name = 'mutex_test',
293 srcs = [
294 'mutex_test.cc',
295 ],
296 deps = [
Brian Silverman258b9172015-09-19 14:32:57 -0400297 '//aos/testing:googletest',
Brian Silvermanf480a612015-09-13 02:22:01 -0400298 '//aos/linux_code/ipc_lib:mutex',
Brian Silverman100534c2015-09-07 15:51:23 -0400299 ':die',
300 '//aos/common/logging',
301 '//aos/common/util:death_test_log_implementation',
302 '//aos/common/util:thread',
303 '//aos/common:time',
304 ':queue_testutils',
305 ],
306)
307
308cc_test(
309 name = 'event_test',
310 srcs = [
311 'event_test.cc',
312 ],
313 deps = [
Brian Silverman258b9172015-09-19 14:32:57 -0400314 '//aos/testing:googletest',
Brian Silverman086cb8c2015-10-26 11:39:40 -0400315 ':event',
Brian Silverman100534c2015-09-07 15:51:23 -0400316 ':queue_testutils',
317 ':time',
318 ],
319)
320
Austin Schuh044e18b2015-10-21 20:17:09 -0700321cc_library(
Brian Silverman086cb8c2015-10-26 11:39:40 -0400322 name = 'real_condition',
323 visibility = ['//aos/linux_code/ipc_lib:__pkg__'],
Austin Schuh044e18b2015-10-21 20:17:09 -0700324 hdrs = [
325 'condition.h',
326 ],
327)
328
Brian Silverman086cb8c2015-10-26 11:39:40 -0400329cc_library(
330 # Use this one!
331 # TODO(Brian): Remove this mess...
332 name = 'condition',
333 deps = [
334 '//aos/linux_code/ipc_lib:condition',
335 ],
336)
337
Brian Silverman100534c2015-09-07 15:51:23 -0400338cc_test(
339 name = 'condition_test',
340 srcs = [
341 'condition_test.cc',
342 ],
343 deps = [
Brian Silverman258b9172015-09-19 14:32:57 -0400344 '//aos/testing:googletest',
Brian Silverman086cb8c2015-10-26 11:39:40 -0400345 ':condition',
Brian Silverman100534c2015-09-07 15:51:23 -0400346 '//aos/common/util:thread',
347 ':time',
Brian Silvermanf480a612015-09-13 02:22:01 -0400348 '//aos/linux_code/ipc_lib:mutex',
Brian Silverman100534c2015-09-07 15:51:23 -0400349 '//aos/common/logging',
350 ':queue_testutils',
351 '//aos/linux_code/ipc_lib:core_lib',
352 '//aos/linux_code/ipc_lib:aos_sync',
353 ':die',
Brian Silverman100534c2015-09-07 15:51:23 -0400354 ],
355)
356
357cc_test(
358 name = 'die_test',
359 srcs = [
360 'die_test.cc',
361 ],
362 deps = [
Brian Silverman258b9172015-09-19 14:32:57 -0400363 '//aos/testing:googletest',
Brian Silverman100534c2015-09-07 15:51:23 -0400364 ':die',
365 ],
366)
367
368cc_library(
369 name = 'stl_mutex',
Austin Schuh044e18b2015-10-21 20:17:09 -0700370 hdrs = [
371 'stl_mutex.h',
372 ],
Brian Silverman100534c2015-09-07 15:51:23 -0400373 deps = [
374 '//aos/linux_code/ipc_lib:aos_sync',
375 '//aos/common/logging',
376 ],
377)
378
Austin Schuh044e18b2015-10-21 20:17:09 -0700379cc_library(
380 name = 'mutex',
381 hdrs = [
382 'mutex.h',
383 ],
384 deps = [
385 '//aos/linux_code/ipc_lib:aos_sync',
386 ':die',
387 ],
388)
389
Brian Silverman100534c2015-09-07 15:51:23 -0400390cc_test(
391 name = 'stl_mutex_test',
392 srcs = [
393 'stl_mutex_test.cc',
394 ],
395 deps = [
396 ':stl_mutex',
Brian Silverman258b9172015-09-19 14:32:57 -0400397 '//aos/testing:googletest',
Brian Silverman100534c2015-09-07 15:51:23 -0400398 ':queue_testutils',
399 '//aos/common/util:thread',
400 ':die',
401 ],
Austin Schuhf0736512015-09-07 01:22:16 -0700402)
Brian Silverman3d37a5f2014-09-05 18:42:20 -0400403
404cc_library(
405 name = 'transaction',
406 hdrs = [
407 'transaction.h',
408 ],
409 deps = [
410 '//aos/common/logging:logging_interface',
411 '//aos/common/util:compiler_memory_barrier',
412 ],
413)
414
415cc_test(
416 name = 'transaction_test',
417 srcs = [
418 'transaction_test.cc',
419 ],
420 deps = [
421 ':transaction',
422 '//aos/testing:googletest',
423 '//aos/common/logging',
424 '//aos/common/util:death_test_log_implementation',
425 ],
426)