| # Copyright (c) 2020, The OpenThread Authors. |
| # All rights reserved. |
| # |
| # Redistribution and use in source and binary forms, with or without |
| # modification, are permitted provided that the following conditions are met: |
| # 1. Redistributions of source code must retain the above copyright |
| # notice, this list of conditions and the following disclaimer. |
| # 2. Redistributions in binary form must reproduce the above copyright |
| # notice, this list of conditions and the following disclaimer in the |
| # documentation and/or other materials provided with the distribution. |
| # 3. Neither the name of the copyright holder nor the |
| # names of its contributors may be used to endorse or promote products |
| # derived from this software without specific prior written permission. |
| # |
| # THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" |
| # AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE |
| # IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE |
| # ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE |
| # LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR |
| # CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF |
| # SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS |
| # INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN |
| # CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) |
| # ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE |
| # POSSIBILITY OF SUCH DAMAGE. |
| # |
| |
| import("../../etc/gn/openthread.gni") |
| |
| visibility = [ "../../*" ] |
| |
| if (openthread_enable_core_config_args) { |
| config("core_config_args") { |
| defines = [] |
| |
| if (openthread_config_thread_version == "1.1") { |
| defines += [ "OPENTHREAD_CONFIG_THREAD_VERSION=OT_THREAD_VERSION_1_1" ] |
| } else if (openthread_config_thread_version == "1.2") { |
| defines += [ "OPENTHREAD_CONFIG_THREAD_VERSION=OT_THREAD_VERSION_1_2" ] |
| } else if (openthread_config_thread_version != "") { |
| assert(false, |
| "Unrecognized Thread version: ${openthread_config_thread_version}") |
| } |
| |
| if (openthread_config_log_output == "none") { |
| defines += |
| [ "OPENTHREAD_CONFIG_LOG_OUTPUT=OPENTHREAD_CONFIG_LOG_OUTPUT_NONE" ] |
| } else if (openthread_config_log_output == "debug_uart") { |
| defines += [ |
| "OPENTHREAD_CONFIG_LOG_OUTPUT=OPENTHREAD_CONFIG_LOG_OUTPUT_DEBUG_UART", |
| ] |
| } else if (openthread_config_log_output == "app") { |
| defines += |
| [ "OPENTHREAD_CONFIG_LOG_OUTPUT=OPENTHREAD_CONFIG_LOG_OUTPUT_APP" ] |
| } else if (openthread_config_log_output == "platform_defined") { |
| defines += [ "OPENTHREAD_CONFIG_LOG_OUTPUT=OPENTHREAD_CONFIG_LOG_OUTPUT_PLATFORM_DEFINED" ] |
| } else if (openthread_config_log_output != "") { |
| assert(false, "Unrecognized log output: ${openthread_config_log_output}") |
| } |
| |
| if (!openthread_config_assert_enable) { |
| defines += [ "OPENTHREAD_CONFIG_ASSERT_ENABLE=0" ] |
| } |
| |
| if (openthread_config_anycast_locator_enable) { |
| defines += [ "OPENTHREAD_CONFIG_ANYCAST_LOCATOR_ENABLE=1" ] |
| } |
| |
| if (openthread_config_backbone_router_enable) { |
| defines += [ "OPENTHREAD_CONFIG_BACKBONE_ROUTER_ENABLE=1" ] |
| } |
| |
| if (openthread_config_border_agent_enable) { |
| defines += [ "OPENTHREAD_CONFIG_BORDER_AGENT_ENABLE=1" ] |
| } |
| |
| if (openthread_config_border_router_enable) { |
| defines += [ "OPENTHREAD_CONFIG_BORDER_ROUTER_ENABLE=1" ] |
| } |
| |
| if (openthread_config_border_routing_enable) { |
| defines += [ "OPENTHREAD_CONFIG_BORDER_ROUTING_ENABLE=1" ] |
| } |
| |
| if (openthread_external_mbedtls != "") { |
| defines += [ "OPENTHREAD_CONFIG_ENABLE_BUILTIN_MBEDTLS=0" ] |
| } else if (!openthread_config_enable_builtin_mbedtls_management) { |
| defines += [ "OPENTHREAD_CONFIG_ENABLE_BUILTIN_MBEDTLS_MANAGEMENT=0" ] |
| } |
| |
| if (openthread_config_channel_manager_enable) { |
| defines += [ "OPENTHREAD_CONFIG_CHANNEL_MANAGER_ENABLE=1" ] |
| } |
| |
| if (openthread_config_channel_monitor_enable) { |
| defines += [ "OPENTHREAD_CONFIG_CHANNEL_MONITOR_ENABLE=1" ] |
| } |
| |
| if (openthread_config_child_supervision_enable) { |
| defines += [ "OPENTHREAD_CONFIG_CHILD_SUPERVISION_ENABLE=1" ] |
| } |
| |
| if (openthread_config_coap_api_enable) { |
| defines += [ "OPENTHREAD_CONFIG_COAP_API_ENABLE=1" ] |
| } |
| |
| if (openthread_config_coap_secure_api_enable) { |
| defines += [ "OPENTHREAD_CONFIG_COAP_SECURE_API_ENABLE=1" ] |
| } |
| |
| if (openthread_config_coap_observe_api_enable) { |
| defines += [ "OPENTHREAD_CONFIG_COAP_OBSERVE_API_ENABLE=1" ] |
| } |
| |
| if (openthread_config_commissioner_enable) { |
| defines += [ "OPENTHREAD_CONFIG_COMMISSIONER_ENABLE=1" ] |
| } |
| |
| if (openthread_config_mac_csl_receiver_enable) { |
| defines += [ "OPENTHREAD_CONFIG_MAC_CSL_RECEIVER_ENABLE=1" ] |
| } |
| |
| if (openthread_config_dhcp6_client_enable) { |
| defines += [ "OPENTHREAD_CONFIG_DHCP6_CLIENT_ENABLE=1" ] |
| } |
| |
| if (openthread_config_dhcp6_server_enable) { |
| defines += [ "OPENTHREAD_CONFIG_DHCP6_SERVER_ENABLE=1" ] |
| } |
| |
| if (openthread_config_diag_enable) { |
| defines += [ "OPENTHREAD_CONFIG_DIAG_ENABLE=1" ] |
| } |
| |
| if (openthread_config_dns_client_enable) { |
| defines += [ "OPENTHREAD_CONFIG_DNS_CLIENT_ENABLE=1" ] |
| } |
| |
| if (openthread_config_dnssd_server_enable) { |
| defines += [ "OPENTHREAD_CONFIG_DNSSD_SERVER_ENABLE=1" ] |
| } |
| |
| if (openthread_config_ecdsa_enable) { |
| defines += [ "OPENTHREAD_CONFIG_ECDSA_ENABLE=1" ] |
| } |
| |
| if (openthread_config_dua_enable) { |
| defines += [ "OPENTHREAD_CONFIG_DUA_ENABLE=1" ] |
| } |
| |
| if (openthread_config_mlr_enable) { |
| defines += [ "OPENTHREAD_CONFIG_MLR_ENABLE=1" ] |
| } |
| |
| if (openthread_config_heap_external_enable) { |
| defines += [ "OPENTHREAD_CONFIG_HEAP_EXTERNAL_ENABLE=1" ] |
| } |
| |
| if (openthread_config_ip6_fragmentation_enable) { |
| defines += [ "OPENTHREAD_CONFIG_IP6_FRAGMENTATION_ENABLE=1" ] |
| } |
| |
| if (openthread_config_jam_detection_enable) { |
| defines += [ "OPENTHREAD_CONFIG_JAM_DETECTION_ENABLE=1" ] |
| } |
| |
| if (openthread_config_joiner_enable) { |
| defines += [ "OPENTHREAD_CONFIG_JOINER_ENABLE=1" ] |
| } |
| |
| if (openthread_config_legacy_enable) { |
| defines += [ "OPENTHREAD_CONFIG_LEGACY_ENABLE=1" ] |
| } |
| |
| if (openthread_config_link_metrics_initiator_enable) { |
| defines += [ "DOPENTHREAD_CONFIG_MLE_LINK_METRICS_INITIATOR_ENABLE=1" ] |
| } |
| |
| if (openthread_config_link_metrics_subject_enable) { |
| defines += [ "DOPENTHREAD_CONFIG_MLE_LINK_METRICS_SUBJECT_ENABLE=1" ] |
| } |
| |
| if (openthread_config_link_raw_enable) { |
| defines += [ "OPENTHREAD_CONFIG_LINK_RAW_ENABLE=1" ] |
| } |
| |
| if (openthread_config_log_level_dynamic_enable) { |
| defines += [ "OPENTHREAD_CONFIG_LOG_LEVEL_DYNAMIC_ENABLE=1" ] |
| } |
| |
| if (openthread_config_mac_filter_enable) { |
| defines += [ "OPENTHREAD_CONFIG_MAC_FILTER_ENABLE=1" ] |
| } |
| |
| if (openthread_config_message_use_heap) { |
| defines += [ "OPENTHREAD_CONFIG_MESSAGE_USE_HEAP_ENABLE=1" ] |
| } |
| |
| if (openthread_config_mle_long_routes_enable) { |
| defines += [ "OPENTHREAD_CONFIG_MLE_LONG_ROUTES_ENABLE=1" ] |
| } |
| |
| if (openthread_config_tmf_network_diag_mtd_enable) { |
| defines += [ "OPENTHREAD_CONFIG_TMF_NETWORK_DIAG_MTD_ENABLE=1" ] |
| } |
| |
| if (openthread_config_multiple_instance_enable) { |
| defines += [ "OPENTHREAD_CONFIG_MULTIPLE_INSTANCE_ENABLE=1" ] |
| } |
| |
| if (openthread_config_platform_netif_enable) { |
| defines += [ "OPENTHREAD_CONFIG_PLATFORM_NETIF_ENABLE=1" ] |
| } |
| |
| if (openthread_config_platform_udp_enable) { |
| defines += [ "OPENTHREAD_CONFIG_PLATFORM_UDP_ENABLE=1" ] |
| } |
| |
| if (openthread_config_reference_device_enable) { |
| defines += [ "OPENTHREAD_CONFIG_REFERENCE_DEVICE_ENABLE=1" ] |
| } |
| |
| if (openthread_config_tmf_netdata_service_enable) { |
| defines += [ "OPENTHREAD_CONFIG_TMF_NETDATA_SERVICE_ENABLE=1" ] |
| } |
| |
| if (openthread_settings_ram) { |
| defines += [ "OPENTHREAD_SETTINGS_RAM=1" ] |
| } |
| |
| if (openthread_config_ip6_slaac_enable) { |
| defines += [ "OPENTHREAD_CONFIG_IP6_SLAAC_ENABLE=1" ] |
| } |
| |
| if (openthread_config_sntp_client_enable) { |
| defines += [ "OPENTHREAD_CONFIG_SNTP_CLIENT_ENABLE=1" ] |
| } |
| |
| if (openthread_config_srp_client_enable) { |
| defines += [ "OPENTHREAD_CONFIG_SRP_CLIENT_ENABLE=1" ] |
| } |
| |
| if (openthread_config_srp_server_enable) { |
| defines += [ "OPENTHREAD_CONFIG_SRP_SERVER_ENABLE=1" ] |
| } |
| |
| if (openthread_config_ping_sender) { |
| defines += [ "OPENTHREAD_CONFIG_PING_SENDER_ENABLE=1" ] |
| } |
| |
| if (openthread_config_time_sync_enable) { |
| defines += [ "OPENTHREAD_CONFIG_TIME_SYNC_ENABLE=1" ] |
| } |
| |
| if (openthread_config_udp_forward_enable) { |
| defines += [ "OPENTHREAD_CONFIG_UDP_FORWARD_ENABLE=1" ] |
| } |
| |
| if (openthread_config_full_logs) { |
| defines += [ "OPENTHREAD_CONFIG_LOG_LEVEL=OT_LOG_LEVEL_DEBG" ] |
| defines += [ "OPENTHREAD_CONFIG_LOG_PREPEND_LEVEL=1" ] |
| } |
| |
| if (openthread_config_otns_enable) { |
| defines += [ "OPENTHREAD_CONFIG_OTNS_ENABLE=1" ] |
| } |
| |
| if (openthread_config_coexistence_enable) { |
| defines += [ "OPENTHREAD_CONFIG_PLATFORM_RADIO_COEX_ENABLE=1" ] |
| } |
| } |
| } |
| |
| config("core_config") { |
| defines = [] |
| configs = [] |
| |
| if (openthread_project_core_config_file != "") { |
| defines += [ "OPENTHREAD_PROJECT_CORE_CONFIG_FILE=\"${openthread_project_core_config_file}\"" ] |
| } |
| |
| if (openthread_core_config_platform_check_file != "") { |
| defines += [ "OPENTHREAD_CORE_CONFIG_PLATFORM_CHECK_FILE=\"${openthread_core_config_platform_check_file}\"" ] |
| } |
| |
| if (openthread_package_name != "") { |
| defines += [ "PACKAGE_NAME=\"${openthread_package_name}\"" ] |
| } |
| |
| if (openthread_package_version != "") { |
| defines += [ "PACKAGE_VERSION=\"${openthread_package_version}\"" ] |
| } |
| |
| if (openthread_enable_core_config_args) { |
| configs += [ ":core_config_args" ] |
| } |
| |
| include_dirs = [ |
| "..", |
| ".", |
| ] |
| } |
| |
| openthread_core_files = [ |
| "api/backbone_router_api.cpp", |
| "api/backbone_router_ftd_api.cpp", |
| "api/border_agent_api.cpp", |
| "api/border_router_api.cpp", |
| "api/channel_manager_api.cpp", |
| "api/channel_monitor_api.cpp", |
| "api/child_supervision_api.cpp", |
| "api/coap_api.cpp", |
| "api/coap_secure_api.cpp", |
| "api/commissioner_api.cpp", |
| "api/crypto_api.cpp", |
| "api/dataset_api.cpp", |
| "api/dataset_ftd_api.cpp", |
| "api/dataset_updater_api.cpp", |
| "api/diags_api.cpp", |
| "api/dns_api.cpp", |
| "api/dns_server_api.cpp", |
| "api/error_api.cpp", |
| "api/heap_api.cpp", |
| "api/history_tracker_api.cpp", |
| "api/icmp6_api.cpp", |
| "api/instance_api.cpp", |
| "api/ip6_api.cpp", |
| "api/jam_detection_api.cpp", |
| "api/joiner_api.cpp", |
| "api/link_api.cpp", |
| "api/link_metrics_api.cpp", |
| "api/link_raw_api.cpp", |
| "api/logging_api.cpp", |
| "api/message_api.cpp", |
| "api/multi_radio_api.cpp", |
| "api/netdata_api.cpp", |
| "api/netdata_publisher_api.cpp", |
| "api/netdiag_api.cpp", |
| "api/network_time_api.cpp", |
| "api/ping_sender_api.cpp", |
| "api/random_crypto_api.cpp", |
| "api/random_noncrypto_api.cpp", |
| "api/server_api.cpp", |
| "api/sntp_api.cpp", |
| "api/srp_client_api.cpp", |
| "api/srp_client_buffers_api.cpp", |
| "api/srp_server_api.cpp", |
| "api/tasklet_api.cpp", |
| "api/tcp_api.cpp", |
| "api/thread_api.cpp", |
| "api/thread_ftd_api.cpp", |
| "api/trel_api.cpp", |
| "api/udp_api.cpp", |
| "backbone_router/backbone_tmf.cpp", |
| "backbone_router/backbone_tmf.hpp", |
| "backbone_router/bbr_leader.cpp", |
| "backbone_router/bbr_leader.hpp", |
| "backbone_router/bbr_local.cpp", |
| "backbone_router/bbr_local.hpp", |
| "backbone_router/bbr_manager.cpp", |
| "backbone_router/bbr_manager.hpp", |
| "backbone_router/multicast_listeners_table.cpp", |
| "backbone_router/multicast_listeners_table.hpp", |
| "backbone_router/ndproxy_table.cpp", |
| "backbone_router/ndproxy_table.hpp", |
| "border_router/infra_if_platform.cpp", |
| "border_router/router_advertisement.cpp", |
| "border_router/router_advertisement.hpp", |
| "border_router/routing_manager.cpp", |
| "border_router/routing_manager.hpp", |
| "coap/coap.cpp", |
| "coap/coap.hpp", |
| "coap/coap_message.cpp", |
| "coap/coap_message.hpp", |
| "coap/coap_secure.cpp", |
| "coap/coap_secure.hpp", |
| "common/appender.cpp", |
| "common/appender.hpp", |
| "common/arg_macros.hpp", |
| "common/array.hpp", |
| "common/as_core_type.hpp", |
| "common/binary_search.cpp", |
| "common/binary_search.hpp", |
| "common/bit_vector.hpp", |
| "common/clearable.hpp", |
| "common/code_utils.hpp", |
| "common/const_cast.hpp", |
| "common/crc16.cpp", |
| "common/crc16.hpp", |
| "common/data.cpp", |
| "common/data.hpp", |
| "common/debug.hpp", |
| "common/encoding.hpp", |
| "common/equatable.hpp", |
| "common/error.cpp", |
| "common/error.hpp", |
| "common/extension.hpp", |
| "common/heap.cpp", |
| "common/heap.hpp", |
| "common/heap_allocatable.hpp", |
| "common/heap_array.hpp", |
| "common/heap_data.cpp", |
| "common/heap_data.hpp", |
| "common/heap_string.cpp", |
| "common/heap_string.hpp", |
| "common/instance.cpp", |
| "common/instance.hpp", |
| "common/iterator_utils.hpp", |
| "common/linked_list.hpp", |
| "common/locator.hpp", |
| "common/locator_getters.hpp", |
| "common/log.cpp", |
| "common/log.hpp", |
| "common/logging.hpp", |
| "common/message.cpp", |
| "common/message.hpp", |
| "common/new.hpp", |
| "common/non_copyable.hpp", |
| "common/notifier.cpp", |
| "common/notifier.hpp", |
| "common/numeric_limits.hpp", |
| "common/owned_ptr.hpp", |
| "common/owning_list.hpp", |
| "common/pool.hpp", |
| "common/ptr_wrapper.hpp", |
| "common/random.cpp", |
| "common/random.hpp", |
| "common/retain_ptr.hpp", |
| "common/serial_number.hpp", |
| "common/settings.cpp", |
| "common/settings.hpp", |
| "common/settings_driver.hpp", |
| "common/string.cpp", |
| "common/string.hpp", |
| "common/tasklet.cpp", |
| "common/tasklet.hpp", |
| "common/time.hpp", |
| "common/time_ticker.cpp", |
| "common/time_ticker.hpp", |
| "common/timer.cpp", |
| "common/timer.hpp", |
| "common/tlvs.cpp", |
| "common/tlvs.hpp", |
| "common/trickle_timer.cpp", |
| "common/trickle_timer.hpp", |
| "common/type_traits.hpp", |
| "common/uptime.cpp", |
| "common/uptime.hpp", |
| "crypto/aes_ccm.cpp", |
| "crypto/aes_ccm.hpp", |
| "crypto/aes_ecb.cpp", |
| "crypto/aes_ecb.hpp", |
| "crypto/context_size.hpp", |
| "crypto/crypto_platform.cpp", |
| "crypto/ecdsa.cpp", |
| "crypto/ecdsa.hpp", |
| "crypto/ecdsa_tinycrypt.cpp", |
| "crypto/hkdf_sha256.cpp", |
| "crypto/hkdf_sha256.hpp", |
| "crypto/hmac_sha256.cpp", |
| "crypto/hmac_sha256.hpp", |
| "crypto/mbedtls.cpp", |
| "crypto/mbedtls.hpp", |
| "crypto/pbkdf2_cmac.cpp", |
| "crypto/pbkdf2_cmac.hpp", |
| "crypto/sha256.cpp", |
| "crypto/sha256.hpp", |
| "crypto/storage.cpp", |
| "crypto/storage.hpp", |
| "diags/factory_diags.cpp", |
| "diags/factory_diags.hpp", |
| "mac/channel_mask.cpp", |
| "mac/channel_mask.hpp", |
| "mac/data_poll_handler.cpp", |
| "mac/data_poll_handler.hpp", |
| "mac/data_poll_sender.cpp", |
| "mac/data_poll_sender.hpp", |
| "mac/link_raw.cpp", |
| "mac/link_raw.hpp", |
| "mac/mac.cpp", |
| "mac/mac.hpp", |
| "mac/mac_filter.cpp", |
| "mac/mac_filter.hpp", |
| "mac/mac_frame.cpp", |
| "mac/mac_frame.hpp", |
| "mac/mac_links.cpp", |
| "mac/mac_links.hpp", |
| "mac/mac_types.cpp", |
| "mac/mac_types.hpp", |
| "mac/sub_mac.cpp", |
| "mac/sub_mac.hpp", |
| "mac/sub_mac_callbacks.cpp", |
| "meshcop/announce_begin_client.cpp", |
| "meshcop/announce_begin_client.hpp", |
| "meshcop/border_agent.cpp", |
| "meshcop/border_agent.hpp", |
| "meshcop/commissioner.cpp", |
| "meshcop/commissioner.hpp", |
| "meshcop/dataset.cpp", |
| "meshcop/dataset.hpp", |
| "meshcop/dataset_local.cpp", |
| "meshcop/dataset_local.hpp", |
| "meshcop/dataset_manager.cpp", |
| "meshcop/dataset_manager.hpp", |
| "meshcop/dataset_manager_ftd.cpp", |
| "meshcop/dataset_updater.cpp", |
| "meshcop/dataset_updater.hpp", |
| "meshcop/dtls.cpp", |
| "meshcop/dtls.hpp", |
| "meshcop/energy_scan_client.cpp", |
| "meshcop/energy_scan_client.hpp", |
| "meshcop/extended_panid.cpp", |
| "meshcop/extended_panid.hpp", |
| "meshcop/joiner.cpp", |
| "meshcop/joiner.hpp", |
| "meshcop/joiner_router.cpp", |
| "meshcop/joiner_router.hpp", |
| "meshcop/meshcop.cpp", |
| "meshcop/meshcop.hpp", |
| "meshcop/meshcop_leader.cpp", |
| "meshcop/meshcop_leader.hpp", |
| "meshcop/meshcop_tlvs.cpp", |
| "meshcop/meshcop_tlvs.hpp", |
| "meshcop/network_name.cpp", |
| "meshcop/network_name.hpp", |
| "meshcop/panid_query_client.cpp", |
| "meshcop/panid_query_client.hpp", |
| "meshcop/timestamp.cpp", |
| "meshcop/timestamp.hpp", |
| "net/checksum.cpp", |
| "net/checksum.hpp", |
| "net/dhcp6.hpp", |
| "net/dhcp6_client.cpp", |
| "net/dhcp6_client.hpp", |
| "net/dhcp6_server.cpp", |
| "net/dhcp6_server.hpp", |
| "net/dns_client.cpp", |
| "net/dns_client.hpp", |
| "net/dns_dso.cpp", |
| "net/dns_dso.hpp", |
| "net/dns_types.cpp", |
| "net/dns_types.hpp", |
| "net/dnssd_server.cpp", |
| "net/dnssd_server.hpp", |
| "net/icmp6.cpp", |
| "net/icmp6.hpp", |
| "net/ip4_address.cpp", |
| "net/ip4_address.hpp", |
| "net/ip6.cpp", |
| "net/ip6.hpp", |
| "net/ip6_address.cpp", |
| "net/ip6_address.hpp", |
| "net/ip6_filter.cpp", |
| "net/ip6_filter.hpp", |
| "net/ip6_headers.cpp", |
| "net/ip6_headers.hpp", |
| "net/ip6_mpl.cpp", |
| "net/ip6_mpl.hpp", |
| "net/ip6_types.hpp", |
| "net/nd_agent.cpp", |
| "net/nd_agent.hpp", |
| "net/netif.cpp", |
| "net/netif.hpp", |
| "net/sntp_client.cpp", |
| "net/sntp_client.hpp", |
| "net/socket.cpp", |
| "net/socket.hpp", |
| "net/srp_client.cpp", |
| "net/srp_client.hpp", |
| "net/srp_server.cpp", |
| "net/srp_server.hpp", |
| "net/tcp6.cpp", |
| "net/tcp6.hpp", |
| "net/udp6.cpp", |
| "net/udp6.hpp", |
| "radio/max_power_table.hpp", |
| "radio/radio.cpp", |
| "radio/radio.hpp", |
| "radio/radio_callbacks.cpp", |
| "radio/radio_platform.cpp", |
| "radio/trel_interface.cpp", |
| "radio/trel_interface.hpp", |
| "radio/trel_link.cpp", |
| "radio/trel_link.hpp", |
| "radio/trel_packet.cpp", |
| "radio/trel_packet.hpp", |
| "thread/address_resolver.cpp", |
| "thread/address_resolver.hpp", |
| "thread/announce_begin_server.cpp", |
| "thread/announce_begin_server.hpp", |
| "thread/announce_sender.cpp", |
| "thread/announce_sender.hpp", |
| "thread/anycast_locator.cpp", |
| "thread/anycast_locator.hpp", |
| "thread/child_mask.hpp", |
| "thread/child_table.cpp", |
| "thread/child_table.hpp", |
| "thread/csl_tx_scheduler.cpp", |
| "thread/csl_tx_scheduler.hpp", |
| "thread/discover_scanner.cpp", |
| "thread/discover_scanner.hpp", |
| "thread/dua_manager.cpp", |
| "thread/dua_manager.hpp", |
| "thread/energy_scan_server.cpp", |
| "thread/energy_scan_server.hpp", |
| "thread/indirect_sender.cpp", |
| "thread/indirect_sender.hpp", |
| "thread/indirect_sender_frame_context.hpp", |
| "thread/key_manager.cpp", |
| "thread/key_manager.hpp", |
| "thread/link_metrics.cpp", |
| "thread/link_metrics.hpp", |
| "thread/link_metrics_tlvs.hpp", |
| "thread/link_quality.cpp", |
| "thread/link_quality.hpp", |
| "thread/lowpan.cpp", |
| "thread/lowpan.hpp", |
| "thread/mesh_forwarder.cpp", |
| "thread/mesh_forwarder.hpp", |
| "thread/mesh_forwarder_ftd.cpp", |
| "thread/mesh_forwarder_mtd.cpp", |
| "thread/mle.cpp", |
| "thread/mle.hpp", |
| "thread/mle_router.cpp", |
| "thread/mle_router.hpp", |
| "thread/mle_tlvs.hpp", |
| "thread/mle_types.cpp", |
| "thread/mle_types.hpp", |
| "thread/mlr_manager.cpp", |
| "thread/mlr_manager.hpp", |
| "thread/mlr_types.hpp", |
| "thread/neighbor_table.cpp", |
| "thread/neighbor_table.hpp", |
| "thread/network_data.cpp", |
| "thread/network_data.hpp", |
| "thread/network_data_leader.cpp", |
| "thread/network_data_leader.hpp", |
| "thread/network_data_leader_ftd.cpp", |
| "thread/network_data_leader_ftd.hpp", |
| "thread/network_data_local.cpp", |
| "thread/network_data_local.hpp", |
| "thread/network_data_notifier.cpp", |
| "thread/network_data_notifier.hpp", |
| "thread/network_data_publisher.cpp", |
| "thread/network_data_publisher.hpp", |
| "thread/network_data_service.cpp", |
| "thread/network_data_service.hpp", |
| "thread/network_data_tlvs.cpp", |
| "thread/network_data_tlvs.hpp", |
| "thread/network_data_types.cpp", |
| "thread/network_data_types.hpp", |
| "thread/network_diagnostic.cpp", |
| "thread/network_diagnostic.hpp", |
| "thread/network_diagnostic_tlvs.hpp", |
| "thread/panid_query_server.cpp", |
| "thread/panid_query_server.hpp", |
| "thread/radio_selector.cpp", |
| "thread/radio_selector.hpp", |
| "thread/router_table.cpp", |
| "thread/router_table.hpp", |
| "thread/src_match_controller.cpp", |
| "thread/src_match_controller.hpp", |
| "thread/thread_netif.cpp", |
| "thread/thread_netif.hpp", |
| "thread/thread_tlvs.hpp", |
| "thread/time_sync_service.cpp", |
| "thread/time_sync_service.hpp", |
| "thread/tmf.cpp", |
| "thread/tmf.hpp", |
| "thread/topology.cpp", |
| "thread/topology.hpp", |
| "thread/uri_paths.cpp", |
| "thread/uri_paths.hpp", |
| "utils/channel_manager.cpp", |
| "utils/channel_manager.hpp", |
| "utils/channel_monitor.cpp", |
| "utils/channel_monitor.hpp", |
| "utils/child_supervision.cpp", |
| "utils/child_supervision.hpp", |
| "utils/flash.cpp", |
| "utils/flash.hpp", |
| "utils/heap.cpp", |
| "utils/heap.hpp", |
| "utils/history_tracker.cpp", |
| "utils/history_tracker.hpp", |
| "utils/jam_detector.cpp", |
| "utils/jam_detector.hpp", |
| "utils/otns.cpp", |
| "utils/otns.hpp", |
| "utils/parse_cmdline.cpp", |
| "utils/parse_cmdline.hpp", |
| "utils/ping_sender.cpp", |
| "utils/ping_sender.hpp", |
| "utils/slaac_address.cpp", |
| "utils/slaac_address.hpp", |
| "utils/srp_client_buffers.cpp", |
| "utils/srp_client_buffers.hpp", |
| ] |
| |
| openthread_radio_sources = [ |
| "api/diags_api.cpp", |
| "api/error_api.cpp", |
| "api/instance_api.cpp", |
| "api/link_raw_api.cpp", |
| "api/logging_api.cpp", |
| "api/random_noncrypto_api.cpp", |
| "api/tasklet_api.cpp", |
| "common/binary_search.cpp", |
| "common/binary_search.hpp", |
| "common/error.hpp", |
| "common/instance.cpp", |
| "common/log.cpp", |
| "common/random.cpp", |
| "common/string.cpp", |
| "common/tasklet.cpp", |
| "common/timer.cpp", |
| "common/uptime.cpp", |
| "crypto/aes_ccm.cpp", |
| "crypto/aes_ecb.cpp", |
| "crypto/crypto_platform.cpp", |
| "crypto/storage.cpp", |
| "diags/factory_diags.cpp", |
| "mac/link_raw.cpp", |
| "mac/mac_frame.cpp", |
| "mac/mac_types.cpp", |
| "mac/sub_mac.cpp", |
| "mac/sub_mac_callbacks.cpp", |
| "radio/radio.cpp", |
| "radio/radio_callbacks.cpp", |
| "radio/radio_platform.cpp", |
| "thread/link_quality.cpp", |
| "utils/parse_cmdline.cpp", |
| ] |
| |
| header_pattern = [ |
| "*.h", |
| "*.hpp", |
| ] |
| |
| openthread_core_headers = filter_include(openthread_core_files, header_pattern) |
| openthread_core_sources = filter_exclude(openthread_core_files, header_pattern) |
| |
| source_set("libopenthread_core_config") { |
| public = [ |
| "config/announce_sender.h", |
| "config/backbone_router.h", |
| "config/border_router.h", |
| "config/channel_manager.h", |
| "config/channel_monitor.h", |
| "config/child_supervision.h", |
| "config/coap.h", |
| "config/commissioner.h", |
| "config/crypto.h", |
| "config/dataset_updater.h", |
| "config/dhcp6_client.h", |
| "config/dhcp6_server.h", |
| "config/diag.h", |
| "config/dns_client.h", |
| "config/dns_dso.h", |
| "config/dnssd_server.h", |
| "config/dtls.h", |
| "config/history_tracker.h", |
| "config/ip6.h", |
| "config/joiner.h", |
| "config/link_quality.h", |
| "config/link_raw.h", |
| "config/logging.h", |
| "config/mac.h", |
| "config/misc.h", |
| "config/mle.h", |
| "config/netdata_publisher.h", |
| "config/openthread-core-config-check.h", |
| "config/parent_search.h", |
| "config/ping_sender.h", |
| "config/platform.h", |
| "config/radio_link.h", |
| "config/sntp_client.h", |
| "config/srp_client.h", |
| "config/srp_server.h", |
| "config/time_sync.h", |
| "config/tmf.h", |
| "openthread-core-config.h", |
| ] |
| public_configs = [ |
| ":core_config", |
| "../..:openthread_config", |
| ] |
| public_deps = [ "../../include/openthread:openthread_config" ] |
| public_deps += openthread_core_config_deps |
| } |
| |
| source_set("libopenthread_core_headers") { |
| public = openthread_core_headers |
| public_deps = [ |
| ":libopenthread_core_config", |
| "../../include/openthread", |
| ] |
| visibility += [ "*" ] |
| } |
| |
| group("libopenthread_platform") { |
| public_deps = [] |
| if (openthread_external_platform != "") { |
| public_deps += [ openthread_external_platform ] |
| } |
| public_deps += [ |
| ":libopenthread_core_headers", |
| "${mbedtls_target}", |
| ] |
| } |
| |
| static_library("libopenthread-ftd") { |
| sources = openthread_core_sources |
| public_deps = [ ":libopenthread_platform" ] |
| public_configs = [ "../..:openthread_ftd_config" ] |
| } |
| |
| static_library("libopenthread-mtd") { |
| sources = openthread_core_sources |
| public_deps = [ ":libopenthread_platform" ] |
| public_configs = [ "../..:openthread_mtd_config" ] |
| } |
| |
| static_library("libopenthread-radio") { |
| sources = openthread_radio_sources |
| public_deps = [ ":libopenthread_platform" ] |
| public_configs = [ "../..:openthread_radio_config" ] |
| } |