blob: 9a63e4895549db7a111d3f502cc72fb969283507 [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',
Austin Schuh7e958392014-10-21 22:16:23 -0700112 'queue_testutils',
Brian Silverman96395be2014-02-11 18:35:57 -0800113 ],
114 },
115 {
brians343bc112013-02-10 01:53:46 +0000116 'target_name': 'queues',
117 'type': 'static_library',
118 'sources': [
119 'queue.cc',
120 ],
121 'conditions': [
Brian Silvermanb3d50542014-04-23 14:28:55 -0500122 ['PLATFORM=="crio"', {
brians343bc112013-02-10 01:53:46 +0000123 'dependencies': [
124 '<(EXTERNALS):WPILib',
125 ],
126 },
127 {
128 'dependencies': [
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 'export_dependent_settings': [
Brian Silverman14fd0fb2014-01-14 21:42:01 -0800132 '<(AOS)/linux_code/ipc_lib/ipc_lib.gyp:queue',
brians343bc112013-02-10 01:53:46 +0000133 ],
134 }]
135 ],
136 'dependencies': [
Brian Silverman3204dd82013-03-12 18:42:01 -0700137 'time',
brians343bc112013-02-10 01:53:46 +0000138 ],
139 'export_dependent_settings': [
Brian Silverman3204dd82013-03-12 18:42:01 -0700140 'time',
brians343bc112013-02-10 01:53:46 +0000141 ],
142 },
143 {
Brian Silverman598800f2013-05-09 17:08:42 -0700144 'target_name': 'scoped_fd',
145 'type': 'static_library',
146 'sources': [
147 # 'scoped_fd.h'
148 ],
149 'dependencies': [
150 '<(AOS)/build/aos.gyp:logging',
151 ],
152 'export_dependent_settings': [
153 '<(AOS)/build/aos.gyp:logging',
154 ],
155 },
156 {
brians343bc112013-02-10 01:53:46 +0000157 'target_name': 'queue_test',
158 'type': 'executable',
159 'sources': [
Brian Silverman598800f2013-05-09 17:08:42 -0700160 'queue_test.cc',
brians343bc112013-02-10 01:53:46 +0000161 ],
162 'dependencies': [
163 '<(EXTERNALS):gtest',
brians343bc112013-02-10 01:53:46 +0000164 'queue_testutils',
Brian Silverman8a8ee682014-02-12 14:06:06 -0800165 'test_queue',
Brian Silverman798c7782013-03-28 16:48:02 -0700166 '<(AOS)/common/util/util.gyp:thread',
Brian Silverman8d2e56e2013-09-23 17:55:03 -0700167 'die',
brians343bc112013-02-10 01:53:46 +0000168 ],
169 },
170 {
171 'target_name': 'type_traits_test',
Brian Silvermanc88d8152014-03-20 15:28:58 -0700172 'type': 'executable',
brians343bc112013-02-10 01:53:46 +0000173 'sources': [
174 'type_traits_test.cpp',
175 ],
176 'dependencies': [
177 '<(EXTERNALS):gtest',
brians2fdfc072013-02-26 05:35:15 +0000178 ],
179 },
180 {
181 'target_name': 'gtest_prod',
182 'type': 'static_library',
183 'dependencies': [
184 '<(EXTERNALS):gtest_prod',
185 ],
186 'export_dependent_settings': [
187 '<(EXTERNALS):gtest_prod',
188 ],
189 },
190 {
191 'target_name': 'once',
192 'type': 'static_library',
193 'dependencies': [
194 '<(EXTERNALS):gtest_prod',
195 ],
196 'export_dependent_settings': [
197 '<(EXTERNALS):gtest_prod',
198 ],
199 },
200 {
201 'target_name': 'once_test',
Brian Silvermanc88d8152014-03-20 15:28:58 -0700202 'type': 'executable',
brians2fdfc072013-02-26 05:35:15 +0000203 'sources': [
204 'once_test.cc',
205 ],
206 'dependencies': [
207 '<(EXTERNALS):gtest',
Brian Silverman598800f2013-05-09 17:08:42 -0700208 'once',
brians343bc112013-02-10 01:53:46 +0000209 ],
210 },
211 {
212 'target_name': 'time_test',
Brian Silvermanc88d8152014-03-20 15:28:58 -0700213 'type': 'executable',
brians343bc112013-02-10 01:53:46 +0000214 'sources': [
215 'time_test.cc',
216 ],
217 'dependencies': [
218 '<(EXTERNALS):gtest',
Brian Silverman598800f2013-05-09 17:08:42 -0700219 'time',
220 '<(AOS)/build/aos.gyp:logging',
Brian Silverman0534df62014-05-26 21:19:15 -0700221 '<(AOS)/common/util/util.gyp:death_test_log_implementation',
brians343bc112013-02-10 01:53:46 +0000222 ],
223 },
224 {
Brian Silvermanf665d692013-02-17 22:11:39 -0800225 'target_name': 'die',
226 'type': 'static_library',
227 'sources': [
228 'die.cc',
229 ],
Brian Silverman01be0002014-05-10 15:44:38 -0700230 'dependencies': [
Brian Silvermanaf784862014-05-13 08:14:55 -0700231 '<(AOS)/common/libc/libc.gyp:aos_strerror',
Brian Silverman01be0002014-05-10 15:44:38 -0700232 ],
233 'export_dependent_settings': [
Brian Silvermanaf784862014-05-13 08:14:55 -0700234 '<(AOS)/common/libc/libc.gyp:aos_strerror',
Brian Silverman01be0002014-05-10 15:44:38 -0700235 ],
Brian Silvermanf665d692013-02-17 22:11:39 -0800236 },
237 {
Brian Silverman08661c72013-09-01 17:24:38 -0700238 'target_name': 'condition',
239 'type': 'static_library',
240 'sources': [
Brian Silverman14fd0fb2014-01-14 21:42:01 -0800241 '<(AOS)/linux_code/ipc_lib/condition.cc',
Brian Silverman08661c72013-09-01 17:24:38 -0700242 ],
243 'dependencies': [
244 'mutex',
Brian Silverman14fd0fb2014-01-14 21:42:01 -0800245 '<(AOS)/linux_code/ipc_lib/ipc_lib.gyp:aos_sync',
Brian Silvermanb0893882014-02-10 14:48:30 -0800246 '<(AOS)/build/aos.gyp:logging_interface',
Brian Silverman08661c72013-09-01 17:24:38 -0700247 ],
248 'export_dependent_settings': [
249 'mutex',
Brian Silverman14fd0fb2014-01-14 21:42:01 -0800250 '<(AOS)/linux_code/ipc_lib/ipc_lib.gyp:aos_sync',
Brian Silverman08661c72013-09-01 17:24:38 -0700251 ],
252 },
253 {
Brian Silvermanf665d692013-02-17 22:11:39 -0800254 'target_name': 'mutex',
255 'type': 'static_library',
256 'conditions': [
Brian Silvermanb3d50542014-04-23 14:28:55 -0500257 ['PLATFORM=="crio"', {
Brian Silvermanf665d692013-02-17 22:11:39 -0800258 'sources': [
259 '<(AOS)/crio/shared_libs/mutex.cpp',
260 ],
261 }, {
262 'sources': [
Brian Silverman14fd0fb2014-01-14 21:42:01 -0800263 '<(AOS)/linux_code/ipc_lib/mutex.cpp',
Brian Silvermanf665d692013-02-17 22:11:39 -0800264 ],
265 'dependencies': [
Brian Silverman14fd0fb2014-01-14 21:42:01 -0800266 '<(AOS)/linux_code/ipc_lib/ipc_lib.gyp:aos_sync',
Brian Silvermanf665d692013-02-17 22:11:39 -0800267 ],
268 'export_dependent_settings': [
Brian Silverman14fd0fb2014-01-14 21:42:01 -0800269 '<(AOS)/linux_code/ipc_lib/ipc_lib.gyp:aos_sync',
Brian Silvermanf665d692013-02-17 22:11:39 -0800270 ],
271 }],
272 ],
Brian Silverman598800f2013-05-09 17:08:42 -0700273 'dependencies': [
Brian Silvermanb0893882014-02-10 14:48:30 -0800274 '<(AOS)/build/aos.gyp:logging_interface',
Brian Silverman598800f2013-05-09 17:08:42 -0700275 ],
Brian Silvermanf665d692013-02-17 22:11:39 -0800276 },
277 {
brians343bc112013-02-10 01:53:46 +0000278 'target_name': 'mutex_test',
Brian Silvermanc88d8152014-03-20 15:28:58 -0700279 'type': 'executable',
brians343bc112013-02-10 01:53:46 +0000280 'sources': [
Brian Silverman653491d2014-05-13 16:53:29 -0700281 'mutex_test.cc',
brians343bc112013-02-10 01:53:46 +0000282 ],
283 'dependencies': [
284 '<(EXTERNALS):gtest',
Brian Silverman598800f2013-05-09 17:08:42 -0700285 'mutex',
Brian Silverman8d2e56e2013-09-23 17:55:03 -0700286 'die',
Brian Silverman94738b62014-05-02 17:43:11 -0700287 '<(AOS)/build/aos.gyp:logging',
Brian Silverman01be0002014-05-10 15:44:38 -0700288 '<(AOS)/common/util/util.gyp:death_test_log_implementation',
Brian Silverman653491d2014-05-13 16:53:29 -0700289 '<(AOS)/common/util/util.gyp:thread',
290 '<(AOS)/common/common.gyp:time',
brians343bc112013-02-10 01:53:46 +0000291 ],
292 },
293 {
Brian Silverman797e71e2013-09-06 17:29:39 -0700294 'target_name': 'condition_test',
295 'type': 'executable',
296 'sources': [
297 'condition_test.cc',
298 ],
299 'dependencies': [
300 '<(EXTERNALS):gtest',
301 'condition',
302 '<(AOS)/common/util/util.gyp:thread',
303 'time',
304 'mutex',
305 '<(AOS)/build/aos.gyp:logging',
306 'queue_testutils',
Brian Silverman14fd0fb2014-01-14 21:42:01 -0800307 '<(AOS)/linux_code/ipc_lib/ipc_lib.gyp:core_lib',
Brian Silverman8d2e56e2013-09-23 17:55:03 -0700308 'die',
Brian Silvermanf1194642014-09-04 13:01:17 -0400309 '<(AOS)/common/util/util.gyp:thread',
Brian Silverman797e71e2013-09-06 17:29:39 -0700310 ],
311 },
312 {
brians343bc112013-02-10 01:53:46 +0000313 'target_name': 'die_test',
314 'type': 'executable',
315 'sources': [
316 'die_test.cc',
317 ],
318 'dependencies': [
319 '<(EXTERNALS):gtest',
Brian Silverman598800f2013-05-09 17:08:42 -0700320 'die',
brians343bc112013-02-10 01:53:46 +0000321 ],
322 },
brians343bc112013-02-10 01:53:46 +0000323 ],
324}