blob: f1397058be1e4f3627b178bda10fabac0cc5493c [file] [log] [blame]
# Copyright 2018 The Chromium OS Authors. All rights reserved.
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.
import("//common-mk/deps.gni")
import("//common-mk/generate-dbus-adaptors.gni")
import("//common-mk/generate-dbus-proxies.gni")
import("//common-mk/pkg_config.gni")
import("//common-mk/proto_library.gni")
import("//common-mk/protoctxt.gni")
group("all") {
deps = [
":libshill",
":mobile_operator_db",
":mobile_operator_db-db",
":mobile_operator_db-protos",
":netfilter-queue-helper",
":openvpn-script",
":shill",
":shill-chromeos-dbus-adaptors",
]
if (use.cellular) {
deps += [ ":set-apn-helper" ]
}
if (use.cellular || use.vpn || use.pppoe) {
deps += [ ":shill-pppd-plugin" ]
}
if (use.fuzzer) {
deps += [
":cellular_pco_fuzzer",
":verizon_subscription_state_fuzzer",
":wifi_ies_fuzzer",
]
}
if (use.test) {
deps += [
":shill_setup_wifi",
":shill_unittest",
]
}
}
pkg_config("target_defaults") {
cflags_cc = [
"-fno-strict-aliasing",
"-Woverloaded-virtual",
"-Wno-missing-field-initializers", # for LAZY_INSTANCE_INITIALIZER
]
cflags = [
"-Wextra",
"-Werror",
"-Wno-unused-parameter", # for pppd_plugin.c, base/tuple.h
# TODO(crbug.com/1047566): Remove the warning when libchrome fixes the issue.
"-Wno-deprecated-copy",
]
defines = [
"RUNDIR=\"/run/shill\"",
"SHIMDIR=\"${libdir}/shill/shims\"",
]
if (!use.cellular) {
defines += [ "DISABLE_CELLULAR" ]
} else {
# TODO(chromium:954634) Temporarily disable tests that depend on
# CellularCapabilityClassic until they are ported to use
# CellularCapability3gpp.
defines += [ "DISABLE_CELLULAR_CAPABILITY_CLASSIC_TESTS" ]
}
if (!use.dhcpv6) {
defines += [ "DISABLE_DHCPV6" ]
}
if (!use.pppoe) {
defines += [ "DISABLE_PPPOE" ]
}
if (use.test) {
# For the "mockable" keyword.
defines += [ "TEST_BUILD" ]
}
if (!use.vpn) {
defines += [ "DISABLE_VPN" ]
}
if (!use.wake_on_wifi) {
defines += [ "DISABLE_WAKE_ON_WIFI" ]
}
if (!use.wifi) {
defines += [ "DISABLE_WIFI" ]
}
if (!use.wired_8021x) {
defines += [ "DISABLE_WIRED_8021X" ]
}
if (!use.wpa3_sae) {
defines += [ "DISABLE_WPA3_SAE" ]
}
pkg_deps = [
"dbus-1",
"libbrillo",
"libchrome",
"libpatchpanel-client",
"libshill-net",
"libtirpc",
"re2",
# system_api depends on protobuf (or protobuf-lite). It must appear
# before protobuf here or the linker flags won't be in the right
# order.
"system_api",
]
if (use.fuzzer) {
pkg_deps += [ "protobuf" ]
} else {
pkg_deps += [ "protobuf-lite" ]
}
}
proto_library("mobile_operator_db-protos") {
proto_in_dir = "mobile_operator_db"
proto_out_dir = "include/shill/mobile_operator_db"
sources = [ "${proto_in_dir}/mobile_operator_db.proto" ]
}
protoc_text_to_bin("mobile_operator_db-db") {
protoc_proto_def = "mobile_operator_db.proto"
protoc_message_name = "shill.mobile_operator_db.MobileOperatorDB"
protoc_text_dir = "mobile_operator_db"
protoc_proto_dir = "mobile_operator_db"
protoc_bin_dir = "${root_out_dir}"
sources = [ "${protoc_text_dir}/serviceproviders.prototxt" ]
}
protoc_text_to_bin("mobile_operator_db-test-db") {
protoc_proto_def = "mobile_operator_db.proto"
protoc_message_name = "shill.mobile_operator_db.MobileOperatorDB"
protoc_text_dir = "mobile_operator_db/test_protos"
protoc_proto_dir = "mobile_operator_db"
protoc_bin_dir = "${root_out_dir}"
sources = [
"${protoc_text_dir}/data_test.prototxt",
"${protoc_text_dir}/init_test_empty_db_init.prototxt",
"${protoc_text_dir}/init_test_multiple_db_init_1.prototxt",
"${protoc_text_dir}/init_test_multiple_db_init_2.prototxt",
"${protoc_text_dir}/init_test_override_db_init_1.prototxt",
"${protoc_text_dir}/init_test_override_db_init_2.prototxt",
"${protoc_text_dir}/init_test_successful_init.prototxt",
"${protoc_text_dir}/main_test.prototxt",
]
}
static_library("mobile_operator_db") {
configs += [ ":target_defaults" ]
deps = [
":mobile_operator_db-db",
":mobile_operator_db-protos",
]
}
generate_dbus_adaptors("shill-chromeos-dbus-adaptors") {
dbus_adaptors_out_dir = "include/dbus_bindings"
sources = [
"dbus_bindings/org.chromium.flimflam.Device.dbus-xml",
"dbus_bindings/org.chromium.flimflam.IPConfig.dbus-xml",
"dbus_bindings/org.chromium.flimflam.Manager.dbus-xml",
"dbus_bindings/org.chromium.flimflam.Profile.dbus-xml",
"dbus_bindings/org.chromium.flimflam.Service.dbus-xml",
"dbus_bindings/org.chromium.flimflam.Task.dbus-xml",
"dbus_bindings/org.chromium.flimflam.ThirdPartyVpn.dbus-xml",
]
}
pkg_config("libshill_config") {
pkg_deps = [
"libcares",
"libshill-client",
]
}
if (use.cellular) {
pkg_config("libshill_cellular_config") {
pkg_deps = [ "ModemManager" ]
}
}
generate_dbus_proxies("generate_cellular_proxies") {
modemmanager_in_dir = "${sysroot}/usr/share/dbus-1/interfaces/"
proxy_output_file = "include/cellular/dbus-proxies.h"
sources = [
"${modemmanager_in_dir}/org.freedesktop.ModemManager1.Modem.Location.xml",
"${modemmanager_in_dir}/org.freedesktop.ModemManager1.Modem.Modem3gpp.xml",
"${modemmanager_in_dir}/org.freedesktop.ModemManager1.Modem.ModemCdma.xml",
"${modemmanager_in_dir}/org.freedesktop.ModemManager1.Modem.Signal.xml",
"${modemmanager_in_dir}/org.freedesktop.ModemManager1.Modem.Simple.xml",
"${modemmanager_in_dir}/org.freedesktop.ModemManager1.Modem.xml",
"${modemmanager_in_dir}/org.freedesktop.ModemManager1.Sim.xml",
"${modemmanager_in_dir}/org.freedesktop.ModemManager1.xml",
"dbus_bindings/dbus-objectmanager.dbus-xml",
"dbus_bindings/dbus-properties.dbus-xml",
]
}
generate_dbus_proxies("generate_dhcpcd_proxies") {
proxy_output_file = "include/dhcpcd/dbus-proxies.h"
sources = [ "dbus_bindings/dhcpcd.dbus-xml" ]
}
generate_dbus_proxies("generate_upstart_proxies") {
proxy_output_file = "include/upstart/dbus-proxies.h"
sources = [
"dbus_bindings/upstart-job-shill-event.dbus-xml",
"dbus_bindings/upstart.dbus-xml",
]
}
generate_dbus_proxies("generate_supplicant_proxies") {
proxy_output_file = "include/supplicant/dbus-proxies.h"
sources = [
"dbus_bindings/supplicant-bss.dbus-xml",
"dbus_bindings/supplicant-interface.dbus-xml",
"dbus_bindings/supplicant-network.dbus-xml",
"dbus_bindings/supplicant-process.dbus-xml",
]
}
static_library("libshill") {
sources = [
"active_link_monitor.cc",
"certificate_file.cc",
"connection.cc",
"connection_diagnostics.cc",
"connection_info.cc",
"connection_info_reader.cc",
"crypto.cc",
"daemon_task.cc",
"dbus/dbus_adaptor.cc",
"dbus/dbus_control.cc",
"dbus/dbus_service_watcher.cc",
"dbus/dbus_service_watcher_factory.cc",
"dbus/device_dbus_adaptor.cc",
"dbus/dhcpcd_listener.cc",
"dbus/dhcpcd_proxy.cc",
"dbus/ipconfig_dbus_adaptor.cc",
"dbus/manager_dbus_adaptor.cc",
"dbus/power_manager_proxy.cc",
"dbus/profile_dbus_adaptor.cc",
"dbus/rpc_task_dbus_adaptor.cc",
"dbus/service_dbus_adaptor.cc",
"dbus/third_party_vpn_dbus_adaptor.cc",
"dbus/upstart_proxy.cc",
"default_profile.cc",
"device.cc",
"device_claimer.cc",
"device_id.cc",
"device_info.cc",
"dhcp/dhcp_config.cc",
"dhcp/dhcp_properties.cc",
"dhcp/dhcp_provider.cc",
"dhcp/dhcpv4_config.cc",
"dns_client.cc",
"dns_client_factory.cc",
"dns_util.cc",
"ephemeral_profile.cc",
"error.cc",
"ethernet/ethernet.cc",
"ethernet/ethernet_provider.cc",
"ethernet/ethernet_service.cc",
"ethernet/ethernet_temporary_service.cc",
"ethernet/virtio_ethernet.cc",
"event_dispatcher.cc",
"external_task.cc",
"file_io.cc",
"file_reader.cc",
"geolocation_info.cc",
"hook_table.cc",
"http_request.cc",
"http_url.cc",
"icmp.cc",
"icmp_session.cc",
"icmp_session_factory.cc",
"ip_address_store.cc",
"ipconfig.cc",
"key_file_store.cc",
"key_value_store.cc",
"link_monitor.cc",
"logging.cc",
"manager.cc",
"metrics.cc",
"passive_link_monitor.cc",
"portal_detector.cc",
"power_manager.cc",
"process_manager.cc",
"profile.cc",
"property_store.cc",
"resolver.cc",
"result_aggregator.cc",
"routing_policy_entry.cc",
"routing_table.cc",
"routing_table_entry.cc",
"rpc_task.cc",
"scope_logger.cc",
"service.cc",
"shill_ares.cc",
"shill_config.cc",
"shill_daemon.cc",
"shill_test_config.cc",
"socket_info.cc",
"socket_info_reader.cc",
"static_ip_parameters.cc",
"technology.cc",
"tethering.cc",
"throttler.cc",
"traffic_monitor.cc",
"upstart/upstart.cc",
"virtual_device.cc",
"vpn/vpn_driver.cc",
"vpn/vpn_provider.cc",
"vpn/vpn_service.cc",
]
configs += [
":libshill_config",
":target_defaults",
]
libs = [
"bootstat",
"rootdev",
"rt",
]
all_dependent_pkg_deps = [
"libcares",
"libmetrics",
"libpasswordprovider",
"libpower_manager-client",
]
deps = [
":generate_dhcpcd_proxies",
":generate_upstart_proxies",
":mobile_operator_db",
":shill-chromeos-dbus-adaptors",
]
if (use.cellular) {
sources += [
"cellular/cellular.cc",
"cellular/cellular_bearer.cc",
"cellular/cellular_capability.cc",
"cellular/cellular_capability_3gpp.cc",
"cellular/cellular_capability_cdma.cc",
"cellular/cellular_error.cc",
"cellular/cellular_pco.cc",
"cellular/cellular_service.cc",
"cellular/cellular_service_provider.cc",
"cellular/mobile_operator_info.cc",
"cellular/mobile_operator_info_impl.cc",
"cellular/modem.cc",
"cellular/modem_info.cc",
"cellular/pending_activation_store.cc",
"cellular/subscription_state.cc",
"cellular/verizon_subscription_state.cc",
"dbus/dbus_objectmanager_proxy.cc",
"dbus/dbus_properties_proxy.cc",
"dbus/mm1_modem_location_proxy.cc",
"dbus/mm1_modem_modem3gpp_proxy.cc",
"dbus/mm1_modem_modemcdma_proxy.cc",
"dbus/mm1_modem_proxy.cc",
"dbus/mm1_modem_signal_proxy.cc",
"dbus/mm1_modem_simple_proxy.cc",
"dbus/mm1_proxy.cc",
"dbus/mm1_sim_proxy.cc",
"protobuf_lite_streams.cc",
]
configs += [ ":libshill_cellular_config" ]
deps += [ ":generate_cellular_proxies" ]
}
if (use.cellular || use.vpn || use.pppoe) {
sources += [
"ppp_daemon.cc",
"ppp_device.cc",
"ppp_device_factory.cc",
]
}
if (use.pppoe) {
sources += [ "pppoe/pppoe_service.cc" ]
}
if (use.vpn) {
sources += [
"vpn/arc_vpn_driver.cc",
"vpn/l2tp_ipsec_driver.cc",
"vpn/openvpn_driver.cc",
"vpn/openvpn_management_server.cc",
"vpn/third_party_vpn_driver.cc",
"vpn/wireguard_driver.cc",
]
}
if (use.wifi) {
sources += [
"wifi/wake_on_wifi.cc",
"wifi/wifi.cc",
"wifi/wifi_endpoint.cc",
"wifi/wifi_provider.cc",
"wifi/wifi_service.cc",
]
}
if (use.wifi || use.wired_8021x) {
sources += [
"dbus/supplicant_bss_proxy.cc",
"dbus/supplicant_interface_proxy.cc",
"dbus/supplicant_network_proxy.cc",
"dbus/supplicant_process_proxy.cc",
"eap_credentials.cc",
"eap_listener.cc",
"supplicant/supplicant_eap_state_handler.cc",
"supplicant/supplicant_manager.cc",
"supplicant/wpa_supplicant.cc",
]
deps += [ ":generate_supplicant_proxies" ]
}
if (use.wired_8021x) {
sources += [
"ethernet/ethernet_eap_provider.cc",
"ethernet/ethernet_eap_service.cc",
]
}
if (use.dhcpv6) {
sources += [ "dhcp/dhcpv6_config.cc" ]
}
}
pkg_config("shill_config") {
pkg_deps = [ "libminijail" ]
}
executable("shill") {
sources = [ "shill_main.cc" ]
configs += [
":shill_config",
":target_defaults",
]
deps = [ ":libshill" ]
}
pkg_config("netfilter-queue-helper_config") {
pkg_deps = [
"libnetfilter_queue",
"libnfnetlink",
]
}
executable("netfilter-queue-helper") {
sources = [
"shims/netfilter_queue_helper.cc",
"shims/netfilter_queue_processor.cc",
]
configs += [
":netfilter-queue-helper_config",
":target_defaults",
]
}
pkg_config("openvpn-script_config") {
pkg_deps = [ "libshill-client" ]
}
executable("openvpn-script") {
sources = [
"shims/environment.cc",
"shims/openvpn_script.cc",
"shims/task_proxy.cc",
]
configs += [
":openvpn-script_config",
":target_defaults",
]
}
if (use.cellular) {
pkg_config("set-apn-helper_config") {
pkg_deps = [ "dbus-1" ]
}
executable("set-apn-helper") {
sources = [ "shims/set_apn_helper.c" ]
configs += [
":set-apn-helper_config",
":target_defaults",
]
}
}
if (use.cellular || use.vpn || use.pppoe) {
shared_library("shill-pppd-plugin") {
sources = [
"shims/c_ppp.cc",
"shims/environment.cc",
"shims/ppp.cc",
"shims/pppd_plugin.c",
"shims/task_proxy.cc",
]
configs += [
":openvpn-script_config",
":target_defaults",
]
}
}
if (use.fuzzer) {
pkg_config("fuzzed_data_config") {
pkg_deps = [ "libchrome-test" ]
}
executable("cellular_pco_fuzzer") {
sources = [ "cellular/cellular_pco_fuzzer.cc" ]
configs += [
"//common-mk/common_fuzzer",
":fuzzed_data_config",
":target_defaults",
]
deps = [ ":libshill" ]
}
executable("verizon_subscription_state_fuzzer") {
sources = [ "cellular/verizon_subscription_state_fuzzer.cc" ]
configs += [
"//common-mk/common_fuzzer",
":target_defaults",
]
deps = [ ":libshill" ]
}
executable("wifi_ies_fuzzer") {
sources = [ "wifi/wifi_ies_fuzzer.cc" ]
configs += [
"//common-mk/common_fuzzer",
":target_defaults",
":shill_config",
]
deps = [ ":libshill" ]
}
}
if (use.test) {
pkg_config("shill_unittest_config") {
pkg_deps = [
"libchrome-test",
"libminijail",
"libnetfilter_queue",
"libnfnetlink",
]
if (use.cellular) {
pkg_deps += [ "ModemManager" ]
}
}
executable("shill_unittest") {
sources = [
"active_link_monitor_test.cc",
"arp_client_test_helper.cc",
"certificate_file_test.cc",
"connection_diagnostics_test.cc",
"connection_info_reader_test.cc",
"connection_info_test.cc",
"connection_test.cc",
"crypto_test.cc",
"daemon_task_test.cc",
"dbus/dbus_adaptor_test.cc",
"dbus/manager_dbus_adaptor_test.cc",
"default_profile_test.cc",
"device_claimer_test.cc",
"device_id_test.cc",
"device_info_test.cc",
"device_test.cc",
"dhcp/dhcp_config_test.cc",
"dhcp/dhcp_properties_test.cc",
"dhcp/dhcp_provider_test.cc",
"dhcp/dhcpv4_config_test.cc",
"dhcp/mock_dhcp_config.cc",
"dhcp/mock_dhcp_properties.cc",
"dhcp/mock_dhcp_provider.cc",
"dhcp/mock_dhcp_proxy.cc",
"dns_client_test.cc",
"dns_util_test.cc",
"error_test.cc",
"ethernet/ethernet_provider.cc",
"ethernet/ethernet_provider_test.cc",
"ethernet/ethernet_service_test.cc",
"ethernet/ethernet_test.cc",
"ethernet/mock_ethernet.cc",
"ethernet/mock_ethernet_provider.cc",
"ethernet/mock_ethernet_service.cc",
"external_task_test.cc",
"fake_store.cc",
"file_reader_test.cc",
"hook_table_test.cc",
"http_request_test.cc",
"http_url_test.cc",
"icmp_session_test.cc",
"icmp_test.cc",
"ip_address_store_test.cc",
"ipconfig_test.cc",
"key_file_store_test.cc",
"key_value_store_test.cc",
"link_monitor_test.cc",
"manager_test.cc",
"metrics_test.cc",
"mock_active_link_monitor.cc",
"mock_adaptors.cc",
"mock_ares.cc",
"mock_arp_client.cc",
"mock_certificate_file.cc",
"mock_connection.cc",
"mock_connection_info_reader.cc",
"mock_control.cc",
"mock_device.cc",
"mock_device_info.cc",
"mock_dns_client.cc",
"mock_dns_client_factory.cc",
"mock_event_dispatcher.cc",
"mock_external_task.cc",
"mock_icmp.cc",
"mock_icmp_session.cc",
"mock_icmp_session_factory.cc",
"mock_ipconfig.cc",
"mock_link_monitor.cc",
"mock_log.cc",
"mock_log_test.cc",
"mock_manager.cc",
"mock_metrics.cc",
"mock_passive_link_monitor.cc",
"mock_portal_detector.cc",
"mock_power_manager.cc",
"mock_power_manager_proxy.cc",
"mock_process_manager.cc",
"mock_profile.cc",
"mock_resolver.cc",
"mock_routing_table.cc",
"mock_service.cc",
"mock_socket_info_reader.cc",
"mock_throttler.cc",
"mock_traffic_monitor.cc",
"mock_virtual_device.cc",
"passive_link_monitor_test.cc",
"portal_detector_test.cc",
"power_manager_test.cc",
"process_manager_test.cc",
"profile_test.cc",
"property_accessor_test.cc",
"property_store_test.cc",
"resolver_test.cc",
"result_aggregator_test.cc",
"routing_table_test.cc",
"rpc_task_test.cc",
"scope_logger_test.cc",
"service_property_change_test.cc",
"service_test.cc",
"service_under_test.cc",
"shims/netfilter_queue_processor.cc",
"shims/netfilter_queue_processor_test.cc",
"socket_info_reader_test.cc",
"socket_info_test.cc",
"static_ip_parameters_test.cc",
"technology_test.cc",
"testrunner.cc",
"throttler_test.cc",
"timeout_set_test.cc",
"traffic_monitor_test.cc",
"upstart/mock_upstart.cc",
"upstart/mock_upstart_proxy.cc",
"upstart/upstart_test.cc",
"virtual_device_test.cc",
"vpn/mock_vpn_provider.cc",
]
configs += [
"//common-mk:test",
":libshill_config",
":shill_unittest_config",
":target_defaults",
]
deps = [ ":libshill" ]
if (use.cellular) {
sources += [
"cellular/cellular_bearer_test.cc",
"cellular/cellular_capability_3gpp_test.cc",
"cellular/cellular_capability_cdma_test.cc",
"cellular/cellular_error_test.cc",
"cellular/cellular_pco_test.cc",
"cellular/cellular_service_provider_test.cc",
"cellular/cellular_service_test.cc",
"cellular/cellular_test.cc",
"cellular/mobile_operator_info_test.cc",
"cellular/mock_cellular.cc",
"cellular/mock_cellular_service.cc",
"cellular/mock_dbus_objectmanager_proxy.cc",
"cellular/mock_mm1_modem_location_proxy.cc",
"cellular/mock_mm1_modem_modem3gpp_proxy.cc",
"cellular/mock_mm1_modem_modemcdma_proxy.cc",
"cellular/mock_mm1_modem_proxy.cc",
"cellular/mock_mm1_modem_signal_proxy.cc",
"cellular/mock_mm1_modem_simple_proxy.cc",
"cellular/mock_mm1_proxy.cc",
"cellular/mock_mm1_sim_proxy.cc",
"cellular/mock_mobile_operator_info.cc",
"cellular/mock_modem_info.cc",
"cellular/mock_pending_activation_store.cc",
"cellular/modem_info_test.cc",
"cellular/modem_test.cc",
"cellular/pending_activation_store_test.cc",
"cellular/verizon_subscription_state_test.cc",
"dbus/dbus_properties_proxy_test.cc",
"dbus/fake_properties_proxy.cc",
]
deps += [ ":mobile_operator_db-test-db" ]
}
if (use.cellular || use.vpn || use.pppoe) {
sources += [
"mock_ppp_device.cc",
"mock_ppp_device_factory.cc",
"ppp_daemon_test.cc",
"ppp_device_test.cc",
]
}
if (use.dhcpv6) {
sources += [ "dhcp/dhcpv6_config_test.cc" ]
}
if (use.pppoe) {
sources += [ "pppoe/pppoe_service_test.cc" ]
}
if (use.vpn) {
sources += [
"shims/environment.cc",
"shims/environment_test.cc",
"vpn/arc_vpn_driver_test.cc",
"vpn/l2tp_ipsec_driver_test.cc",
"vpn/mock_openvpn_management_server.cc",
"vpn/mock_vpn_driver.cc",
"vpn/mock_vpn_service.cc",
"vpn/openvpn_driver_test.cc",
"vpn/openvpn_management_server_test.cc",
"vpn/third_party_vpn_driver_test.cc",
"vpn/vpn_driver_test.cc",
"vpn/vpn_provider_test.cc",
"vpn/vpn_service_test.cc",
"vpn/wireguard_driver_test.cc",
]
}
if (use.wifi) {
sources += [
"supplicant/mock_supplicant_bss_proxy.cc",
"wifi/mock_wake_on_wifi.cc",
"wifi/mock_wifi.cc",
"wifi/mock_wifi_provider.cc",
"wifi/mock_wifi_service.cc",
"wifi/wake_on_wifi_test.cc",
"wifi/wifi_endpoint_test.cc",
"wifi/wifi_provider_test.cc",
"wifi/wifi_service_test.cc",
"wifi/wifi_test.cc",
]
}
if (use.wifi || use.wired_8021x) {
sources += [
"eap_credentials_test.cc",
"eap_listener_test.cc",
"mock_eap_credentials.cc",
"mock_eap_listener.cc",
"supplicant/mock_supplicant_eap_state_handler.cc",
"supplicant/mock_supplicant_interface_proxy.cc",
"supplicant/mock_supplicant_network_proxy.cc",
"supplicant/mock_supplicant_process_proxy.cc",
"supplicant/supplicant_eap_state_handler_test.cc",
"supplicant/supplicant_manager_test.cc",
"supplicant/wpa_supplicant_test.cc",
]
}
if (use.wired_8021x) {
sources += [
"ethernet/ethernet_eap_provider_test.cc",
"ethernet/ethernet_eap_service_test.cc",
"ethernet/mock_ethernet_eap_provider.cc",
]
}
}
executable("shill_setup_wifi") {
sources = [ "setup_wifi/main.cc" ]
configs += [
":openvpn-script_config",
":target_defaults",
]
}
}