blob: e098c0fc0af43aeb65f6954b11faa50130e1679c [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 },
brians343bc112013-02-10 01:53:46 +000012 'includes': ['../build/queues.gypi'],
13 },
14 {
15 'target_name': 'queue_testutils',
16 'type': 'static_library',
17 'sources': [
18 'queue_testutils.cc',
19 ],
20 'dependencies': [
Brian Silvermanb3616972013-03-05 19:58:10 -080021 '<(AOS)/build/aos.gyp:logging',
22 'once',
23 '<(EXTERNALS):gtest',
Brian Silverman14fd0fb2014-01-14 21:42:01 -080024 '<(AOS)/linux_code/ipc_lib/ipc_lib.gyp:shared_mem',
brians343bc112013-02-10 01:53:46 +000025 ],
Brian Silvermaneeb62ca2013-09-11 15:08:03 -070026 'export_dependent_settings': [
Brian Silverman14fd0fb2014-01-14 21:42:01 -080027 '<(AOS)/linux_code/ipc_lib/ipc_lib.gyp:shared_mem',
Brian Silvermaneeb62ca2013-09-11 15:08:03 -070028 ],
brians343bc112013-02-10 01:53:46 +000029 },
30 {
31 'target_name': 'time',
32 'type': 'static_library',
33 'sources': [
34 'time.cc'
35 ],
36 'dependencies': [
Brian Silvermanb0893882014-02-10 14:48:30 -080037 '<(AOS)/build/aos.gyp:logging_interface',
Brian Silverman598800f2013-05-09 17:08:42 -070038 'mutex',
brians343bc112013-02-10 01:53:46 +000039 ],
40 },
41 {
Brian Silverman96395be2014-02-11 18:35:57 -080042 'target_name': 'queue_types',
43 'type': 'static_library',
Brian Silverman1885bd02014-02-13 12:28:12 -080044 'variables': {
45 'print_field_cc': '<(SHARED_INTERMEDIATE_DIR)/print_field.cc',
Brian Silvermanfd5e2a32014-02-22 20:02:39 -080046 'queue_primitives_h': '<(SHARED_INTERMEDIATE_DIR)/aos_queue_primitives/aos/queue_primitives.h',
Brian Silverman1885bd02014-02-13 12:28:12 -080047 },
Brian Silverman96395be2014-02-11 18:35:57 -080048 'sources': [
49 'queue_types.cc',
Brian Silverman1885bd02014-02-13 12:28:12 -080050 '<(print_field_cc)',
Brian Silverman96395be2014-02-11 18:35:57 -080051 ],
Brian Silverman4aeac5f2014-02-11 22:17:07 -080052 'dependencies': [
53 '<(AOS)/build/aos.gyp:logging_interface',
54 '<(AOS)/linux_code/ipc_lib/ipc_lib.gyp:shared_mem',
55 '<(AOS)/linux_code/ipc_lib/ipc_lib.gyp:core_lib',
Brian Silverman8a8ee682014-02-12 14:06:06 -080056 'mutex',
Brian Silverman96e6d5a2014-03-24 15:55:40 -070057 'time',
58 ],
59 'export_dependent_settings': [
60 'time',
Brian Silverman4aeac5f2014-02-11 22:17:07 -080061 ],
Brian Silverman1885bd02014-02-13 12:28:12 -080062 'actions': [
63 {
64 'variables': {
65 'script': '<(AOS)/build/queues/print_field.rb',
66 },
67 'action_name': 'gen_print_field',
68 'inputs': [
69 '<(script)',
70 '<!@(find <(AOS)/build/queues/ -name *.rb)',
71 ],
72 'outputs': [
73 '<(print_field_cc)',
74 ],
75 'action': ['ruby', '<(script)', '<(print_field_cc)'],
76 'message': 'Generating print_field.cc',
77 },
Brian Silverman76156ca2014-02-22 13:10:42 -080078 {
79 'variables': {
80 'script': '<(AOS)/build/queues/queue_primitives.rb',
81 },
82 'action_name': 'gen_queue_primitives',
83 'inputs': [
84 '<(script)',
85 '<!@(find <(AOS)/build/queues/ -name *.rb)',
86 ],
87 'outputs': [
88 '<(queue_primitives_h)',
89 ],
90 'action': ['ruby', '<(script)', '<(queue_primitives_h)'],
91 'message': 'Generating queue_primitives.h',
92 },
Brian Silverman1885bd02014-02-13 12:28:12 -080093 ],
Brian Silvermanfd5e2a32014-02-22 20:02:39 -080094 'direct_dependent_settings': {
95 'include_dirs': [
96 '<(SHARED_INTERMEDIATE_DIR)/aos_queue_primitives',
97 ],
98 },
Brian Silverman76156ca2014-02-22 13:10:42 -080099 'hard_dependency': 1,
Brian Silverman96395be2014-02-11 18:35:57 -0800100 },
101 {
102 'target_name': 'queue_types_test',
103 'type': 'executable',
104 'sources': [
105 'queue_types_test.cc',
106 ],
107 'dependencies': [
108 'queue_types',
109 '<(EXTERNALS):gtest',
Brian Silverman8a8ee682014-02-12 14:06:06 -0800110 'test_queue',
Brian Silverman94738b62014-05-02 17:43:11 -0700111 '<(AOS)/build/aos.gyp:logging',
Brian Silverman96395be2014-02-11 18:35:57 -0800112 ],
113 },
114 {
brians343bc112013-02-10 01:53:46 +0000115 'target_name': 'queues',
116 'type': 'static_library',
117 'sources': [
118 'queue.cc',
119 ],
120 'conditions': [
Brian Silvermanb3d50542014-04-23 14:28:55 -0500121 ['PLATFORM=="crio"', {
brians343bc112013-02-10 01:53:46 +0000122 'dependencies': [
123 '<(EXTERNALS):WPILib',
124 ],
125 },
126 {
127 'dependencies': [
Brian Silverman14fd0fb2014-01-14 21:42:01 -0800128 '<(AOS)/linux_code/ipc_lib/ipc_lib.gyp:queue',
brians343bc112013-02-10 01:53:46 +0000129 ],
130 'export_dependent_settings': [
Brian Silverman14fd0fb2014-01-14 21:42:01 -0800131 '<(AOS)/linux_code/ipc_lib/ipc_lib.gyp:queue',
brians343bc112013-02-10 01:53:46 +0000132 ],
133 }]
134 ],
135 'dependencies': [
Brian Silverman3204dd82013-03-12 18:42:01 -0700136 'time',
brians343bc112013-02-10 01:53:46 +0000137 ],
138 'export_dependent_settings': [
Brian Silverman3204dd82013-03-12 18:42:01 -0700139 'time',
brians343bc112013-02-10 01:53:46 +0000140 ],
141 },
142 {
Brian Silverman598800f2013-05-09 17:08:42 -0700143 'target_name': 'scoped_fd',
144 'type': 'static_library',
145 'sources': [
146 # 'scoped_fd.h'
147 ],
148 'dependencies': [
149 '<(AOS)/build/aos.gyp:logging',
150 ],
151 'export_dependent_settings': [
152 '<(AOS)/build/aos.gyp:logging',
153 ],
154 },
155 {
brians343bc112013-02-10 01:53:46 +0000156 'target_name': 'queue_test',
157 'type': 'executable',
158 'sources': [
Brian Silverman598800f2013-05-09 17:08:42 -0700159 'queue_test.cc',
brians343bc112013-02-10 01:53:46 +0000160 ],
161 'dependencies': [
162 '<(EXTERNALS):gtest',
brians343bc112013-02-10 01:53:46 +0000163 'queue_testutils',
Brian Silverman8a8ee682014-02-12 14:06:06 -0800164 'test_queue',
Brian Silverman798c7782013-03-28 16:48:02 -0700165 '<(AOS)/common/util/util.gyp:thread',
Brian Silverman8d2e56e2013-09-23 17:55:03 -0700166 'die',
brians343bc112013-02-10 01:53:46 +0000167 ],
168 },
169 {
170 'target_name': 'type_traits_test',
Brian Silvermanc88d8152014-03-20 15:28:58 -0700171 'type': 'executable',
brians343bc112013-02-10 01:53:46 +0000172 'sources': [
173 'type_traits_test.cpp',
174 ],
175 'dependencies': [
176 '<(EXTERNALS):gtest',
brians2fdfc072013-02-26 05:35:15 +0000177 ],
178 },
179 {
180 'target_name': 'gtest_prod',
181 'type': 'static_library',
182 'dependencies': [
183 '<(EXTERNALS):gtest_prod',
184 ],
185 'export_dependent_settings': [
186 '<(EXTERNALS):gtest_prod',
187 ],
188 },
189 {
190 'target_name': 'once',
191 'type': 'static_library',
192 'dependencies': [
193 '<(EXTERNALS):gtest_prod',
194 ],
195 'export_dependent_settings': [
196 '<(EXTERNALS):gtest_prod',
197 ],
198 },
199 {
200 'target_name': 'once_test',
Brian Silvermanc88d8152014-03-20 15:28:58 -0700201 'type': 'executable',
brians2fdfc072013-02-26 05:35:15 +0000202 'sources': [
203 'once_test.cc',
204 ],
205 'dependencies': [
206 '<(EXTERNALS):gtest',
Brian Silverman598800f2013-05-09 17:08:42 -0700207 'once',
brians343bc112013-02-10 01:53:46 +0000208 ],
209 },
210 {
211 'target_name': 'time_test',
Brian Silvermanc88d8152014-03-20 15:28:58 -0700212 'type': 'executable',
brians343bc112013-02-10 01:53:46 +0000213 'sources': [
214 'time_test.cc',
215 ],
216 'dependencies': [
217 '<(EXTERNALS):gtest',
Brian Silverman598800f2013-05-09 17:08:42 -0700218 'time',
219 '<(AOS)/build/aos.gyp:logging',
Brian Silverman0534df62014-05-26 21:19:15 -0700220 '<(AOS)/common/util/util.gyp:death_test_log_implementation',
brians343bc112013-02-10 01:53:46 +0000221 ],
222 },
223 {
Brian Silvermanf665d692013-02-17 22:11:39 -0800224 'target_name': 'die',
225 'type': 'static_library',
226 'sources': [
227 'die.cc',
228 ],
Brian Silverman01be0002014-05-10 15:44:38 -0700229 'dependencies': [
Brian Silvermanaf784862014-05-13 08:14:55 -0700230 '<(AOS)/common/libc/libc.gyp:aos_strerror',
Brian Silverman01be0002014-05-10 15:44:38 -0700231 ],
232 'export_dependent_settings': [
Brian Silvermanaf784862014-05-13 08:14:55 -0700233 '<(AOS)/common/libc/libc.gyp:aos_strerror',
Brian Silverman01be0002014-05-10 15:44:38 -0700234 ],
Brian Silvermanf665d692013-02-17 22:11:39 -0800235 },
236 {
Brian Silverman08661c72013-09-01 17:24:38 -0700237 'target_name': 'condition',
238 'type': 'static_library',
239 'sources': [
Brian Silverman14fd0fb2014-01-14 21:42:01 -0800240 '<(AOS)/linux_code/ipc_lib/condition.cc',
Brian Silverman08661c72013-09-01 17:24:38 -0700241 ],
242 'dependencies': [
243 'mutex',
Brian Silverman14fd0fb2014-01-14 21:42:01 -0800244 '<(AOS)/linux_code/ipc_lib/ipc_lib.gyp:aos_sync',
Brian Silvermanb0893882014-02-10 14:48:30 -0800245 '<(AOS)/build/aos.gyp:logging_interface',
Brian Silverman08661c72013-09-01 17:24:38 -0700246 ],
247 'export_dependent_settings': [
248 'mutex',
Brian Silverman14fd0fb2014-01-14 21:42:01 -0800249 '<(AOS)/linux_code/ipc_lib/ipc_lib.gyp:aos_sync',
Brian Silverman08661c72013-09-01 17:24:38 -0700250 ],
251 },
252 {
Brian Silvermanf665d692013-02-17 22:11:39 -0800253 'target_name': 'mutex',
254 'type': 'static_library',
255 'conditions': [
Brian Silvermanb3d50542014-04-23 14:28:55 -0500256 ['PLATFORM=="crio"', {
Brian Silvermanf665d692013-02-17 22:11:39 -0800257 'sources': [
258 '<(AOS)/crio/shared_libs/mutex.cpp',
259 ],
260 }, {
261 'sources': [
Brian Silverman14fd0fb2014-01-14 21:42:01 -0800262 '<(AOS)/linux_code/ipc_lib/mutex.cpp',
Brian Silvermanf665d692013-02-17 22:11:39 -0800263 ],
264 'dependencies': [
Brian Silverman14fd0fb2014-01-14 21:42:01 -0800265 '<(AOS)/linux_code/ipc_lib/ipc_lib.gyp:aos_sync',
Brian Silvermanf665d692013-02-17 22:11:39 -0800266 ],
267 'export_dependent_settings': [
Brian Silverman14fd0fb2014-01-14 21:42:01 -0800268 '<(AOS)/linux_code/ipc_lib/ipc_lib.gyp:aos_sync',
Brian Silvermanf665d692013-02-17 22:11:39 -0800269 ],
270 }],
271 ],
Brian Silverman598800f2013-05-09 17:08:42 -0700272 'dependencies': [
Brian Silvermanb0893882014-02-10 14:48:30 -0800273 '<(AOS)/build/aos.gyp:logging_interface',
Brian Silverman598800f2013-05-09 17:08:42 -0700274 ],
Brian Silvermanf665d692013-02-17 22:11:39 -0800275 },
276 {
brians343bc112013-02-10 01:53:46 +0000277 'target_name': 'mutex_test',
Brian Silvermanc88d8152014-03-20 15:28:58 -0700278 'type': 'executable',
brians343bc112013-02-10 01:53:46 +0000279 'sources': [
Brian Silverman653491d2014-05-13 16:53:29 -0700280 'mutex_test.cc',
brians343bc112013-02-10 01:53:46 +0000281 ],
282 'dependencies': [
283 '<(EXTERNALS):gtest',
Brian Silverman598800f2013-05-09 17:08:42 -0700284 'mutex',
Brian Silverman8d2e56e2013-09-23 17:55:03 -0700285 'die',
Brian Silverman94738b62014-05-02 17:43:11 -0700286 '<(AOS)/build/aos.gyp:logging',
Brian Silverman01be0002014-05-10 15:44:38 -0700287 '<(AOS)/common/util/util.gyp:death_test_log_implementation',
Brian Silverman653491d2014-05-13 16:53:29 -0700288 '<(AOS)/common/util/util.gyp:thread',
289 '<(AOS)/common/common.gyp:time',
brians343bc112013-02-10 01:53:46 +0000290 ],
291 },
292 {
Brian Silverman797e71e2013-09-06 17:29:39 -0700293 'target_name': 'condition_test',
294 'type': 'executable',
295 'sources': [
296 'condition_test.cc',
297 ],
298 'dependencies': [
299 '<(EXTERNALS):gtest',
300 'condition',
301 '<(AOS)/common/util/util.gyp:thread',
302 'time',
303 'mutex',
304 '<(AOS)/build/aos.gyp:logging',
305 'queue_testutils',
Brian Silverman14fd0fb2014-01-14 21:42:01 -0800306 '<(AOS)/linux_code/ipc_lib/ipc_lib.gyp:core_lib',
Brian Silverman8d2e56e2013-09-23 17:55:03 -0700307 'die',
Brian Silverman797e71e2013-09-06 17:29:39 -0700308 ],
309 },
310 {
brians343bc112013-02-10 01:53:46 +0000311 'target_name': 'die_test',
312 'type': 'executable',
313 'sources': [
314 'die_test.cc',
315 ],
316 'dependencies': [
317 '<(EXTERNALS):gtest',
Brian Silverman598800f2013-05-09 17:08:42 -0700318 'die',
brians343bc112013-02-10 01:53:46 +0000319 ],
320 },
brians343bc112013-02-10 01:53:46 +0000321 ],
322}