blob: 8dd1370007bd30585fe8900ddc66dfac66bebf2b [file] [log] [blame]
brians343bc112013-02-10 01:53:46 +00001{
2 'targets': [
3 {
4 'target_name': 'queue_test_queue',
5 '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)/atom_code/ipc_lib/ipc_lib.gyp:ipc_lib',
25 '<(AOS)/build/aos.gyp:logging',
26 'once',
27 '<(EXTERNALS):gtest',
brians343bc112013-02-10 01:53:46 +000028 ],
29 },
30 {
31 'target_name': 'time',
32 'type': 'static_library',
33 'sources': [
34 'time.cc'
35 ],
36 'dependencies': [
Brian Silverman458b6e62013-03-01 18:09:21 -080037 # TODO(aschuh): Fix this dependency loop by
38 # providing a logging interface.
39 # '<(AOS)/build/aos.gyp:logging',
40 '<(AOS)/build/aos.gyp:aos/ResourceList.h',
brians343bc112013-02-10 01:53:46 +000041 ],
42 },
43 {
44 'target_name': 'common',
45 'type': 'static_library',
46 'sources': [
47 'Configuration.cpp',
48 ],
49 'dependencies': [
50 '<(AOS)/build/aos.gyp:logging',
brians2fdfc072013-02-26 05:35:15 +000051 'once',
52 ],
53 'export_dependent_settings': [
54 'once',
brians343bc112013-02-10 01:53:46 +000055 ],
56 'conditions': [
57 ['OS=="crio"', {
58 'dependencies': [
59 '<(EXTERNALS):WPILib',
60 ]}],
61 ],
62 },
63 {
64 'target_name': 'queues',
65 'type': 'static_library',
66 'sources': [
67 'queue.cc',
68 ],
69 'conditions': [
70 ['OS=="crio"', {
71 'dependencies': [
72 '<(EXTERNALS):WPILib',
73 ],
74 },
75 {
76 'dependencies': [
77 '<(AOS)/atom_code/ipc_lib/ipc_lib.gyp:ipc_lib',
78 ],
79 'export_dependent_settings': [
80 '<(AOS)/atom_code/ipc_lib/ipc_lib.gyp:ipc_lib',
81 ],
82 }]
83 ],
84 'dependencies': [
85 '<(AOS)/common/common.gyp:common',
86 ],
87 'export_dependent_settings': [
88 '<(AOS)/common/common.gyp:common',
89 ],
90 },
91 {
92 'target_name': 'control_loop_queues',
93 'type': 'static_library',
94 'sources': [ '<(AOS)/common/control_loop/control_loops.q' ],
95 'variables': {
96 'header_path': 'aos/common/control_loop',
97 },
98 'dependencies': [
99 '<(AOS)/common/common.gyp:queues',
100 ],
101 'includes': ['../build/queues.gypi'],
102 },
103 {
104 'target_name': 'timing_so',
105 'type': 'shared_library',
106 'sources': [
107 'control_loop/Timing.cpp'
108 ],
109 'variables': {'no_rsync': 1},
110 'dependencies': [
111 '<(AOS)/build/aos.gyp:aos_shared_lib',
112 ],
113 'direct_dependent_settings': {
114 'variables': {
115 'jni_libs': [
116 'timing_so',
117 ],
118 },
119 },
120 'export_dependent_settings': [
121 '<(AOS)/build/aos.gyp:aos_shared_lib',
122 ],
123 },
124 {
125 'target_name': 'timing',
126 'type': 'static_library',
127 'sources': [
128 'control_loop/Timing.cpp'
129 ],
130 'dependencies': [
131 '<(AOS)/build/aos.gyp:libaos',
132 '<(AOS)/build/aos.gyp:logging',
133 ],
134 },
135 {
136 'target_name': 'controls',
137 'type': 'static_library',
Brian Silvermanf665d692013-02-17 22:11:39 -0800138 'sources': [
139 # 'control_loop/ControlLoop-tmpl.h',
140 ],
brians343bc112013-02-10 01:53:46 +0000141 'dependencies': [
142 '<(AOS)/common/messages/messages.gyp:aos_queues',
143 '<(AOS)/build/aos.gyp:logging',
144 'timing',
145 ],
Brian Silvermanf665d692013-02-17 22:11:39 -0800146 'export_dependent_settings': [
147 '<(AOS)/common/messages/messages.gyp:aos_queues',
148 '<(AOS)/build/aos.gyp:logging',
149 'timing',
150 ],
brians343bc112013-02-10 01:53:46 +0000151 },
152 {
153 'target_name': 'queue_test',
154 'type': 'executable',
155 'sources': [
156 '<(AOS)/common/queue_test.cc',
157 ],
158 'dependencies': [
159 '<(EXTERNALS):gtest',
160 '<(AOS)/build/aos.gyp:libaos',
161 'queue_testutils',
162 'common',
163 'queue_test_queue',
164 ],
165 },
166 {
167 'target_name': 'type_traits_test',
168 'type': '<(aos_target)',
169 'sources': [
170 'type_traits_test.cpp',
171 ],
172 'dependencies': [
173 '<(EXTERNALS):gtest',
174 '<(AOS)/build/aos.gyp:libaos',
brians2fdfc072013-02-26 05:35:15 +0000175 ':common',
176 ],
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',
200 'type': '<(aos_target)',
201 'sources': [
202 'once_test.cc',
203 ],
204 'dependencies': [
205 '<(EXTERNALS):gtest',
206 '<(AOS)/build/aos.gyp:libaos',
brians343bc112013-02-10 01:53:46 +0000207 ],
208 },
209 {
210 'target_name': 'time_test',
211 'type': '<(aos_target)',
212 'sources': [
213 'time_test.cc',
214 ],
215 'dependencies': [
216 '<(EXTERNALS):gtest',
217 '<(AOS)/build/aos.gyp:libaos',
218 ],
219 },
220 {
Brian Silvermanf665d692013-02-17 22:11:39 -0800221 'target_name': 'die',
222 'type': 'static_library',
223 'sources': [
224 'die.cc',
225 ],
226 },
227 {
228 'target_name': 'mutex',
229 'type': 'static_library',
230 'conditions': [
231 ['OS=="crio"', {
232 'sources': [
233 '<(AOS)/crio/shared_libs/mutex.cpp',
234 ],
235 }, {
236 'sources': [
237 '<(AOS)/atom_code/ipc_lib/mutex.cpp',
238 ],
239 'dependencies': [
240 '<(AOS)/atom_code/ipc_lib/ipc_lib.gyp:ipc_lib',
241 ],
242 'export_dependent_settings': [
243 '<(AOS)/atom_code/ipc_lib/ipc_lib.gyp:ipc_lib',
244 ],
245 }],
246 ],
247 },
248 {
brians343bc112013-02-10 01:53:46 +0000249 'target_name': 'mutex_test',
250 'type': '<(aos_target)',
251 'sources': [
252 'mutex_test.cpp',
253 ],
254 'dependencies': [
255 '<(EXTERNALS):gtest',
256 '<(AOS)/build/aos.gyp:libaos',
257 ],
258 },
259 {
260 'target_name': 'die_test',
261 'type': 'executable',
262 'sources': [
263 'die_test.cc',
264 ],
265 'dependencies': [
266 '<(EXTERNALS):gtest',
267 '<(AOS)/build/aos.gyp:libaos',
268 ],
269 },
270 ],
271}