blob: d3ac12430a6e69e70f51e384fa44fe2f3e5ada71 [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 Silverman96395be2014-02-11 18:35:57 -0800111 ],
112 },
113 {
brians343bc112013-02-10 01:53:46 +0000114 'target_name': 'queues',
115 'type': 'static_library',
116 'sources': [
117 'queue.cc',
118 ],
119 'conditions': [
Brian Silvermanb3d50542014-04-23 14:28:55 -0500120 ['PLATFORM=="crio"', {
brians343bc112013-02-10 01:53:46 +0000121 'dependencies': [
122 '<(EXTERNALS):WPILib',
123 ],
124 },
125 {
126 'dependencies': [
Brian Silverman14fd0fb2014-01-14 21:42:01 -0800127 '<(AOS)/linux_code/ipc_lib/ipc_lib.gyp:queue',
brians343bc112013-02-10 01:53:46 +0000128 ],
129 'export_dependent_settings': [
Brian Silverman14fd0fb2014-01-14 21:42:01 -0800130 '<(AOS)/linux_code/ipc_lib/ipc_lib.gyp:queue',
brians343bc112013-02-10 01:53:46 +0000131 ],
132 }]
133 ],
134 'dependencies': [
Brian Silverman3204dd82013-03-12 18:42:01 -0700135 'time',
brians343bc112013-02-10 01:53:46 +0000136 ],
137 'export_dependent_settings': [
Brian Silverman3204dd82013-03-12 18:42:01 -0700138 'time',
brians343bc112013-02-10 01:53:46 +0000139 ],
140 },
141 {
Brian Silverman598800f2013-05-09 17:08:42 -0700142 'target_name': 'scoped_fd',
143 'type': 'static_library',
144 'sources': [
145 # 'scoped_fd.h'
146 ],
147 'dependencies': [
148 '<(AOS)/build/aos.gyp:logging',
149 ],
150 'export_dependent_settings': [
151 '<(AOS)/build/aos.gyp:logging',
152 ],
153 },
154 {
brians343bc112013-02-10 01:53:46 +0000155 'target_name': 'queue_test',
156 'type': 'executable',
157 'sources': [
Brian Silverman598800f2013-05-09 17:08:42 -0700158 'queue_test.cc',
brians343bc112013-02-10 01:53:46 +0000159 ],
160 'dependencies': [
161 '<(EXTERNALS):gtest',
brians343bc112013-02-10 01:53:46 +0000162 'queue_testutils',
Brian Silverman8a8ee682014-02-12 14:06:06 -0800163 'test_queue',
Brian Silverman798c7782013-03-28 16:48:02 -0700164 '<(AOS)/common/util/util.gyp:thread',
Brian Silverman8d2e56e2013-09-23 17:55:03 -0700165 'die',
brians343bc112013-02-10 01:53:46 +0000166 ],
167 },
168 {
169 'target_name': 'type_traits_test',
Brian Silvermanc88d8152014-03-20 15:28:58 -0700170 'type': 'executable',
brians343bc112013-02-10 01:53:46 +0000171 'sources': [
172 'type_traits_test.cpp',
173 ],
174 'dependencies': [
175 '<(EXTERNALS):gtest',
brians2fdfc072013-02-26 05:35:15 +0000176 ],
177 },
178 {
179 'target_name': 'gtest_prod',
180 'type': 'static_library',
181 'dependencies': [
182 '<(EXTERNALS):gtest_prod',
183 ],
184 'export_dependent_settings': [
185 '<(EXTERNALS):gtest_prod',
186 ],
187 },
188 {
189 'target_name': 'once',
190 'type': 'static_library',
191 'dependencies': [
192 '<(EXTERNALS):gtest_prod',
193 ],
194 'export_dependent_settings': [
195 '<(EXTERNALS):gtest_prod',
196 ],
197 },
198 {
199 'target_name': 'once_test',
Brian Silvermanc88d8152014-03-20 15:28:58 -0700200 'type': 'executable',
brians2fdfc072013-02-26 05:35:15 +0000201 'sources': [
202 'once_test.cc',
203 ],
204 'dependencies': [
205 '<(EXTERNALS):gtest',
Brian Silverman598800f2013-05-09 17:08:42 -0700206 'once',
brians343bc112013-02-10 01:53:46 +0000207 ],
208 },
209 {
210 'target_name': 'time_test',
Brian Silvermanc88d8152014-03-20 15:28:58 -0700211 'type': 'executable',
brians343bc112013-02-10 01:53:46 +0000212 'sources': [
213 'time_test.cc',
214 ],
215 'dependencies': [
216 '<(EXTERNALS):gtest',
Brian Silverman598800f2013-05-09 17:08:42 -0700217 'time',
218 '<(AOS)/build/aos.gyp:logging',
brians343bc112013-02-10 01:53:46 +0000219 ],
220 },
221 {
Brian Silvermanf665d692013-02-17 22:11:39 -0800222 'target_name': 'die',
223 'type': 'static_library',
224 'sources': [
225 'die.cc',
226 ],
227 },
228 {
Brian Silverman08661c72013-09-01 17:24:38 -0700229 'target_name': 'condition',
230 'type': 'static_library',
231 'sources': [
Brian Silverman14fd0fb2014-01-14 21:42:01 -0800232 '<(AOS)/linux_code/ipc_lib/condition.cc',
Brian Silverman08661c72013-09-01 17:24:38 -0700233 ],
234 'dependencies': [
235 'mutex',
Brian Silverman14fd0fb2014-01-14 21:42:01 -0800236 '<(AOS)/linux_code/ipc_lib/ipc_lib.gyp:aos_sync',
Brian Silvermanb0893882014-02-10 14:48:30 -0800237 '<(AOS)/build/aos.gyp:logging_interface',
Brian Silverman08661c72013-09-01 17:24:38 -0700238 ],
239 'export_dependent_settings': [
240 'mutex',
Brian Silverman14fd0fb2014-01-14 21:42:01 -0800241 '<(AOS)/linux_code/ipc_lib/ipc_lib.gyp:aos_sync',
Brian Silverman08661c72013-09-01 17:24:38 -0700242 ],
243 },
244 {
Brian Silvermanf665d692013-02-17 22:11:39 -0800245 'target_name': 'mutex',
246 'type': 'static_library',
247 'conditions': [
Brian Silvermanb3d50542014-04-23 14:28:55 -0500248 ['PLATFORM=="crio"', {
Brian Silvermanf665d692013-02-17 22:11:39 -0800249 'sources': [
250 '<(AOS)/crio/shared_libs/mutex.cpp',
251 ],
252 }, {
253 'sources': [
Brian Silverman14fd0fb2014-01-14 21:42:01 -0800254 '<(AOS)/linux_code/ipc_lib/mutex.cpp',
Brian Silvermanf665d692013-02-17 22:11:39 -0800255 ],
256 'dependencies': [
Brian Silverman14fd0fb2014-01-14 21:42:01 -0800257 '<(AOS)/linux_code/ipc_lib/ipc_lib.gyp:aos_sync',
Brian Silvermanf665d692013-02-17 22:11:39 -0800258 ],
259 'export_dependent_settings': [
Brian Silverman14fd0fb2014-01-14 21:42:01 -0800260 '<(AOS)/linux_code/ipc_lib/ipc_lib.gyp:aos_sync',
Brian Silvermanf665d692013-02-17 22:11:39 -0800261 ],
262 }],
263 ],
Brian Silverman598800f2013-05-09 17:08:42 -0700264 'dependencies': [
Brian Silvermanb0893882014-02-10 14:48:30 -0800265 '<(AOS)/build/aos.gyp:logging_interface',
Brian Silverman598800f2013-05-09 17:08:42 -0700266 ],
Brian Silvermanf665d692013-02-17 22:11:39 -0800267 },
268 {
brians343bc112013-02-10 01:53:46 +0000269 'target_name': 'mutex_test',
Brian Silvermanc88d8152014-03-20 15:28:58 -0700270 'type': 'executable',
brians343bc112013-02-10 01:53:46 +0000271 'sources': [
272 'mutex_test.cpp',
273 ],
274 'dependencies': [
275 '<(EXTERNALS):gtest',
Brian Silverman598800f2013-05-09 17:08:42 -0700276 'mutex',
Brian Silverman8d2e56e2013-09-23 17:55:03 -0700277 'die',
brians343bc112013-02-10 01:53:46 +0000278 ],
279 },
280 {
Brian Silverman797e71e2013-09-06 17:29:39 -0700281 'target_name': 'condition_test',
282 'type': 'executable',
283 'sources': [
284 'condition_test.cc',
285 ],
286 'dependencies': [
287 '<(EXTERNALS):gtest',
288 'condition',
289 '<(AOS)/common/util/util.gyp:thread',
290 'time',
291 'mutex',
292 '<(AOS)/build/aos.gyp:logging',
293 'queue_testutils',
Brian Silverman14fd0fb2014-01-14 21:42:01 -0800294 '<(AOS)/linux_code/ipc_lib/ipc_lib.gyp:core_lib',
Brian Silverman8d2e56e2013-09-23 17:55:03 -0700295 'die',
Brian Silverman797e71e2013-09-06 17:29:39 -0700296 ],
297 },
298 {
brians343bc112013-02-10 01:53:46 +0000299 'target_name': 'die_test',
300 'type': 'executable',
301 'sources': [
302 'die_test.cc',
303 ],
304 'dependencies': [
305 '<(EXTERNALS):gtest',
Brian Silverman598800f2013-05-09 17:08:42 -0700306 'die',
brians343bc112013-02-10 01:53:46 +0000307 ],
308 },
brians343bc112013-02-10 01:53:46 +0000309 ],
310}