blob: 48994812a1abb215025c64a6bf2f9191c34a8d6a [file] [log] [blame]
Liam McLoughlin4f268f42013-03-04 18:09:53 -05001{
2 'target_defaults': {
3 'variables': {
4 'deps': [
5 'libchrome-<(libbase_ver)'
6 ],
Liam McLoughlin4f268f42013-03-04 18:09:53 -05007 },
8 'include_dirs': [
9 '../libchromeos',
10 ],
11 },
12 'targets': [
13 {
14 'target_name': 'libchromeos-<(libbase_ver)',
15 'type': 'none',
16 'dependencies': [
Bertrand SIMONNET211054c2014-06-24 16:33:32 -070017 'libchromeos-bootstat-<(libbase_ver)',
Liam McLoughlin4f268f42013-03-04 18:09:53 -050018 'libchromeos-core-<(libbase_ver)',
19 'libchromeos-cryptohome-<(libbase_ver)',
Alex Vakulenkof788c952014-08-20 17:35:12 -070020 'libchromeos-http-<(libbase_ver)',
Utkarsh Sanghiccec5662014-08-06 14:19:57 -070021 'libchromeos-minijail-<(libbase_ver)',
Alex Vakulenko1e582b32015-02-26 15:23:23 -080022 'libchromeos-streams-<(libbase_ver)',
Daniel Erat8a6c5902014-06-04 13:50:01 -070023 'libchromeos-ui-<(libbase_ver)',
Liam McLoughlin4f268f42013-03-04 18:09:53 -050024 'libpolicy-<(libbase_ver)',
25 ],
26 'direct_dependent_settings': {
27 'include_dirs': [
28 '../libchromeos',
29 ],
30 },
Bertrand SIMONNET883c3e72014-06-04 13:22:47 -070031 'includes': ['../common-mk/deps.gypi'],
Liam McLoughlin4f268f42013-03-04 18:09:53 -050032 },
33 {
34 'target_name': 'libchromeos-core-<(libbase_ver)',
35 'type': 'shared_library',
36 'variables': {
37 'exported_deps': [
38 'dbus-1',
Liam McLoughlin4f268f42013-03-04 18:09:53 -050039 ],
40 'deps': ['<@(exported_deps)'],
41 },
42 'all_dependent_settings': {
43 'variables': {
44 'deps': [
45 '<@(exported_deps)',
46 ],
47 },
48 },
Bertrand SIMONNETf6ec4fc2015-07-15 14:14:19 -070049 'libraries': ['-lmodp_b64'],
Liam McLoughlin4f268f42013-03-04 18:09:53 -050050 'sources': [
Alex Vakulenko9205c772014-08-22 15:05:35 -070051 'chromeos/any.cc',
Benjamin Lerman21c7e372014-07-10 14:20:27 +020052 'chromeos/asynchronous_signal_handler.cc',
Alex Vakulenkoa2cdae32015-05-06 14:09:26 -070053 'chromeos/backoff_entry.cc',
Alex Vakulenko504322d2014-09-08 16:53:13 -070054 'chromeos/daemons/dbus_daemon.cc',
55 'chromeos/daemons/daemon.cc',
Alex Vakulenkoad93c042014-08-20 15:47:36 -070056 'chromeos/data_encoding.cc',
Alex Vakulenko15104662014-08-27 11:00:57 -070057 'chromeos/dbus/async_event_sequencer.cc',
Alex Vakulenkob3813652014-08-27 08:04:22 -070058 'chromeos/dbus/data_serialization.cc',
Alex Vakulenko973ba0a2014-12-03 15:26:15 -080059 'chromeos/dbus/dbus_method_invoker.cc',
Alex Vakulenkof437e3b2014-10-30 16:28:38 -070060 'chromeos/dbus/dbus_method_response.cc',
Alex Vakulenko30477dd2014-08-15 11:44:26 -070061 'chromeos/dbus/dbus_object.cc',
Christopher Wiley454f5f32015-02-18 13:30:28 -080062 'chromeos/dbus/dbus_service_watcher.cc',
Alex Vakulenkofa8f9442014-08-27 14:50:36 -070063 'chromeos/dbus/dbus_signal.cc',
Alex Vakulenko15104662014-08-27 11:00:57 -070064 'chromeos/dbus/exported_object_manager.cc',
65 'chromeos/dbus/exported_property_set.cc',
Alex Vakulenkob3813652014-08-27 08:04:22 -070066 'chromeos/dbus/utils.cc',
Alex Vakulenko15104662014-08-27 11:00:57 -070067 'chromeos/errors/error.cc',
68 'chromeos/errors/error_codes.cc',
David Pursell5cadeae2014-11-20 16:58:51 -080069 'chromeos/file_utils.cc',
Steve Fung48b3d5f2014-09-03 16:36:20 -070070 'chromeos/flag_helper.cc',
Alex Deymoedf1a2b2014-09-23 12:05:56 -070071 'chromeos/key_value_store.cc',
Alex Deymoa8632e42015-07-14 08:38:28 -070072 'chromeos/message_loops/base_message_loop.cc',
Alex Deymoef3955a2015-06-09 10:14:01 -070073 'chromeos/message_loops/message_loop.cc',
74 'chromeos/message_loops/message_loop_utils.cc',
Alex Vakulenkoec5dabd2014-08-20 16:33:12 -070075 'chromeos/mime_utils.cc',
Bertrand SIMONNET601ecf82014-10-06 13:14:27 -070076 'chromeos/osrelease_reader.cc',
Liam McLoughlin4f268f42013-03-04 18:09:53 -050077 'chromeos/process.cc',
Christopher Wileya96e6db2014-08-07 15:47:24 -070078 'chromeos/process_information.cc',
Liam McLoughlin4f268f42013-03-04 18:09:53 -050079 'chromeos/secure_blob.cc',
Alex Vakulenko15104662014-08-27 11:00:57 -070080 'chromeos/strings/string_utils.cc',
Liam McLoughlin4f268f42013-03-04 18:09:53 -050081 'chromeos/syslog_logging.cc',
Alex Vakulenkobba50fa2014-10-03 08:37:54 -070082 'chromeos/type_name_undecorate.cc',
Alex Vakulenkoa629bed2014-08-20 16:16:34 -070083 'chromeos/url_utils.cc',
Chris Masone31ca5a32015-04-01 10:27:57 -070084 'chromeos/userdb_utils.cc',
Liam McLoughlin4f268f42013-03-04 18:09:53 -050085 ],
86 },
87 {
Alex Vakulenkof788c952014-08-20 17:35:12 -070088 'target_name': 'libchromeos-http-<(libbase_ver)',
89 'type': 'shared_library',
Alex Vakulenko80663bf2015-03-12 17:30:11 -070090 'dependencies': [
91 'libchromeos-core-<(libbase_ver)',
92 'libchromeos-streams-<(libbase_ver)',
93 ],
Alex Vakulenkof788c952014-08-20 17:35:12 -070094 'variables': {
95 'exported_deps': [
96 'libcurl',
97 ],
98 'deps': ['<@(exported_deps)'],
99 },
100 'all_dependent_settings': {
101 'variables': {
102 'deps': [
103 '<@(exported_deps)',
104 ],
105 },
106 },
Alex Vakulenkof788c952014-08-20 17:35:12 -0700107 'sources': [
Alex Vakulenkof5effe92015-01-08 13:14:20 -0800108 'chromeos/http/curl_api.cc',
Alex Vakulenko15104662014-08-27 11:00:57 -0700109 'chromeos/http/http_connection_curl.cc',
Alex Vakulenko47e9a9d2015-01-07 12:12:39 -0800110 'chromeos/http/http_form_data.cc',
Alex Vakulenko15104662014-08-27 11:00:57 -0700111 'chromeos/http/http_request.cc',
Alex Vakulenkof38f0742014-09-04 10:23:17 -0700112 'chromeos/http/http_transport.cc',
Alex Vakulenko15104662014-08-27 11:00:57 -0700113 'chromeos/http/http_transport_curl.cc',
114 'chromeos/http/http_utils.cc',
Alex Vakulenkof788c952014-08-20 17:35:12 -0700115 ],
116 },
117 {
Alex Vakulenko1e582b32015-02-26 15:23:23 -0800118 'target_name': 'libchromeos-streams-<(libbase_ver)',
119 'type': 'shared_library',
120 'dependencies': [
121 'libchromeos-core-<(libbase_ver)',
122 ],
Alex Vakulenko7554ede2015-05-06 14:52:50 -0700123 'variables': {
124 'exported_deps': [
125 'openssl',
126 ],
127 'deps': ['<@(exported_deps)'],
128 },
129 'all_dependent_settings': {
130 'variables': {
131 'deps': [
132 '<@(exported_deps)',
133 ],
134 },
135 },
Alex Vakulenko1e582b32015-02-26 15:23:23 -0800136 'sources': [
Alex Vakulenko67d445b2015-03-10 13:54:28 -0700137 'chromeos/streams/file_stream.cc',
Alex Vakulenko6e6ff672015-03-11 15:59:49 -0700138 'chromeos/streams/input_stream_set.cc',
Alex Vakulenkoa6e48192015-03-10 13:49:45 -0700139 'chromeos/streams/memory_containers.cc',
140 'chromeos/streams/memory_stream.cc',
Alex Vakulenko7554ede2015-05-06 14:52:50 -0700141 'chromeos/streams/openssl_stream_bio.cc',
Alex Vakulenko1e582b32015-02-26 15:23:23 -0800142 'chromeos/streams/stream.cc',
143 'chromeos/streams/stream_errors.cc',
144 'chromeos/streams/stream_utils.cc',
Alex Vakulenko0155b392015-05-06 15:30:58 -0700145 'chromeos/streams/tls_stream.cc',
Alex Vakulenko1e582b32015-02-26 15:23:23 -0800146 ],
147 },
148 {
Alex Vakulenkof788c952014-08-20 17:35:12 -0700149 'target_name': 'libchromeos-test-<(libbase_ver)',
150 'type': 'static_library',
151 'standalone_static_library': 1,
152 'dependencies': [
153 'libchromeos-http-<(libbase_ver)',
154 ],
155 'sources': [
Alex Vakulenko15104662014-08-27 11:00:57 -0700156 'chromeos/http/http_connection_fake.cc',
157 'chromeos/http/http_transport_fake.cc',
Alex Deymoef3955a2015-06-09 10:14:01 -0700158 'chromeos/message_loops/fake_message_loop.cc',
Alex Vakulenko8b8d6092015-05-07 13:15:22 -0700159 'chromeos/streams/fake_stream.cc',
Alex Vakulenkof788c952014-08-20 17:35:12 -0700160 ],
161 'includes': ['../common-mk/deps.gypi'],
162 },
163 {
Liam McLoughlin4f268f42013-03-04 18:09:53 -0500164 'target_name': 'libchromeos-cryptohome-<(libbase_ver)',
165 'type': 'shared_library',
166 'variables': {
Daniel Erat15859412014-06-10 11:19:08 -0700167 'exported_deps': [
Daniel Erat15859412014-06-10 11:19:08 -0700168 'openssl',
169 ],
Liam McLoughlin4f268f42013-03-04 18:09:53 -0500170 'deps': ['<@(exported_deps)'],
171 },
172 'all_dependent_settings': {
173 'variables': {
174 'deps': [
175 '<@(exported_deps)',
176 ],
177 },
178 },
179 'sources': [
180 'chromeos/cryptohome.cc',
181 ],
182 },
183 {
Utkarsh Sanghiccec5662014-08-06 14:19:57 -0700184 'target_name': 'libchromeos-minijail-<(libbase_ver)',
Utkarsh Sanghid60f9ae2014-07-29 16:01:43 -0700185 'type': 'shared_library',
186 'libraries': [
187 '-lminijail',
188 ],
189 'cflags': [
190 '-fvisibility=default',
191 ],
192 'sources': [
193 'chromeos/minijail/minijail.cc',
194 ],
195 },
196 {
Daniel Erat8a6c5902014-06-04 13:50:01 -0700197 'target_name': 'libchromeos-ui-<(libbase_ver)',
198 'type': 'shared_library',
Bertrand SIMONNET211054c2014-06-24 16:33:32 -0700199 'dependencies': [
200 'libchromeos-bootstat-<(libbase_ver)',
Jason Simmons12490392015-04-06 16:54:04 -0700201 'libchromeos-core-<(libbase_ver)',
Bertrand SIMONNET211054c2014-06-24 16:33:32 -0700202 ],
Daniel Erat8a6c5902014-06-04 13:50:01 -0700203 'cflags': [
204 '-fvisibility=default',
205 ],
Daniel Erat8a6c5902014-06-04 13:50:01 -0700206 'sources': [
207 'chromeos/ui/chromium_command_builder.cc',
208 'chromeos/ui/util.cc',
209 'chromeos/ui/x_server_runner.cc',
210 ],
211 },
212 {
Liam McLoughlin4f268f42013-03-04 18:09:53 -0500213 'target_name': 'libpolicy-<(libbase_ver)',
214 'type': 'shared_library',
Chris Masone242ab242013-11-13 13:26:52 -0800215 'dependencies': [
Bertrand SIMONNET883c3e72014-06-04 13:22:47 -0700216 'libpolicy-includes',
217 '../common-mk/external_dependencies.gyp:policy-protos',
Chris Masone242ab242013-11-13 13:26:52 -0800218 ],
Liam McLoughlin4f268f42013-03-04 18:09:53 -0500219 'variables': {
220 'exported_deps': [
Liam McLoughlin4f268f42013-03-04 18:09:53 -0500221 'openssl',
222 'protobuf-lite',
223 ],
224 'deps': ['<@(exported_deps)'],
225 },
226 'all_dependent_settings': {
227 'variables': {
228 'deps': [
229 '<@(exported_deps)',
230 ],
231 },
232 },
Liam McLoughlin4f268f42013-03-04 18:09:53 -0500233 'ldflags': [
Bertrand SIMONNETb9fc6ad2014-06-02 14:51:18 -0700234 '-Wl,--version-script,<(platform2_root)/libchromeos/libpolicy.ver',
Liam McLoughlin4f268f42013-03-04 18:09:53 -0500235 ],
236 'sources': [
237 'chromeos/policy/device_policy.cc',
238 'chromeos/policy/device_policy_impl.cc',
239 'chromeos/policy/libpolicy.cc',
240 ],
241 },
Bertrand SIMONNET211054c2014-06-24 16:33:32 -0700242 {
Christopher Wiley8065d312015-07-08 13:11:21 -0700243 'target_name': 'libchromeos-glib-<(libbase_ver)',
244 'type': 'shared_library',
245 'dependencies': [
246 'libchromeos-<(libbase_ver)',
247 ],
248 'variables': {
249 'exported_deps': [
250 'dbus-1',
251 'dbus-glib-1',
252 'glib-2.0',
253 'gobject-2.0',
254 ],
255 'deps': ['<@(exported_deps)'],
256 },
257 'cflags': [
258 # glib uses the deprecated "register" attribute in some header files.
259 '-Wno-deprecated-register',
260 ],
261 'all_dependent_settings': {
262 'variables': {
263 'deps': [
264 '<@(exported_deps)',
265 ],
266 },
267 },
268 'sources': [
269 'chromeos/glib/abstract_dbus_service.cc',
270 'chromeos/glib/dbus.cc',
271 'chromeos/message_loops/glib_message_loop.cc',
272 ],
273 'includes': ['../common-mk/deps.gypi'],
274 },
275 {
Bertrand SIMONNET211054c2014-06-24 16:33:32 -0700276 'target_name': 'libchromeos-bootstat-<(libbase_ver)',
277 'type': 'shared_library',
278 'sources': [
279 'chromeos/bootstat/bootstat_log.c',
280 ],
281 'cflags': [
282 '-fvisibility=default',
283 ],
284 'libraries': [
285 '-lrootdev',
286 ],
287 },
Liam McLoughlin4f268f42013-03-04 18:09:53 -0500288 ],
289 'conditions': [
290 ['USE_test == 1', {
291 'targets': [
292 {
293 'target_name': 'libchromeos-<(libbase_ver)_unittests',
294 'type': 'executable',
Daniel Erat8a6c5902014-06-04 13:50:01 -0700295 'dependencies': [
296 'libchromeos-<(libbase_ver)',
Alex Vakulenkof788c952014-08-20 17:35:12 -0700297 'libchromeos-test-<(libbase_ver)',
Daniel Erat8a6c5902014-06-04 13:50:01 -0700298 'libchromeos-ui-<(libbase_ver)',
Christopher Wiley8065d312015-07-08 13:11:21 -0700299 'libchromeos-glib-<(libbase_ver)',
Daniel Erat8a6c5902014-06-04 13:50:01 -0700300 ],
Christopher Wileya96e6db2014-08-07 15:47:24 -0700301 'variables': {
302 'deps': [
303 'libchrome-test-<(libbase_ver)',
304 ],
Alex Vakulenkod0b4d8d2015-03-31 19:33:31 -0700305 'proto_in_dir': 'chromeos/dbus',
306 'proto_out_dir': 'include/unittests',
Christopher Wileya96e6db2014-08-07 15:47:24 -0700307 },
Alex Vakulenkod0b4d8d2015-03-31 19:33:31 -0700308 'includes': [
309 '../common-mk/common_test.gypi',
310 '../common-mk/protoc.gypi',
311 ],
Liam McLoughlin4f268f42013-03-04 18:09:53 -0500312 'cflags': [
313 '-Wno-format-zero-length',
314 ],
315 'conditions': [
316 ['debug == 1', {
317 'cflags': [
318 '-fprofile-arcs',
319 '-ftest-coverage',
320 '-fno-inline',
321 ],
322 'libraries': [
323 '-lgcov',
324 ],
325 }],
326 ],
327 'sources': [
Alex Vakulenko9205c772014-08-22 15:05:35 -0700328 'chromeos/any_unittest.cc',
329 'chromeos/any_internal_impl_unittest.cc',
Benjamin Lerman21c7e372014-07-10 14:20:27 +0200330 'chromeos/asynchronous_signal_handler_unittest.cc',
Alex Vakulenkoa2cdae32015-05-06 14:09:26 -0700331 'chromeos/backoff_entry_unittest.cc',
Alex Vakulenkoad93c042014-08-20 15:47:36 -0700332 'chromeos/data_encoding_unittest.cc',
Alex Vakulenko15104662014-08-27 11:00:57 -0700333 'chromeos/dbus/async_event_sequencer_unittest.cc',
Alex Vakulenkob3813652014-08-27 08:04:22 -0700334 'chromeos/dbus/data_serialization_unittest.cc',
Alex Vakulenko6cd7f812014-08-29 14:36:56 -0700335 'chromeos/dbus/dbus_method_invoker_unittest.cc',
Alex Vakulenko30477dd2014-08-15 11:44:26 -0700336 'chromeos/dbus/dbus_object_unittest.cc',
Alex Vakulenkoe46e51f2014-08-26 16:38:00 -0700337 'chromeos/dbus/dbus_param_reader_unittest.cc',
Alex Vakulenko1e259af2014-08-27 09:25:58 -0700338 'chromeos/dbus/dbus_param_writer_unittest.cc',
Alex Vakulenko927171f2014-10-02 10:22:36 -0700339 'chromeos/dbus/dbus_signal_handler_unittest.cc',
Alex Vakulenko15104662014-08-27 11:00:57 -0700340 'chromeos/dbus/exported_object_manager_unittest.cc',
341 'chromeos/dbus/exported_property_set_unittest.cc',
Alex Vakulenko1015de72014-09-16 20:34:54 -0700342 'chromeos/errors/error_codes_unittest.cc',
Alex Vakulenko15104662014-08-27 11:00:57 -0700343 'chromeos/errors/error_unittest.cc',
David Pursell5cadeae2014-11-20 16:58:51 -0800344 'chromeos/file_utils_unittest.cc',
Steve Fung48b3d5f2014-09-03 16:36:20 -0700345 'chromeos/flag_helper_unittest.cc',
Liam McLoughlin4f268f42013-03-04 18:09:53 -0500346 'chromeos/glib/object_unittest.cc',
Alex Vakulenkof5effe92015-01-08 13:14:20 -0800347 'chromeos/http/http_connection_curl_unittest.cc',
Alex Vakulenko47e9a9d2015-01-07 12:12:39 -0800348 'chromeos/http/http_form_data_unittest.cc',
Alex Vakulenkof5effe92015-01-08 13:14:20 -0800349 'chromeos/http/http_request_unittest.cc',
350 'chromeos/http/http_transport_curl_unittest.cc',
Alex Vakulenko15104662014-08-27 11:00:57 -0700351 'chromeos/http/http_utils_unittest.cc',
Alex Deymoedf1a2b2014-09-23 12:05:56 -0700352 'chromeos/key_value_store_unittest.cc',
Alex Vakulenkof7fd94d2014-12-15 11:02:56 -0800353 'chromeos/map_utils_unittest.cc',
Alex Deymo106edd12015-06-18 20:15:11 -0700354 'chromeos/message_loops/fake_message_loop_unittest.cc',
Alex Deymoef3955a2015-06-09 10:14:01 -0700355 'chromeos/message_loops/glib_message_loop_unittest.cc',
Alex Deymoa8632e42015-07-14 08:38:28 -0700356 'chromeos/message_loops/message_loop_unittest.cc',
Alex Vakulenkoec5dabd2014-08-20 16:33:12 -0700357 'chromeos/mime_utils_unittest.cc',
Bertrand SIMONNET601ecf82014-10-06 13:14:27 -0700358 'chromeos/osrelease_reader_unittest.cc',
Liam McLoughlin4f268f42013-03-04 18:09:53 -0500359 'chromeos/process_test.cc',
360 'chromeos/secure_blob_unittest.cc',
Alex Vakulenko8b8d6092015-05-07 13:15:22 -0700361 'chromeos/streams/fake_stream_unittest.cc',
Alex Vakulenko67d445b2015-03-10 13:54:28 -0700362 'chromeos/streams/file_stream_unittest.cc',
Alex Vakulenko6e6ff672015-03-11 15:59:49 -0700363 'chromeos/streams/input_stream_set_unittest.cc',
Alex Vakulenkoa6e48192015-03-10 13:49:45 -0700364 'chromeos/streams/memory_containers_unittest.cc',
365 'chromeos/streams/memory_stream_unittest.cc',
Alex Vakulenko7554ede2015-05-06 14:52:50 -0700366 'chromeos/streams/openssl_stream_bio_unittests.cc',
Alex Vakulenko1e582b32015-02-26 15:23:23 -0800367 'chromeos/streams/stream_unittest.cc',
368 'chromeos/streams/stream_utils_unittest.cc',
Alex Vakulenko15104662014-08-27 11:00:57 -0700369 'chromeos/strings/string_utils_unittest.cc',
Daniel Erat8a6c5902014-06-04 13:50:01 -0700370 'chromeos/ui/chromium_command_builder_unittest.cc',
371 'chromeos/ui/x_server_runner_unittest.cc',
Alex Vakulenkoa629bed2014-08-20 16:16:34 -0700372 'chromeos/url_utils_unittest.cc',
Aaron Kemp9447e5a2015-03-12 14:25:46 -0400373 'chromeos/variant_dictionary_unittest.cc',
Liam McLoughlin4f268f42013-03-04 18:09:53 -0500374 'testrunner.cc',
Alex Vakulenkod0b4d8d2015-03-31 19:33:31 -0700375 '<(proto_in_dir)/test.proto',
Liam McLoughlin4f268f42013-03-04 18:09:53 -0500376 ]
377 },
378 {
379 'target_name': 'libpolicy-<(libbase_ver)_unittests',
380 'type': 'executable',
381 'dependencies': ['libpolicy-<(libbase_ver)'],
Bertrand SIMONNET883c3e72014-06-04 13:22:47 -0700382 'includes': ['../common-mk/common_test.gypi'],
Liam McLoughlin4f268f42013-03-04 18:09:53 -0500383 'sources': [
384 'chromeos/policy/tests/libpolicy_unittest.cc',
385 ]
386 },
Bertrand SIMONNET211054c2014-06-24 16:33:32 -0700387 {
388 'target_name': 'libbootstat_unittests',
389 'type': 'executable',
390 'dependencies': [
391 'libchromeos-bootstat-<(libbase_ver)',
392 ],
393 'includes': [
394 '../common-mk/common_test.gypi',
395 ],
396 'sources': [
397 'chromeos/bootstat/log_unit_tests.cc',
398 ],
399 },
Liam McLoughlin4f268f42013-03-04 18:09:53 -0500400 ],
401 }],
402 ],
403}