| # Copyright 2017 The Fuchsia Authors. All rights reserved. |
| # Use of this source code is governed by a BSD-style license that can be |
| # found in the LICENSE file. |
| |
| declare_args() { |
| # Selects the SoftMAC client implementation to use. Choices: |
| # false (default) - C++ Client MLME implementation |
| # true - Rust Client MLME implementation |
| # This argument is temporary until Rust MLME is ready to be used. |
| experimental_wlan_client_mlme = false |
| } |
| |
| config("wlan_mlme_config") { |
| include_dirs = [ "include" ] |
| } |
| |
| source_set("mlme") { |
| if (experimental_wlan_client_mlme == true) { |
| defines = [ "USE_RUST_CLIENT_MLME" ] |
| } |
| |
| public = [ |
| "include/wlan/mlme/ap/ap_mlme.h", |
| "include/wlan/mlme/ap/beacon_sender.h", |
| "include/wlan/mlme/ap/infra_bss.h", |
| "include/wlan/mlme/ap/remote_client.h", |
| "include/wlan/mlme/ap/remote_client_interface.h", |
| "include/wlan/mlme/ap/tim.h", |
| "include/wlan/mlme/assoc_context.h", |
| "include/wlan/mlme/client/bss.h", |
| "include/wlan/mlme/client/channel_scheduler.h", |
| "include/wlan/mlme/client/client_factory.h", |
| "include/wlan/mlme/client/client_mlme.h", |
| "include/wlan/mlme/client/join_context.h", |
| "include/wlan/mlme/client/scanner.h", |
| "include/wlan/mlme/client/station.h", |
| "include/wlan/mlme/convert.h", |
| "include/wlan/mlme/debug.h", |
| "include/wlan/mlme/device_interface.h", |
| "include/wlan/mlme/dispatcher.h", |
| "include/wlan/mlme/eapol.h", |
| "include/wlan/mlme/frame_validation.h", |
| "include/wlan/mlme/mac_frame.h", |
| "include/wlan/mlme/macaddr_map.h", |
| "include/wlan/mlme/mcs.h", |
| "include/wlan/mlme/mesh/mesh_mlme.h", |
| "include/wlan/mlme/mlme.h", |
| "include/wlan/mlme/packet.h", |
| "include/wlan/mlme/sequence.h", |
| "include/wlan/mlme/service.h", |
| "include/wlan/mlme/timer.h", |
| "include/wlan/mlme/timer_manager.h", |
| "include/wlan/mlme/wlan.h", |
| ] |
| |
| sources = [ |
| "ap/ap_mlme.cpp", |
| "ap/beacon_sender.cpp", |
| "ap/infra_bss.cpp", |
| "ap/remote_client.cpp", |
| "ap/tim.cpp", |
| "assoc_context.cpp", |
| "beacon.cpp", |
| "client/bss.cpp", |
| "client/channel_scheduler.cpp", |
| "client/client_factory.cpp", |
| "client/client_mlme.cpp", |
| "client/join_context.cpp", |
| "client/scanner.cpp", |
| "client/station.cpp", |
| "convert.cpp", |
| "debug.cpp", |
| "device_caps.cpp", |
| "device_interface.cpp", |
| "dispatcher.cpp", |
| "ht.cpp", |
| "key.cpp", |
| "mac_frame.cpp", |
| "mac_header_writer.cpp", |
| "mcs.cpp", |
| "mesh/deduplicator.cpp", |
| "mesh/hwmp.cpp", |
| "mesh/mesh_mlme.cpp", |
| "mesh/parse_mp_action.cpp", |
| "mesh/path_table.cpp", |
| "mesh/write_mp_action.cpp", |
| "packet.cpp", |
| "parse_beacon.cpp", |
| "rates_elements.cpp", |
| "service.cpp", |
| "timer.cpp", |
| "validate_frame.cpp", |
| ] |
| |
| public_deps = [ |
| "//garnet/lib/rust/wlan-mlme-c", |
| "//garnet/lib/wlan/common", |
| "//garnet/lib/wlan/protocol", |
| "//garnet/public/fidl/fuchsia.wlan.mlme", |
| "//garnet/public/fidl/fuchsia.wlan.stats", |
| "//garnet/public/lib/svc/cpp", |
| "//garnet/public/lib/timekeeper", |
| "//garnet/public/lib/timekeeper:system", |
| "//zircon/public/lib/bitmap", |
| "//zircon/public/lib/fbl", |
| "//zircon/public/lib/zx", |
| ] |
| |
| public_configs = [ ":wlan_mlme_config" ] |
| configs += [ "//build/config/fuchsia:enable_zircon_asserts" ] |
| } |