1# 2# Copyright (C) 2015 The Android Open Source Project 3# 4# Licensed under the Apache License, Version 2.0 (the "License"); 5# you may not use this file except in compliance with the License. 6# You may obtain a copy of the License at 7# 8# http://www.apache.org/licenses/LICENSE-2.0 9# 10# Unless required by applicable law or agreed to in writing, software 11# distributed under the License is distributed on an "AS IS" BASIS, 12# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13# See the License for the specific language governing permissions and 14# limitations under the License. 15# 16 17{ 18 'target_defaults': { 19 'variables': { 20 'deps': [ 21 'dbus-1', 22 'libbrillo-<(libbase_ver)', 23 'libchrome-<(libbase_ver)', 24 ], 25 'enable_exceptions': 1, 26 }, 27 'cflags': [ 28 '-Wextra', 29 '-Werror', 30 '-Wno-unused-parameter', # for pppd_plugin.c, base/tuple.h 31 ], 32 'cflags_cc': [ 33 '-fno-strict-aliasing', 34 '-Woverloaded-virtual', 35 '-Wno-missing-field-initializers', # for LAZY_INSTANCE_INITIALIZER 36 ], 37 'defines': [ 38 'ENABLE_CHROMEOS_DBUS', 39 'RUNDIR="/var/run/shill"', 40 'SHIMDIR="<(libdir)/shill/shims"', 41 ], 42 'conditions': [ 43 ['USE_cellular == 0', { 44 'defines': [ 45 'DISABLE_CELLULAR', 46 ], 47 }], 48 ['USE_dhcpv6 == 0', { 49 'defines': [ 50 'DISABLE_DHCPV6', 51 ], 52 }], 53 ['USE_json_store == 1', { 54 'defines': [ 55 'ENABLE_JSON_STORE', 56 ], 57 }], 58 ['USE_pppoe == 0', { 59 'defines': [ 60 'DISABLE_PPPOE', 61 ], 62 }], 63 ['USE_vpn == 0', { 64 'defines': [ 65 'DISABLE_VPN', 66 ], 67 }], 68 ['USE_wake_on_wifi == 0', { 69 'defines': [ 70 'DISABLE_WAKE_ON_WIFI', 71 ], 72 }], 73 ['USE_wifi == 0', { 74 'defines': [ 75 'DISABLE_WIFI', 76 ], 77 }], 78 ['USE_wimax == 0', { 79 'defines': [ 80 'DISABLE_WIMAX', 81 ], 82 }], 83 ['USE_wired_8021x == 0', { 84 'defines': [ 85 'DISABLE_WIRED_8021X', 86 ], 87 }], 88 ], 89 'include_dirs': [ 90 # We need this include dir because we include all the local code as 91 # # "shill/...". 92 '<(platform2_root)/../aosp/system/connectivity', 93 ], 94 }, 95 'includes': [ 96 'shill.gypi', 97 ], 98 'targets': [ 99 { 100 'target_name': 'mobile_operator_db-protos', 101 'type': 'static_library', 102 'variables': { 103 'proto_in_dir': 'mobile_operator_db', 104 'proto_out_dir': 105 'include/shill/mobile_operator_db' 106 }, 107 'sources': [ 108 '<(proto_in_dir)/mobile_operator_db.proto' 109 ], 110 'includes': ['../../../../platform2/common-mk/protoc.gypi'], 111 }, 112 { 113 'target_name': 'mobile_operator_db-db', 114 'type': 'none', 115 'variables' : { 116 'protoc_proto_dir': 'mobile_operator_db', 117 'protoc_proto_def': 'mobile_operator_db.proto', 118 'protoc_text_dir': 'mobile_operator_db', 119 'protoc_bin_dir': '<(PRODUCT_DIR)', 120 'protoc_message_name': 'shill.mobile_operator_db.MobileOperatorDB', 121 }, 122 'sources': [ 123 '<(protoc_text_dir)/serviceproviders.prototxt', 124 ], 125 'includes': ['../../../../platform2/common-mk/protoctxt.gypi'], 126 }, 127 { 128 'target_name': 'mobile_operator_db', 129 'type': 'static_library', 130 'dependencies': [ 131 'mobile_operator_db-protos', 132 'mobile_operator_db-db', 133 ], 134 }, 135 { 136 'target_name': 'shill-chromeos-dbus-adaptors', 137 'type': 'none', 138 'variables': { 139 'dbus_adaptors_out_dir': 'include/dbus_bindings', 140 'dbus_xml_extension': 'dbus-xml', 141 }, 142 'sources': [ 143 'dbus_bindings/org.chromium.flimflam.Device.dbus-xml', 144 'dbus_bindings/org.chromium.flimflam.IPConfig.dbus-xml', 145 'dbus_bindings/org.chromium.flimflam.Manager.dbus-xml', 146 'dbus_bindings/org.chromium.flimflam.Profile.dbus-xml', 147 'dbus_bindings/org.chromium.flimflam.Service.dbus-xml', 148 'dbus_bindings/org.chromium.flimflam.Task.dbus-xml', 149 'dbus_bindings/org.chromium.flimflam.ThirdPartyVpn.dbus-xml', 150 ], 151 'includes': ['../../../../platform2/common-mk/generate-dbus-adaptors.gypi'], 152 }, 153 { 154 'target_name': 'shim-protos', 155 'type': 'static_library', 156 'variables': { 157 'proto_in_dir': 'shims/protos', 158 'proto_out_dir': 'include/shill/shims/protos', 159 }, 160 'sources': [ 161 '<(proto_in_dir)/crypto_util.proto', 162 ], 163 'includes': ['../../../../platform2/common-mk/protoc.gypi'], 164 }, 165 { 166 'target_name': 'crypto_util', 167 'type': 'executable', 168 'dependencies': ['shim-protos'], 169 'variables': { 170 'deps': [ 171 'openssl', 172 'protobuf-lite', 173 ] 174 }, 175 'sources': [ 176 'shims/crypto_util.cc', 177 ], 178 }, 179 { 180 'target_name': 'libshill-net-<(libbase_ver)', 181 'type': 'shared_library', 182 'sources': [ 183 'net/attribute_list.cc', 184 'net/byte_string.cc', 185 'net/control_netlink_attribute.cc', 186 'net/event_history.cc', 187 'net/generic_netlink_message.cc', 188 'net/io_handler_factory.cc', 189 'net/io_handler_factory_container.cc', 190 'net/io_input_handler.cc', 191 'net/io_ready_handler.cc', 192 'net/ip_address.cc', 193 'net/netlink_attribute.cc', 194 'net/netlink_manager.cc', 195 'net/netlink_message.cc', 196 'net/netlink_packet.cc', 197 'net/netlink_socket.cc', 198 'net/nl80211_attribute.cc', 199 'net/nl80211_message.cc', 200 'net/rtnl_handler.cc', 201 'net/rtnl_listener.cc', 202 'net/rtnl_message.cc', 203 'net/shill_time.cc', 204 'net/sockets.cc', 205 ], 206 'includes': ['../../../../platform2/common-mk/deps.gypi'], 207 }, 208 { 209 'target_name': 'libshill', 210 'type': 'static_library', 211 'dependencies': [ 212 'mobile_operator_db', 213 'shill-chromeos-dbus-adaptors', 214 'shim-protos', 215 'libshill-net-<(libbase_ver)', 216 ], 217 'variables': { 218 'exported_deps': [ 219 'libcares', 220 'libmetrics-<(libbase_ver)', 221 'libpermission_broker-client', 222 'libpower_manager-client', 223 'protobuf-lite', 224 ], 225 'deps': [ 226 '<@(exported_deps)', 227 'libshill-client', 228 ], 229 }, 230 'all_dependent_settings': { 231 'variables': { 232 'deps': [ 233 '<@(exported_deps)', 234 ], 235 }, 236 }, 237 'link_settings': { 238 'variables': { 239 'deps': [ 240 'libcares', 241 # system_api depends on protobuf (or protobuf-lite). It must appear 242 # before protobuf here or the linker flags won't be in the right 243 # order. 244 'system_api', 245 'protobuf-lite', 246 ], 247 }, 248 'libraries': [ 249 '-lbootstat', 250 '-lrootdev', 251 '-lrt' 252 ], 253 }, 254 'conditions': [ 255 ['USE_cellular == 1', { 256 'dependencies': [ 257 '../../../../platform2/common-mk/external_dependencies.gyp:modemmanager-dbus-proxies', 258 ], 259 'variables': { 260 'deps': [ 261 'ModemManager', 262 ], 263 }, 264 'sources': [ 265 'cellular/active_passive_out_of_credits_detector.cc', 266 'cellular/cellular.cc', 267 'cellular/cellular_bearer.cc', 268 'cellular/cellular_capability.cc', 269 'cellular/cellular_capability_cdma.cc', 270 'cellular/cellular_capability_classic.cc', 271 'cellular/cellular_capability_gsm.cc', 272 'cellular/cellular_capability_universal.cc', 273 'cellular/cellular_capability_universal_cdma.cc', 274 'cellular/cellular_error.cc', 275 'cellular/cellular_error_mm1.cc', 276 'cellular/cellular_service.cc', 277 'cellular/mobile_operator_info.cc', 278 'cellular/mobile_operator_info_impl.cc', 279 'cellular/modem.cc', 280 'cellular/modem_1.cc', 281 'cellular/modem_classic.cc', 282 'cellular/modem_info.cc', 283 'cellular/modem_manager.cc', 284 'cellular/modem_manager_1.cc', 285 'cellular/out_of_credits_detector.cc', 286 'cellular/subscription_state_out_of_credits_detector.cc', 287 'dbus/chromeos_dbus_objectmanager_proxy.cc', 288 'dbus/chromeos_dbus_properties_proxy.cc', 289 'dbus/chromeos_mm1_modem_modem3gpp_proxy.cc', 290 'dbus/chromeos_mm1_modem_modemcdma_proxy.cc', 291 'dbus/chromeos_mm1_modem_proxy.cc', 292 'dbus/chromeos_mm1_modem_simple_proxy.cc', 293 'dbus/chromeos_mm1_sim_proxy.cc', 294 'dbus/chromeos_modem_cdma_proxy.cc', 295 'dbus/chromeos_modem_gobi_proxy.cc', 296 'dbus/chromeos_modem_gsm_card_proxy.cc', 297 'dbus/chromeos_modem_gsm_network_proxy.cc', 298 'dbus/chromeos_modem_manager_proxy.cc', 299 'dbus/chromeos_modem_proxy.cc', 300 'dbus/chromeos_modem_simple_proxy.cc', 301 'protobuf_lite_streams.cc', 302 ], 303 'actions': [ 304 { 305 'action_name': 'generate-cellular-proxies', 306 'variables': { 307 'proxy_output_file': 'include/cellular/dbus-proxies.h', 308 'modemmanager_in_dir': '<(sysroot)/usr/share/dbus-1/interfaces/', 309 }, 310 'sources': [ 311 'dbus_bindings/dbus-objectmanager.dbus-xml', 312 'dbus_bindings/dbus-properties.dbus-xml', 313 'dbus_bindings/modem-gobi.dbus-xml', 314 '<(modemmanager_in_dir)/org.freedesktop.ModemManager.Modem.Cdma.xml', 315 '<(modemmanager_in_dir)/org.freedesktop.ModemManager.Modem.Gsm.Card.xml', 316 '<(modemmanager_in_dir)/org.freedesktop.ModemManager.Modem.Gsm.Network.xml', 317 '<(modemmanager_in_dir)/org.freedesktop.ModemManager.Modem.Simple.xml', 318 '<(modemmanager_in_dir)/org.freedesktop.ModemManager.Modem.xml', 319 '<(modemmanager_in_dir)/org.freedesktop.ModemManager.xml', 320 '<(modemmanager_in_dir)/org.freedesktop.ModemManager1.Modem.Modem3gpp.xml', 321 '<(modemmanager_in_dir)/org.freedesktop.ModemManager1.Modem.ModemCdma.xml', 322 '<(modemmanager_in_dir)/org.freedesktop.ModemManager1.Modem.Simple.xml', 323 '<(modemmanager_in_dir)/org.freedesktop.ModemManager1.Modem.xml', 324 '<(modemmanager_in_dir)/org.freedesktop.ModemManager1.Sim.xml', 325 ], 326 'includes': ['../../../../platform2/common-mk/generate-dbus-proxies.gypi'], 327 }, 328 ], 329 }], 330 ['USE_json_store == 0', { 331 'link_settings': { 332 'variables': { 333 'deps': [ 334 'gio-2.0', # for g_type_init() 335 'glib-2.0', # for g_key_*(), etc. 336 ], 337 }, 338 }, 339 'sources': [ 340 'key_file_store.cc', 341 ], 342 'variables': { 343 'exported_deps': [ 344 'gio-2.0', # for g_type_init() 345 'glib-2.0', # for g_key_*(), etc. 346 ], 347 'deps': ['<@(exported_deps)'], 348 }, 349 }], 350 ['USE_json_store == 1', { 351 'sources': [ 352 'json_store.cc', 353 ], 354 }], 355 ['USE_vpn == 1', { 356 'sources': [ 357 'vpn/l2tp_ipsec_driver.cc', 358 'vpn/openvpn_driver.cc', 359 'vpn/openvpn_management_server.cc', 360 'vpn/third_party_vpn_driver.cc', 361 ], 362 }], 363 ['USE_wifi == 1', { 364 'sources': [ 365 'wifi/callback80211_metrics.cc', 366 'wifi/mac80211_monitor.cc', 367 'wifi/scan_session.cc', 368 'wifi/tdls_manager.cc', 369 'wifi/wake_on_wifi.cc', 370 'wifi/wifi.cc', 371 'wifi/wifi_endpoint.cc', 372 'wifi/wifi_provider.cc', 373 'wifi/wifi_service.cc', 374 ], 375 }], 376 ['USE_wifi == 1 or USE_wired_8021x == 1', { 377 'sources': [ 378 'dbus/chromeos_supplicant_bss_proxy.cc', 379 'dbus/chromeos_supplicant_interface_proxy.cc', 380 'dbus/chromeos_supplicant_network_proxy.cc', 381 'dbus/chromeos_supplicant_process_proxy.cc', 382 'eap_credentials.cc', 383 'eap_listener.cc', 384 'supplicant/supplicant_eap_state_handler.cc', 385 'supplicant/wpa_supplicant.cc', 386 ], 387 'actions': [ 388 { 389 'action_name': 'generate-supplicant-proxies', 390 'variables': { 391 'proxy_output_file': 'include/supplicant/dbus-proxies.h', 392 }, 393 'sources': [ 394 'dbus_bindings/supplicant-bss.dbus-xml', 395 'dbus_bindings/supplicant-interface.dbus-xml', 396 'dbus_bindings/supplicant-network.dbus-xml', 397 'dbus_bindings/supplicant-process.dbus-xml', 398 ], 399 'includes': ['../../../../platform2/common-mk/generate-dbus-proxies.gypi'], 400 }, 401 ], 402 }], 403 ['USE_wimax == 1', { 404 'variables': { 405 'exported_deps': [ 406 'libwimax_manager-client', 407 ], 408 'deps': ['<@(exported_deps)'], 409 }, 410 'all_dependent_settings': { 411 'variables': { 412 'deps': [ 413 '<@(exported_deps)', 414 ], 415 }, 416 }, 417 'sources': [ 418 'dbus/chromeos_wimax_device_proxy.cc', 419 'dbus/chromeos_wimax_manager_proxy.cc', 420 'dbus/chromeos_wimax_network_proxy.cc', 421 'wimax/wimax.cc', 422 'wimax/wimax_provider.cc', 423 'wimax/wimax_service.cc', 424 ], 425 }], 426 ['USE_wired_8021x == 1', { 427 'sources': [ 428 'ethernet/ethernet_eap_provider.cc', 429 'ethernet/ethernet_eap_service.cc', 430 ], 431 }], 432 ['USE_dhcpv6 == 1', { 433 'sources': [ 434 'dhcp/dhcpv6_config.cc', 435 ], 436 }], 437 ], 438 'sources': [ 439 'active_link_monitor.cc', 440 'arp_client.cc', 441 'arp_packet.cc', 442 'async_connection.cc', 443 'certificate_file.cc', 444 'connection.cc', 445 'connection_diagnostics.cc', 446 'connection_health_checker.cc', 447 'connection_info.cc', 448 'connection_info_reader.cc', 449 'connection_tester.cc', 450 'connectivity_trial.cc', 451 'crypto_des_cbc.cc', 452 'crypto_provider.cc', 453 'crypto_rot47.cc', 454 'crypto_util_proxy.cc', 455 'daemon_task.cc', 456 'dbus/chromeos_dbus_adaptor.cc', 457 'dbus/chromeos_dbus_control.cc', 458 'dbus/chromeos_dbus_service_watcher.cc', 459 'dbus/chromeos_device_dbus_adaptor.cc', 460 'dbus/chromeos_dhcpcd_listener.cc', 461 'dbus/chromeos_dhcpcd_proxy.cc', 462 'dbus/chromeos_ipconfig_dbus_adaptor.cc', 463 'dbus/chromeos_manager_dbus_adaptor.cc', 464 'dbus/chromeos_permission_broker_proxy.cc', 465 'dbus/chromeos_power_manager_proxy.cc', 466 'dbus/chromeos_profile_dbus_adaptor.cc', 467 'dbus/chromeos_rpc_task_dbus_adaptor.cc', 468 'dbus/chromeos_service_dbus_adaptor.cc', 469 'dbus/chromeos_third_party_vpn_dbus_adaptor.cc', 470 'dbus/chromeos_upstart_proxy.cc', 471 'dbus/dbus_service_watcher_factory.cc', 472 'default_profile.cc', 473 'device.cc', 474 'device_claimer.cc', 475 'device_info.cc', 476 'dhcp_properties.cc', 477 'dhcp/dhcp_config.cc', 478 'dhcp/dhcp_provider.cc', 479 'dhcp/dhcpv4_config.cc', 480 'dns_client.cc', 481 'dns_client_factory.cc', 482 'dns_server_tester.cc', 483 'ephemeral_profile.cc', 484 'error.cc', 485 'ethernet/ethernet.cc', 486 'ethernet/ethernet_service.cc', 487 'ethernet/ethernet_temporary_service.cc', 488 'ethernet/virtio_ethernet.cc', 489 'event_dispatcher.cc', 490 'external_task.cc', 491 'file_io.cc', 492 'file_reader.cc', 493 'geolocation_info.cc', 494 'hook_table.cc', 495 'http_proxy.cc', 496 'http_request.cc', 497 'http_url.cc', 498 'icmp.cc', 499 'icmp_session.cc', 500 'icmp_session_factory.cc', 501 'ip_address_store.cc', 502 'ipconfig.cc', 503 'key_value_store.cc', 504 'link_monitor.cc', 505 'logging.cc', 506 'manager.cc', 507 'metrics.cc', 508 'passive_link_monitor.cc', 509 'pending_activation_store.cc', 510 'portal_detector.cc', 511 'power_manager.cc', 512 'ppp_daemon.cc', 513 'ppp_device.cc', 514 'ppp_device_factory.cc', 515 'pppoe/pppoe_service.cc', 516 'process_manager.cc', 517 'profile.cc', 518 'property_store.cc', 519 'resolver.cc', 520 'result_aggregator.cc', 521 'routing_table.cc', 522 'rpc_task.cc', 523 'scope_logger.cc', 524 'scoped_umask.cc', 525 'service.cc', 526 'service_property_change_notifier.cc', 527 'shill_ares.cc', 528 'shill_config.cc', 529 'shill_daemon.cc', 530 'shill_test_config.cc', 531 'socket_info.cc', 532 'socket_info_reader.cc', 533 'static_ip_parameters.cc', 534 'store_factory.cc', 535 'technology.cc', 536 'tethering.cc', 537 'traffic_monitor.cc', 538 'upstart/upstart.cc', 539 'virtual_device.cc', 540 'vpn/vpn_driver.cc', 541 'vpn/vpn_provider.cc', 542 'vpn/vpn_service.cc', 543 ], 544 'actions': [ 545 { 546 'action_name': 'generate-dhcpcd-proxies', 547 'variables': { 548 'proxy_output_file': 'include/dhcpcd/dbus-proxies.h', 549 }, 550 'sources': [ 551 'dbus_bindings/dhcpcd.dbus-xml', 552 ], 553 'includes': ['../../../../platform2/common-mk/generate-dbus-proxies.gypi'], 554 }, 555 { 556 'action_name': 'generate-upstart-proxies', 557 'variables': { 558 'proxy_output_file': 'include/upstart/dbus-proxies.h', 559 }, 560 'sources': [ 561 'dbus_bindings/upstart.dbus-xml', 562 ], 563 'includes': ['../../../../platform2/common-mk/generate-dbus-proxies.gypi'], 564 }, 565 ], 566 }, 567 { 568 'target_name': 'shill', 569 'type': 'executable', 570 'dependencies': ['libshill'], 571 'sources': [ 572 'shill_main.cc', 573 ] 574 }, 575 { 576 'target_name': 'crypto-util', 577 'type': 'executable', 578 'dependencies': ['shim-protos'], 579 'variables': { 580 'deps': [ 581 'openssl', 582 'protobuf-lite', 583 ], 584 }, 585 'sources': [ 586 'shims/crypto_util.cc', 587 ] 588 }, 589 { 590 'target_name': 'netfilter-queue-helper', 591 'type': 'executable', 592 'variables': { 593 'deps': [ 594 'libnetfilter_queue', 595 'libnfnetlink', 596 ], 597 }, 598 'sources': [ 599 'shims/netfilter_queue_helper.cc', 600 'shims/netfilter_queue_processor.cc', 601 ] 602 }, 603 { 604 'target_name': 'openvpn-script', 605 'type': 'executable', 606 'variables': { 607 'deps': [ 608 'libshill-client', 609 ], 610 }, 611 'sources': [ 612 'shims/environment.cc', 613 'shims/openvpn_script.cc', 614 'shims/task_proxy.cc', 615 ] 616 }, 617 ], 618 'conditions': [ 619 ['USE_cellular == 1', { 620 'targets': [ 621 { 622 'target_name': 'set-apn-helper', 623 'type': 'executable', 624 'variables': { 625 'deps': [ 626 'dbus-glib-1' 627 ] 628 }, 629 'sources': [ 630 'shims/set_apn_helper.c', 631 ], 632 }, 633 ], 634 }], 635 ['USE_cellular == 1 or USE_vpn == 1 or USE_pppoe == 1', { 636 'targets': [ 637 { 638 'target_name': 'shill-pppd-plugin', 639 'type': 'shared_library', 640 'variables': { 641 'deps': [ 642 'libshill-client', 643 ], 644 }, 645 'sources': [ 646 'shims/c_ppp.cc', 647 'shims/environment.cc', 648 'shims/ppp.cc', 649 'shims/pppd_plugin.c', 650 'shims/task_proxy.cc', 651 ], 652 }, 653 ], 654 }], 655 ['USE_test == 1', { 656 'targets': [ 657 { 658 'target_name': 'shill_unittest', 659 'type': 'executable', 660 'dependencies': [ 661 'libshill', 662 ], 663 'includes': ['../../../../platform2/common-mk/common_test.gypi'], 664 'variables': { 665 'deps': [ 666 'libchrome-test-<(libbase_ver)', 667 'libnetfilter_queue', 668 'libnfnetlink', 669 ], 670 }, 671 'defines': [ 672 'SYSROOT="<(sysroot)"', 673 ], 674 'sources': [ 675 'active_link_monitor_unittest.cc', 676 'arp_client_test_helper.cc', 677 'arp_client_unittest.cc', 678 'arp_packet_unittest.cc', 679 'async_connection_unittest.cc', 680 'certificate_file_unittest.cc', 681 'connection_diagnostics_unittest.cc', 682 'connection_health_checker_unittest.cc', 683 'connection_info_reader_unittest.cc', 684 'connection_info_unittest.cc', 685 'connection_tester_unittest.cc', 686 'connection_unittest.cc', 687 'connectivity_trial_unittest.cc', 688 'crypto_des_cbc_unittest.cc', 689 'crypto_provider_unittest.cc', 690 'crypto_rot47_unittest.cc', 691 'crypto_util_proxy_unittest.cc', 692 'daemon_task_unittest.cc', 693 'dbus/chromeos_dbus_adaptor_unittest.cc', 694 'dbus/chromeos_manager_dbus_adaptor_unittest.cc', 695 'default_profile_unittest.cc', 696 'device_claimer_unittest.cc', 697 'device_info_unittest.cc', 698 'device_unittest.cc', 699 'dhcp/dhcp_config_unittest.cc', 700 'dhcp/dhcp_provider_unittest.cc', 701 'dhcp/dhcpv4_config_unittest.cc', 702 'dhcp/mock_dhcp_config.cc', 703 'dhcp/mock_dhcp_provider.cc', 704 'dhcp/mock_dhcp_proxy.cc', 705 'dhcp_properties_unittest.cc', 706 'dns_client_unittest.cc', 707 'dns_server_tester_unittest.cc', 708 'error_unittest.cc', 709 'ethernet/ethernet_service_unittest.cc', 710 'ethernet/ethernet_unittest.cc', 711 'ethernet/mock_ethernet.cc', 712 'ethernet/mock_ethernet_service.cc', 713 'external_task_unittest.cc', 714 'fake_store.cc', 715 'file_reader_unittest.cc', 716 'hook_table_unittest.cc', 717 'http_proxy_unittest.cc', 718 'http_request_unittest.cc', 719 'http_url_unittest.cc', 720 'icmp_unittest.cc', 721 'icmp_session_unittest.cc', 722 'ip_address_store_unittest.cc', 723 'ipconfig_unittest.cc', 724 'key_value_store_unittest.cc', 725 'link_monitor_unittest.cc', 726 'manager_unittest.cc', 727 'metrics_unittest.cc', 728 'mock_active_link_monitor.cc', 729 'mock_adaptors.cc', 730 'mock_ares.cc', 731 'mock_arp_client.cc', 732 'mock_async_connection.cc', 733 'mock_certificate_file.cc', 734 'mock_connection.cc', 735 'mock_connection_health_checker.cc', 736 'mock_connection_info_reader.cc', 737 'mock_connectivity_trial.cc', 738 'mock_control.cc', 739 'mock_crypto_util_proxy.cc', 740 'mock_device.cc', 741 'mock_device_claimer.cc', 742 'mock_device_info.cc', 743 'mock_dhcp_properties.cc', 744 'mock_dns_client.cc', 745 'mock_dns_client_factory.cc', 746 'mock_dns_server_tester.cc', 747 'mock_event_dispatcher.cc', 748 'mock_external_task.cc', 749 'mock_http_request.cc', 750 'mock_icmp.cc', 751 'mock_icmp_session.cc', 752 'mock_icmp_session_factory.cc', 753 'mock_ip_address_store.cc', 754 'mock_ipconfig.cc', 755 'mock_link_monitor.cc', 756 'mock_log.cc', 757 'mock_log_unittest.cc', 758 'mock_manager.cc', 759 'mock_metrics.cc', 760 'mock_passive_link_monitor.cc', 761 'mock_pending_activation_store.cc', 762 'mock_portal_detector.cc', 763 'mock_power_manager.cc', 764 'mock_power_manager_proxy.cc', 765 'mock_ppp_device.cc', 766 'mock_ppp_device_factory.cc', 767 'mock_process_manager.cc', 768 'mock_profile.cc', 769 'mock_property_store.cc', 770 'mock_resolver.cc', 771 'mock_routing_table.cc', 772 'mock_service.cc', 773 'mock_socket_info_reader.cc', 774 'mock_store.cc', 775 'mock_traffic_monitor.cc', 776 'mock_virtual_device.cc', 777 'net/attribute_list_unittest.cc', 778 'net/byte_string_unittest.cc', 779 'net/event_history_unittest.cc', 780 'net/ip_address_unittest.cc', 781 'net/netlink_attribute_unittest.cc', 782 'net/rtnl_handler_unittest.cc', 783 'net/rtnl_listener_unittest.cc', 784 'net/rtnl_message_unittest.cc', 785 'net/shill_time_unittest.cc', 786 'nice_mock_control.cc', 787 'passive_link_monitor_unittest.cc', 788 'pending_activation_store_unittest.cc', 789 'portal_detector_unittest.cc', 790 'power_manager_unittest.cc', 791 'ppp_daemon_unittest.cc', 792 'ppp_device_unittest.cc', 793 'pppoe/pppoe_service_unittest.cc', 794 'process_manager_unittest.cc', 795 'profile_unittest.cc', 796 'property_accessor_unittest.cc', 797 'property_observer_unittest.cc', 798 'property_store_unittest.cc', 799 'resolver_unittest.cc', 800 'result_aggregator_unittest.cc', 801 'routing_table_unittest.cc', 802 'rpc_task_unittest.cc', 803 'scope_logger_unittest.cc', 804 'service_property_change_test.cc', 805 'service_under_test.cc', 806 'service_unittest.cc', 807 'shims/netfilter_queue_processor.cc', 808 'shims/netfilter_queue_processor_unittest.cc', 809 'socket_info_reader_unittest.cc', 810 'socket_info_unittest.cc', 811 'static_ip_parameters_unittest.cc', 812 'technology_unittest.cc', 813 'testrunner.cc', 814 'traffic_monitor_unittest.cc', 815 'upstart/mock_upstart.cc', 816 'upstart/mock_upstart_proxy.cc', 817 'upstart/upstart_unittest.cc', 818 'virtual_device_unittest.cc', 819 'vpn/mock_vpn_provider.cc', 820 ], 821 'conditions': [ 822 ['USE_cellular == 1', { 823 'variables': { 824 'deps': [ 825 'ModemManager', 826 ], 827 }, 828 'sources': [ 829 'cellular/active_passive_out_of_credits_detector_unittest.cc', 830 'cellular/cellular_bearer_unittest.cc', 831 'cellular/cellular_capability_cdma_unittest.cc', 832 'cellular/cellular_capability_classic_unittest.cc', 833 'cellular/cellular_capability_gsm_unittest.cc', 834 'cellular/cellular_capability_universal_cdma_unittest.cc', 835 'cellular/cellular_capability_universal_unittest.cc', 836 'cellular/cellular_error_unittest.cc', 837 'cellular/cellular_service_unittest.cc', 838 'cellular/cellular_unittest.cc', 839 'cellular/mobile_operator_info_unittest.cc', 840 'cellular/mock_cellular.cc', 841 'cellular/mock_cellular_service.cc', 842 'cellular/mock_dbus_objectmanager_proxy.cc', 843 'cellular/mock_mm1_modem_modem3gpp_proxy.cc', 844 'cellular/mock_mm1_modem_modemcdma_proxy.cc', 845 'cellular/mock_mm1_modem_proxy.cc', 846 'cellular/mock_mm1_modem_simple_proxy.cc', 847 'cellular/mock_mm1_sim_proxy.cc', 848 'cellular/mock_mobile_operator_info.cc', 849 'cellular/mock_modem.cc', 850 'cellular/mock_modem_cdma_proxy.cc', 851 'cellular/mock_modem_gobi_proxy.cc', 852 'cellular/mock_modem_gsm_card_proxy.cc', 853 'cellular/mock_modem_gsm_network_proxy.cc', 854 'cellular/mock_modem_info.cc', 855 'cellular/mock_modem_manager_proxy.cc', 856 'cellular/mock_modem_proxy.cc', 857 'cellular/mock_modem_simple_proxy.cc', 858 'cellular/mock_out_of_credits_detector.cc', 859 'cellular/modem_1_unittest.cc', 860 'cellular/modem_info_unittest.cc', 861 'cellular/modem_manager_unittest.cc', 862 'cellular/modem_unittest.cc', 863 'cellular/subscription_state_out_of_credits_detector_unittest.cc', 864 'mock_dbus_properties_proxy.cc', 865 ], 866 }], 867 ['USE_dhcpv6 == 1', { 868 'sources': [ 869 'dhcp/dhcpv6_config_unittest.cc', 870 ], 871 }], 872 ['USE_json_store == 0', { 873 'sources': [ 874 'key_file_store_unittest.cc', 875 ], 876 }], 877 ['USE_json_store == 1', { 878 'sources': [ 879 'json_store_unittest.cc', 880 ], 881 }], 882 ['USE_vpn == 1', { 883 'sources': [ 884 'shims/environment.cc', 885 'shims/environment_unittest.cc', 886 'vpn/l2tp_ipsec_driver_unittest.cc', 887 'vpn/mock_openvpn_driver.cc', 888 'vpn/mock_openvpn_management_server.cc', 889 'vpn/mock_vpn_driver.cc', 890 'vpn/mock_vpn_service.cc', 891 'vpn/openvpn_driver_unittest.cc', 892 'vpn/openvpn_management_server_unittest.cc', 893 'vpn/third_party_vpn_driver_unittest.cc', 894 'vpn/vpn_driver_unittest.cc', 895 'vpn/vpn_provider_unittest.cc', 896 'vpn/vpn_service_unittest.cc', 897 ], 898 }], 899 ['USE_wifi == 1', { 900 'sources': [ 901 'net/netlink_manager_unittest.cc', 902 'net/netlink_message_unittest.cc', 903 'net/netlink_packet_unittest.cc', 904 'net/netlink_socket_unittest.cc', 905 'net/nl80211_attribute_unittest.cc', 906 'supplicant/mock_supplicant_bss_proxy.cc', 907 'wifi/callback80211_metrics_unittest.cc', 908 'wifi/mac80211_monitor_unittest.cc', 909 'wifi/mock_mac80211_monitor.cc', 910 'wifi/mock_scan_session.cc', 911 'wifi/mock_tdls_manager.cc', 912 'wifi/mock_wake_on_wifi.cc', 913 'wifi/mock_wifi.cc', 914 'wifi/mock_wifi_provider.cc', 915 'wifi/mock_wifi_service.cc', 916 'wifi/scan_session_unittest.cc', 917 'wifi/tdls_manager_unittest.cc', 918 'wifi/wake_on_wifi_unittest.cc', 919 'wifi/wifi_endpoint_unittest.cc', 920 'wifi/wifi_provider_unittest.cc', 921 'wifi/wifi_service_unittest.cc', 922 'wifi/wifi_unittest.cc', 923 ], 924 }], 925 ['USE_wifi == 1 or USE_wired_8021x == 1', { 926 'sources': [ 927 'eap_credentials_unittest.cc', 928 'eap_listener_unittest.cc', 929 'mock_eap_credentials.cc', 930 'mock_eap_listener.cc', 931 'supplicant/mock_supplicant_eap_state_handler.cc', 932 'supplicant/mock_supplicant_interface_proxy.cc', 933 'supplicant/mock_supplicant_network_proxy.cc', 934 'supplicant/mock_supplicant_process_proxy.cc', 935 'supplicant/supplicant_eap_state_handler_unittest.cc', 936 'supplicant/wpa_supplicant_unittest.cc', 937 ], 938 }], 939 ['USE_wimax == 1', { 940 'sources': [ 941 'wimax/mock_wimax.cc', 942 'wimax/mock_wimax_device_proxy.cc', 943 'wimax/mock_wimax_manager_proxy.cc', 944 'wimax/mock_wimax_network_proxy.cc', 945 'wimax/mock_wimax_provider.cc', 946 'wimax/mock_wimax_service.cc', 947 'wimax/wimax_provider_unittest.cc', 948 'wimax/wimax_service_unittest.cc', 949 'wimax/wimax_unittest.cc', 950 ], 951 }], 952 ['USE_wired_8021x == 1', { 953 'sources': [ 954 'ethernet/ethernet_eap_provider_unittest.cc', 955 'ethernet/ethernet_eap_service_unittest.cc', 956 'ethernet/mock_ethernet_eap_provider.cc', 957 ], 958 }], 959 ], 960 }, 961 { 962 'target_name': 'shill_setup_wifi', 963 'type': 'executable', 964 'variables': { 965 'deps': [ 966 'libshill-client', 967 ], 968 }, 969 'sources': [ 970 'setup_wifi/main.cc' 971 ], 972 }, 973 ], 974 }], 975 ], 976} 977