1 { 2 'target_defaults': { 3 'variables': { 4 'deps': [ 5 'libchrome-<(libbase_ver)' 6 ], 7 }, 8 'include_dirs': [ 9 '../libbrillo', 10 ], 11 'defines': [ 12 'USE_DBUS=<(USE_dbus)', 13 'USE_RTTI_FOR_TYPE_TAGS', 14 ], 15 }, 16 'targets': [ 17 { 18 'target_name': 'libbrillo-<(libbase_ver)', 19 'type': 'none', 20 'dependencies': [ 21 'libbrillo-core-<(libbase_ver)', 22 'libbrillo-cryptohome-<(libbase_ver)', 23 'libbrillo-http-<(libbase_ver)', 24 'libbrillo-minijail-<(libbase_ver)', 25 'libbrillo-streams-<(libbase_ver)', 26 'libinstallattributes-<(libbase_ver)', 27 'libpolicy-<(libbase_ver)', 28 ], 29 'direct_dependent_settings': { 30 'include_dirs': [ 31 '../libbrillo', 32 ], 33 }, 34 'includes': ['../common-mk/deps.gypi'], 35 }, 36 { 37 'target_name': 'libbrillo-core-<(libbase_ver)', 38 'type': 'shared_library', 39 'variables': { 40 'exported_deps': [ 41 ], 42 'conditions': [ 43 ['USE_dbus == 1', { 44 'exported_deps': [ 45 'dbus-1', 46 ], 47 }], 48 ], 49 'deps': ['<@(exported_deps)'], 50 }, 51 'all_dependent_settings': { 52 'variables': { 53 'deps': [ 54 '<@(exported_deps)', 55 ], 56 }, 57 }, 58 'libraries': ['-lmodp_b64'], 59 'sources': [ 60 'brillo/asynchronous_signal_handler.cc', 61 'brillo/backoff_entry.cc', 62 'brillo/daemons/daemon.cc', 63 'brillo/data_encoding.cc', 64 'brillo/errors/error.cc', 65 'brillo/errors/error_codes.cc', 66 'brillo/file_utils.cc', 67 'brillo/flag_helper.cc', 68 'brillo/imageloader/manifest.cc', 69 'brillo/key_value_store.cc', 70 'brillo/message_loops/base_message_loop.cc', 71 'brillo/message_loops/message_loop.cc', 72 'brillo/message_loops/message_loop_utils.cc', 73 'brillo/mime_utils.cc', 74 'brillo/osrelease_reader.cc', 75 'brillo/process.cc', 76 'brillo/process_reaper.cc', 77 'brillo/process_information.cc', 78 'brillo/secure_blob.cc', 79 'brillo/strings/string_utils.cc', 80 'brillo/syslog_logging.cc', 81 'brillo/type_name_undecorate.cc', 82 'brillo/url_utils.cc', 83 'brillo/userdb_utils.cc', 84 'brillo/value_conversion.cc', 85 ], 86 'conditions': [ 87 ['USE_dbus == 1', { 88 'sources': [ 89 'brillo/any.cc', 90 'brillo/daemons/dbus_daemon.cc', 91 'brillo/dbus/async_event_sequencer.cc', 92 'brillo/dbus/data_serialization.cc', 93 'brillo/dbus/dbus_connection.cc', 94 'brillo/dbus/dbus_method_invoker.cc', 95 'brillo/dbus/dbus_method_response.cc', 96 'brillo/dbus/dbus_object.cc', 97 'brillo/dbus/dbus_service_watcher.cc', 98 'brillo/dbus/dbus_signal.cc', 99 'brillo/dbus/exported_object_manager.cc', 100 'brillo/dbus/exported_property_set.cc', 101 'brillo/dbus/utils.cc', 102 ], 103 }], 104 ], 105 }, 106 { 107 'target_name': 'libbrillo-http-<(libbase_ver)', 108 'type': 'shared_library', 109 'dependencies': [ 110 'libbrillo-core-<(libbase_ver)', 111 'libbrillo-streams-<(libbase_ver)', 112 ], 113 'variables': { 114 'exported_deps': [ 115 'libcurl', 116 ], 117 'deps': ['<@(exported_deps)'], 118 }, 119 'all_dependent_settings': { 120 'variables': { 121 'deps': [ 122 '<@(exported_deps)', 123 ], 124 }, 125 }, 126 'sources': [ 127 'brillo/http/curl_api.cc', 128 'brillo/http/http_connection_curl.cc', 129 'brillo/http/http_form_data.cc', 130 'brillo/http/http_request.cc', 131 'brillo/http/http_transport.cc', 132 'brillo/http/http_transport_curl.cc', 133 'brillo/http/http_utils.cc', 134 ], 135 'conditions': [ 136 ['USE_dbus == 1', { 137 'sources': [ 138 'brillo/http/http_proxy.cc', 139 ], 140 }], 141 ], 142 }, 143 { 144 'target_name': 'libbrillo-streams-<(libbase_ver)', 145 'type': 'shared_library', 146 'dependencies': [ 147 'libbrillo-core-<(libbase_ver)', 148 ], 149 'variables': { 150 'exported_deps': [ 151 'openssl', 152 ], 153 'deps': ['<@(exported_deps)'], 154 }, 155 'all_dependent_settings': { 156 'variables': { 157 'deps': [ 158 '<@(exported_deps)', 159 ], 160 }, 161 }, 162 'sources': [ 163 'brillo/streams/file_stream.cc', 164 'brillo/streams/input_stream_set.cc', 165 'brillo/streams/memory_containers.cc', 166 'brillo/streams/memory_stream.cc', 167 'brillo/streams/openssl_stream_bio.cc', 168 'brillo/streams/stream.cc', 169 'brillo/streams/stream_errors.cc', 170 'brillo/streams/stream_utils.cc', 171 'brillo/streams/tls_stream.cc', 172 ], 173 }, 174 { 175 'target_name': 'libbrillo-test-<(libbase_ver)', 176 'type': 'static_library', 177 'standalone_static_library': 1, 178 'dependencies': [ 179 'libbrillo-http-<(libbase_ver)', 180 ], 181 'sources': [ 182 'brillo/http/http_connection_fake.cc', 183 'brillo/http/http_transport_fake.cc', 184 'brillo/message_loops/fake_message_loop.cc', 185 'brillo/streams/fake_stream.cc', 186 'brillo/unittest_utils.cc', 187 ], 188 'includes': ['../common-mk/deps.gypi'], 189 }, 190 { 191 'target_name': 'libbrillo-cryptohome-<(libbase_ver)', 192 'type': 'shared_library', 193 'variables': { 194 'exported_deps': [ 195 'openssl', 196 ], 197 'deps': ['<@(exported_deps)'], 198 }, 199 'all_dependent_settings': { 200 'variables': { 201 'deps': [ 202 '<@(exported_deps)', 203 ], 204 }, 205 }, 206 'sources': [ 207 'brillo/cryptohome.cc', 208 ], 209 }, 210 { 211 'target_name': 'libbrillo-minijail-<(libbase_ver)', 212 'type': 'shared_library', 213 'variables': { 214 'exported_deps': [ 215 'libminijail', 216 ], 217 'deps': ['<@(exported_deps)'], 218 }, 219 'all_dependent_settings': { 220 'variables': { 221 'deps': [ 222 '<@(exported_deps)', 223 ], 224 }, 225 }, 226 'cflags': [ 227 '-fvisibility=default', 228 ], 229 'sources': [ 230 'brillo/minijail/minijail.cc', 231 ], 232 }, 233 { 234 'target_name': 'libinstallattributes-<(libbase_ver)', 235 'type': 'shared_library', 236 'dependencies': [ 237 'libinstallattributes-includes', 238 '../common-mk/external_dependencies.gyp:install_attributes-proto', 239 ], 240 'variables': { 241 'exported_deps': [ 242 'protobuf-lite', 243 ], 244 'deps': ['<@(exported_deps)'], 245 }, 246 'all_dependent_settings': { 247 'variables': { 248 'deps': [ 249 '<@(exported_deps)', 250 ], 251 }, 252 }, 253 'sources': [ 254 'install_attributes/libinstallattributes.cc', 255 ], 256 }, 257 { 258 'target_name': 'libpolicy-<(libbase_ver)', 259 'type': 'shared_library', 260 'dependencies': [ 261 'libinstallattributes-<(libbase_ver)', 262 'libpolicy-includes', 263 '../common-mk/external_dependencies.gyp:policy-protos', 264 ], 265 'variables': { 266 'exported_deps': [ 267 'openssl', 268 'protobuf-lite', 269 ], 270 'deps': ['<@(exported_deps)'], 271 }, 272 'all_dependent_settings': { 273 'variables': { 274 'deps': [ 275 '<@(exported_deps)', 276 ], 277 }, 278 }, 279 'ldflags': [ 280 '-Wl,--version-script,<(platform2_root)/libbrillo/libpolicy.ver', 281 ], 282 'sources': [ 283 'policy/device_policy.cc', 284 'policy/device_policy_impl.cc', 285 'policy/policy_util.cc', 286 'policy/resilient_policy_util.cc', 287 'policy/libpolicy.cc', 288 ], 289 }, 290 { 291 'target_name': 'libbrillo-glib-<(libbase_ver)', 292 'type': 'shared_library', 293 'dependencies': [ 294 'libbrillo-<(libbase_ver)', 295 ], 296 'variables': { 297 'exported_deps': [ 298 'glib-2.0', 299 'gobject-2.0', 300 ], 301 'conditions': [ 302 ['USE_dbus == 1', { 303 'exported_deps': [ 304 'dbus-1', 305 'dbus-glib-1', 306 ], 307 }], 308 ], 309 'deps': ['<@(exported_deps)'], 310 }, 311 'cflags': [ 312 # glib uses the deprecated "register" attribute in some header files. 313 '-Wno-deprecated-register', 314 ], 315 'all_dependent_settings': { 316 'variables': { 317 'deps': [ 318 '<@(exported_deps)', 319 ], 320 }, 321 }, 322 'includes': ['../common-mk/deps.gypi'], 323 'conditions': [ 324 ['USE_dbus == 1', { 325 'sources': [ 326 'brillo/glib/abstract_dbus_service.cc', 327 'brillo/glib/dbus.cc', 328 ], 329 }], 330 ], 331 }, 332 ], 333 'conditions': [ 334 ['USE_test == 1', { 335 'targets': [ 336 { 337 'target_name': 'libbrillo-<(libbase_ver)_unittests', 338 'type': 'executable', 339 'dependencies': [ 340 'libbrillo-<(libbase_ver)', 341 'libbrillo-glib-<(libbase_ver)', 342 'libbrillo-test-<(libbase_ver)', 343 ], 344 'variables': { 345 'deps': [ 346 'libchrome-test-<(libbase_ver)', 347 ], 348 'proto_in_dir': 'brillo/dbus', 349 'proto_out_dir': 'include/brillo/dbus', 350 }, 351 'includes': [ 352 '../common-mk/common_test.gypi', 353 '../common-mk/protoc.gypi', 354 ], 355 'cflags': [ 356 '-Wno-format-zero-length', 357 ], 358 'conditions': [ 359 ['debug == 1', { 360 'cflags': [ 361 '-fprofile-arcs', 362 '-ftest-coverage', 363 '-fno-inline', 364 ], 365 'libraries': [ 366 '-lgcov', 367 ], 368 }], 369 ], 370 'sources': [ 371 'brillo/asynchronous_signal_handler_unittest.cc', 372 'brillo/backoff_entry_unittest.cc', 373 'brillo/data_encoding_unittest.cc', 374 'brillo/enum_flags_unittest.cc', 375 'brillo/errors/error_codes_unittest.cc', 376 'brillo/errors/error_unittest.cc', 377 'brillo/file_utils_unittest.cc', 378 'brillo/flag_helper_unittest.cc', 379 'brillo/glib/object_unittest.cc', 380 'brillo/http/http_connection_curl_unittest.cc', 381 'brillo/http/http_form_data_unittest.cc', 382 'brillo/http/http_request_unittest.cc', 383 'brillo/http/http_transport_curl_unittest.cc', 384 'brillo/http/http_utils_unittest.cc', 385 'brillo/imageloader/manifest_unittest.cc', 386 'brillo/key_value_store_unittest.cc', 387 'brillo/map_utils_unittest.cc', 388 'brillo/message_loops/base_message_loop_unittest.cc', 389 'brillo/message_loops/fake_message_loop_unittest.cc', 390 'brillo/message_loops/message_loop_unittest.cc', 391 'brillo/mime_utils_unittest.cc', 392 'brillo/osrelease_reader_unittest.cc', 393 'brillo/process_reaper_unittest.cc', 394 'brillo/process_unittest.cc', 395 'brillo/secure_blob_unittest.cc', 396 'brillo/streams/fake_stream_unittest.cc', 397 'brillo/streams/file_stream_unittest.cc', 398 'brillo/streams/input_stream_set_unittest.cc', 399 'brillo/streams/memory_containers_unittest.cc', 400 'brillo/streams/memory_stream_unittest.cc', 401 'brillo/streams/openssl_stream_bio_unittests.cc', 402 'brillo/streams/stream_unittest.cc', 403 'brillo/streams/stream_utils_unittest.cc', 404 'brillo/strings/string_utils_unittest.cc', 405 'brillo/unittest_utils.cc', 406 'brillo/url_utils_unittest.cc', 407 'brillo/value_conversion_unittest.cc', 408 'testrunner.cc', 409 ], 410 'conditions': [ 411 ['USE_dbus == 1', { 412 'sources': [ 413 'brillo/any_unittest.cc', 414 'brillo/any_internal_impl_unittest.cc', 415 'brillo/dbus/async_event_sequencer_unittest.cc', 416 'brillo/dbus/data_serialization_unittest.cc', 417 'brillo/dbus/dbus_method_invoker_unittest.cc', 418 'brillo/dbus/dbus_object_unittest.cc', 419 'brillo/dbus/dbus_param_reader_unittest.cc', 420 'brillo/dbus/dbus_param_writer_unittest.cc', 421 'brillo/dbus/dbus_signal_handler_unittest.cc', 422 'brillo/dbus/exported_object_manager_unittest.cc', 423 'brillo/dbus/exported_property_set_unittest.cc', 424 'brillo/http/http_proxy_unittest.cc', 425 'brillo/type_name_undecorate_unittest.cc', 426 'brillo/variant_dictionary_unittest.cc', 427 '<(proto_in_dir)/test.proto', 428 ], 429 }], 430 ], 431 }, 432 { 433 'target_name': 'libinstallattributes-<(libbase_ver)_unittests', 434 'type': 'executable', 435 'dependencies': [ 436 '../common-mk/external_dependencies.gyp:install_attributes-proto', 437 'libinstallattributes-<(libbase_ver)', 438 ], 439 'includes': ['../common-mk/common_test.gypi'], 440 'sources': [ 441 'install_attributes/tests/libinstallattributes_unittest.cc', 442 ] 443 }, 444 { 445 'target_name': 'libpolicy-<(libbase_ver)_unittests', 446 'type': 'executable', 447 'dependencies': [ 448 '../common-mk/external_dependencies.gyp:install_attributes-proto', 449 '../common-mk/external_dependencies.gyp:policy-protos', 450 'libinstallattributes-<(libbase_ver)', 451 'libpolicy-<(libbase_ver)', 452 ], 453 'includes': ['../common-mk/common_test.gypi'], 454 'sources': [ 455 'install_attributes/mock_install_attributes_reader.cc', 456 'policy/tests/device_policy_impl_unittest.cc', 457 'policy/tests/libpolicy_unittest.cc', 458 'policy/tests/policy_util_unittest.cc', 459 'policy/tests/resilient_policy_util_unittest.cc', 460 ] 461 }, 462 ], 463 }], 464 ], 465 } 466