blob: 1f6a27418b778e813dc0c228163ffde4f5235bbf [file] [log] [blame]
brians343bc112013-02-10 01:53:46 +00001{
2 'targets': [
3 {
Brian Silverman8a8ee682014-02-12 14:06:06 -08004 'target_name': 'test_queue',
brians343bc112013-02-10 01:53:46 +00005 'type': 'static_library',
6 'sources': [
7 '<(AOS)/common/test_queue.q',
8 ],
9 'variables': {
10 'header_path': 'aos/common',
11 },
12 'dependencies': [
13 '<(AOS)/common/common.gyp:queues',
14 ],
15 'includes': ['../build/queues.gypi'],
16 },
17 {
18 'target_name': 'queue_testutils',
19 'type': 'static_library',
20 'sources': [
21 'queue_testutils.cc',
22 ],
23 'dependencies': [
Brian Silvermanb3616972013-03-05 19:58:10 -080024 '<(AOS)/build/aos.gyp:logging',
25 'once',
26 '<(EXTERNALS):gtest',
Brian Silverman14fd0fb2014-01-14 21:42:01 -080027 '<(AOS)/linux_code/ipc_lib/ipc_lib.gyp:shared_mem',
brians343bc112013-02-10 01:53:46 +000028 ],
Brian Silvermaneeb62ca2013-09-11 15:08:03 -070029 'export_dependent_settings': [
Brian Silverman14fd0fb2014-01-14 21:42:01 -080030 '<(AOS)/linux_code/ipc_lib/ipc_lib.gyp:shared_mem',
Brian Silvermaneeb62ca2013-09-11 15:08:03 -070031 ],
brians343bc112013-02-10 01:53:46 +000032 },
33 {
34 'target_name': 'time',
35 'type': 'static_library',
36 'sources': [
37 'time.cc'
38 ],
39 'dependencies': [
Brian Silvermanb0893882014-02-10 14:48:30 -080040 '<(AOS)/build/aos.gyp:logging_interface',
Brian Silverman598800f2013-05-09 17:08:42 -070041 'mutex',
brians343bc112013-02-10 01:53:46 +000042 ],
43 },
44 {
Brian Silverman96395be2014-02-11 18:35:57 -080045 'target_name': 'queue_types',
46 'type': 'static_library',
Brian Silverman1885bd02014-02-13 12:28:12 -080047 'variables': {
48 'print_field_cc': '<(SHARED_INTERMEDIATE_DIR)/print_field.cc',
Brian Silvermanfd5e2a32014-02-22 20:02:39 -080049 'queue_primitives_h': '<(SHARED_INTERMEDIATE_DIR)/aos_queue_primitives/aos/queue_primitives.h',
Brian Silverman1885bd02014-02-13 12:28:12 -080050 },
Brian Silverman96395be2014-02-11 18:35:57 -080051 'sources': [
52 'queue_types.cc',
Brian Silverman1885bd02014-02-13 12:28:12 -080053 '<(print_field_cc)',
Brian Silverman96395be2014-02-11 18:35:57 -080054 ],
Brian Silverman4aeac5f2014-02-11 22:17:07 -080055 'dependencies': [
56 '<(AOS)/build/aos.gyp:logging_interface',
57 '<(AOS)/linux_code/ipc_lib/ipc_lib.gyp:shared_mem',
58 '<(AOS)/linux_code/ipc_lib/ipc_lib.gyp:core_lib',
Brian Silverman8a8ee682014-02-12 14:06:06 -080059 'mutex',
Brian Silverman4aeac5f2014-02-11 22:17:07 -080060 ],
Brian Silverman1885bd02014-02-13 12:28:12 -080061 'actions': [
62 {
63 'variables': {
64 'script': '<(AOS)/build/queues/print_field.rb',
65 },
66 'action_name': 'gen_print_field',
67 'inputs': [
68 '<(script)',
69 '<!@(find <(AOS)/build/queues/ -name *.rb)',
70 ],
71 'outputs': [
72 '<(print_field_cc)',
73 ],
74 'action': ['ruby', '<(script)', '<(print_field_cc)'],
75 'message': 'Generating print_field.cc',
76 },
Brian Silverman76156ca2014-02-22 13:10:42 -080077 {
78 'variables': {
79 'script': '<(AOS)/build/queues/queue_primitives.rb',
80 },
81 'action_name': 'gen_queue_primitives',
82 'inputs': [
83 '<(script)',
84 '<!@(find <(AOS)/build/queues/ -name *.rb)',
85 ],
86 'outputs': [
87 '<(queue_primitives_h)',
88 ],
89 'action': ['ruby', '<(script)', '<(queue_primitives_h)'],
90 'message': 'Generating queue_primitives.h',
91 },
Brian Silverman1885bd02014-02-13 12:28:12 -080092 ],
Brian Silvermanfd5e2a32014-02-22 20:02:39 -080093 'direct_dependent_settings': {
94 'include_dirs': [
95 '<(SHARED_INTERMEDIATE_DIR)/aos_queue_primitives',
96 ],
97 },
Brian Silverman76156ca2014-02-22 13:10:42 -080098 'hard_dependency': 1,
Brian Silverman96395be2014-02-11 18:35:57 -080099 },
100 {
101 'target_name': 'queue_types_test',
102 'type': 'executable',
103 'sources': [
104 'queue_types_test.cc',
105 ],
106 'dependencies': [
107 'queue_types',
108 '<(EXTERNALS):gtest',
Brian Silverman8a8ee682014-02-12 14:06:06 -0800109 'test_queue',
Brian Silverman96395be2014-02-11 18:35:57 -0800110 ],
111 },
112 {
brians343bc112013-02-10 01:53:46 +0000113 'target_name': 'queues',
114 'type': 'static_library',
115 'sources': [
116 'queue.cc',
117 ],
118 'conditions': [
119 ['OS=="crio"', {
120 'dependencies': [
121 '<(EXTERNALS):WPILib',
122 ],
123 },
124 {
125 'dependencies': [
Brian Silverman14fd0fb2014-01-14 21:42:01 -0800126 '<(AOS)/linux_code/ipc_lib/ipc_lib.gyp:queue',
brians343bc112013-02-10 01:53:46 +0000127 ],
128 'export_dependent_settings': [
Brian Silverman14fd0fb2014-01-14 21:42:01 -0800129 '<(AOS)/linux_code/ipc_lib/ipc_lib.gyp:queue',
brians343bc112013-02-10 01:53:46 +0000130 ],
131 }]
132 ],
133 'dependencies': [
Brian Silverman3204dd82013-03-12 18:42:01 -0700134 'time',
brians343bc112013-02-10 01:53:46 +0000135 ],
136 'export_dependent_settings': [
Brian Silverman3204dd82013-03-12 18:42:01 -0700137 'time',
brians343bc112013-02-10 01:53:46 +0000138 ],
139 },
140 {
Brian Silverman598800f2013-05-09 17:08:42 -0700141 'target_name': 'scoped_fd',
142 'type': 'static_library',
143 'sources': [
144 # 'scoped_fd.h'
145 ],
146 'dependencies': [
147 '<(AOS)/build/aos.gyp:logging',
148 ],
149 'export_dependent_settings': [
150 '<(AOS)/build/aos.gyp:logging',
151 ],
152 },
153 {
brians343bc112013-02-10 01:53:46 +0000154 'target_name': 'control_loop_queues',
155 'type': 'static_library',
156 'sources': [ '<(AOS)/common/control_loop/control_loops.q' ],
157 'variables': {
158 'header_path': 'aos/common/control_loop',
159 },
160 'dependencies': [
161 '<(AOS)/common/common.gyp:queues',
162 ],
163 'includes': ['../build/queues.gypi'],
164 },
165 {
166 'target_name': 'timing_so',
167 'type': 'shared_library',
168 'sources': [
169 'control_loop/Timing.cpp'
170 ],
171 'variables': {'no_rsync': 1},
172 'dependencies': [
brians343bc112013-02-10 01:53:46 +0000173 ],
174 'direct_dependent_settings': {
175 'variables': {
176 'jni_libs': [
177 'timing_so',
178 ],
179 },
180 },
181 'export_dependent_settings': [
brians343bc112013-02-10 01:53:46 +0000182 ],
183 },
184 {
185 'target_name': 'timing',
186 'type': 'static_library',
187 'sources': [
188 'control_loop/Timing.cpp'
189 ],
190 'dependencies': [
brians343bc112013-02-10 01:53:46 +0000191 '<(AOS)/build/aos.gyp:logging',
Brian Silverman598800f2013-05-09 17:08:42 -0700192 'time',
brians343bc112013-02-10 01:53:46 +0000193 ],
194 },
195 {
196 'target_name': 'controls',
197 'type': 'static_library',
Brian Silvermanf665d692013-02-17 22:11:39 -0800198 'sources': [
Brian Silverman15ca9852013-03-17 18:24:15 -0700199 'control_loop/ControlLoop.cc',
Brian Silvermanf665d692013-02-17 22:11:39 -0800200 ],
brians343bc112013-02-10 01:53:46 +0000201 'dependencies': [
202 '<(AOS)/common/messages/messages.gyp:aos_queues',
203 '<(AOS)/build/aos.gyp:logging',
204 'timing',
Brian Silverman3204dd82013-03-12 18:42:01 -0700205 'time',
Brian Silverman1e869f32013-10-25 18:00:20 -0700206 'control_loop_queues',
Brian Silvermand6974f42014-02-14 13:39:21 -0800207 '<(AOS)/common/logging/logging.gyp:queue_logging',
Brian Silverman50a9d032014-02-16 17:20:57 -0800208 '<(AOS)/common/util/util.gyp:log_interval',
Austin Schuh3d6e3df2014-02-17 01:51:03 -0800209 '<(DEPTH)/bbb_cape/src/bbb/bbb.gyp:sensor_generation',
brians343bc112013-02-10 01:53:46 +0000210 ],
Brian Silvermanf665d692013-02-17 22:11:39 -0800211 'export_dependent_settings': [
212 '<(AOS)/common/messages/messages.gyp:aos_queues',
213 '<(AOS)/build/aos.gyp:logging',
214 'timing',
Brian Silverman3204dd82013-03-12 18:42:01 -0700215 'time',
Brian Silverman1e869f32013-10-25 18:00:20 -0700216 'control_loop_queues',
Brian Silvermand6974f42014-02-14 13:39:21 -0800217 '<(AOS)/common/logging/logging.gyp:queue_logging',
Brian Silverman50a9d032014-02-16 17:20:57 -0800218 '<(AOS)/common/util/util.gyp:log_interval',
Austin Schuh3d6e3df2014-02-17 01:51:03 -0800219 '<(DEPTH)/bbb_cape/src/bbb/bbb.gyp:sensor_generation',
Brian Silvermanf665d692013-02-17 22:11:39 -0800220 ],
brians343bc112013-02-10 01:53:46 +0000221 },
222 {
223 'target_name': 'queue_test',
224 'type': 'executable',
225 'sources': [
Brian Silverman598800f2013-05-09 17:08:42 -0700226 'queue_test.cc',
brians343bc112013-02-10 01:53:46 +0000227 ],
228 'dependencies': [
229 '<(EXTERNALS):gtest',
brians343bc112013-02-10 01:53:46 +0000230 'queue_testutils',
Brian Silverman8a8ee682014-02-12 14:06:06 -0800231 'test_queue',
Brian Silverman798c7782013-03-28 16:48:02 -0700232 '<(AOS)/common/util/util.gyp:thread',
Brian Silverman8d2e56e2013-09-23 17:55:03 -0700233 'die',
brians343bc112013-02-10 01:53:46 +0000234 ],
235 },
236 {
237 'target_name': 'type_traits_test',
238 'type': '<(aos_target)',
239 'sources': [
240 'type_traits_test.cpp',
241 ],
242 'dependencies': [
243 '<(EXTERNALS):gtest',
brians2fdfc072013-02-26 05:35:15 +0000244 ],
245 },
246 {
247 'target_name': 'gtest_prod',
248 'type': 'static_library',
249 'dependencies': [
250 '<(EXTERNALS):gtest_prod',
251 ],
252 'export_dependent_settings': [
253 '<(EXTERNALS):gtest_prod',
254 ],
255 },
256 {
257 'target_name': 'once',
258 'type': 'static_library',
259 'dependencies': [
260 '<(EXTERNALS):gtest_prod',
261 ],
262 'export_dependent_settings': [
263 '<(EXTERNALS):gtest_prod',
264 ],
265 },
266 {
267 'target_name': 'once_test',
268 'type': '<(aos_target)',
269 'sources': [
270 'once_test.cc',
271 ],
272 'dependencies': [
273 '<(EXTERNALS):gtest',
Brian Silverman598800f2013-05-09 17:08:42 -0700274 'once',
brians343bc112013-02-10 01:53:46 +0000275 ],
276 },
277 {
278 'target_name': 'time_test',
279 'type': '<(aos_target)',
280 'sources': [
281 'time_test.cc',
282 ],
283 'dependencies': [
284 '<(EXTERNALS):gtest',
Brian Silverman598800f2013-05-09 17:08:42 -0700285 'time',
286 '<(AOS)/build/aos.gyp:logging',
brians343bc112013-02-10 01:53:46 +0000287 ],
288 },
289 {
Brian Silvermanf665d692013-02-17 22:11:39 -0800290 'target_name': 'die',
291 'type': 'static_library',
292 'sources': [
293 'die.cc',
294 ],
295 },
296 {
Brian Silverman08661c72013-09-01 17:24:38 -0700297 'target_name': 'condition',
298 'type': 'static_library',
299 'sources': [
Brian Silverman14fd0fb2014-01-14 21:42:01 -0800300 '<(AOS)/linux_code/ipc_lib/condition.cc',
Brian Silverman08661c72013-09-01 17:24:38 -0700301 ],
302 'dependencies': [
303 'mutex',
Brian Silverman14fd0fb2014-01-14 21:42:01 -0800304 '<(AOS)/linux_code/ipc_lib/ipc_lib.gyp:aos_sync',
Brian Silvermanb0893882014-02-10 14:48:30 -0800305 '<(AOS)/build/aos.gyp:logging_interface',
Brian Silverman08661c72013-09-01 17:24:38 -0700306 ],
307 'export_dependent_settings': [
308 'mutex',
Brian Silverman14fd0fb2014-01-14 21:42:01 -0800309 '<(AOS)/linux_code/ipc_lib/ipc_lib.gyp:aos_sync',
Brian Silverman08661c72013-09-01 17:24:38 -0700310 ],
311 },
312 {
Brian Silvermanf665d692013-02-17 22:11:39 -0800313 'target_name': 'mutex',
314 'type': 'static_library',
315 'conditions': [
316 ['OS=="crio"', {
317 'sources': [
318 '<(AOS)/crio/shared_libs/mutex.cpp',
319 ],
320 }, {
321 'sources': [
Brian Silverman14fd0fb2014-01-14 21:42:01 -0800322 '<(AOS)/linux_code/ipc_lib/mutex.cpp',
Brian Silvermanf665d692013-02-17 22:11:39 -0800323 ],
324 'dependencies': [
Brian Silverman14fd0fb2014-01-14 21:42:01 -0800325 '<(AOS)/linux_code/ipc_lib/ipc_lib.gyp:aos_sync',
Brian Silvermanf665d692013-02-17 22:11:39 -0800326 ],
327 'export_dependent_settings': [
Brian Silverman14fd0fb2014-01-14 21:42:01 -0800328 '<(AOS)/linux_code/ipc_lib/ipc_lib.gyp:aos_sync',
Brian Silvermanf665d692013-02-17 22:11:39 -0800329 ],
330 }],
331 ],
Brian Silverman598800f2013-05-09 17:08:42 -0700332 'dependencies': [
Brian Silvermanb0893882014-02-10 14:48:30 -0800333 '<(AOS)/build/aos.gyp:logging_interface',
Brian Silverman598800f2013-05-09 17:08:42 -0700334 ],
Brian Silvermanf665d692013-02-17 22:11:39 -0800335 },
336 {
brians343bc112013-02-10 01:53:46 +0000337 'target_name': 'mutex_test',
338 'type': '<(aos_target)',
339 'sources': [
340 'mutex_test.cpp',
341 ],
342 'dependencies': [
343 '<(EXTERNALS):gtest',
Brian Silverman598800f2013-05-09 17:08:42 -0700344 'mutex',
Brian Silverman8d2e56e2013-09-23 17:55:03 -0700345 'die',
brians343bc112013-02-10 01:53:46 +0000346 ],
347 },
348 {
Brian Silverman797e71e2013-09-06 17:29:39 -0700349 'target_name': 'condition_test',
350 'type': 'executable',
351 'sources': [
352 'condition_test.cc',
353 ],
354 'dependencies': [
355 '<(EXTERNALS):gtest',
356 'condition',
357 '<(AOS)/common/util/util.gyp:thread',
358 'time',
359 'mutex',
360 '<(AOS)/build/aos.gyp:logging',
361 'queue_testutils',
Brian Silverman14fd0fb2014-01-14 21:42:01 -0800362 '<(AOS)/linux_code/ipc_lib/ipc_lib.gyp:core_lib',
Brian Silverman8d2e56e2013-09-23 17:55:03 -0700363 'die',
Brian Silverman797e71e2013-09-06 17:29:39 -0700364 ],
365 },
366 {
brians343bc112013-02-10 01:53:46 +0000367 'target_name': 'die_test',
368 'type': 'executable',
369 'sources': [
370 'die_test.cc',
371 ],
372 'dependencies': [
373 '<(EXTERNALS):gtest',
Brian Silverman598800f2013-05-09 17:08:42 -0700374 'die',
brians343bc112013-02-10 01:53:46 +0000375 ],
376 },
Brian Silverman66f079a2013-08-26 16:24:30 -0700377 {
378 'target_name': 'util',
379 'type': 'static_library',
380 'sources': [
381 'util.cc',
382 ],
383 },
brians343bc112013-02-10 01:53:46 +0000384 ],
385}