mirror of
https://github.com/espressif/esp-idf
synced 2025-03-09 09:09:10 -04:00
feat(wifi): avoid compiling components related to wifi when wifi is not supported
This commit is contained in:
parent
393b7410a6
commit
f40c2cbc72
@ -4,6 +4,22 @@ if(${idf_target} STREQUAL "linux")
|
||||
return() # This component is not supported by the POSIX/Linux simulator
|
||||
endif()
|
||||
|
||||
if( NOT CONFIG_ESP_WIFI_ENABLED
|
||||
AND NOT CONFIG_ESP_HOST_WIFI_ENABLED
|
||||
AND NOT CMAKE_BUILD_EARLY_EXPANSION )
|
||||
# No local wifi: provide only netif bindings
|
||||
set(srcs
|
||||
"src/wifi_default.c"
|
||||
"src/wifi_netif.c"
|
||||
"src/wifi_default_ap.c")
|
||||
|
||||
# This component provides "esp_wifi" "wifi_apps/nan_app" headers if WiFi not enabled
|
||||
# (implementation supported optionally in a managed component esp_wifi_remote)
|
||||
idf_component_register(SRCS "${srcs}"
|
||||
INCLUDE_DIRS "include" "wifi_apps/nan_app/include")
|
||||
return()
|
||||
endif()
|
||||
|
||||
if(CONFIG_ESP_WIFI_ENABLED OR CONFIG_ESP_HOST_WIFI_ENABLED)
|
||||
|
||||
if(CONFIG_APP_NO_BLOBS)
|
||||
@ -35,19 +51,10 @@ if(CONFIG_ESP_WIFI_ENABLED OR CONFIG_ESP_HOST_WIFI_ENABLED)
|
||||
if(CONFIG_ESP_WIFI_ENABLE_ROAMING_APP)
|
||||
list(APPEND srcs "wifi_apps/roaming_app/src/roaming_app.c")
|
||||
endif()
|
||||
set(local_include_dirs include/local)
|
||||
else()
|
||||
# No local wifi: provide only netif bindings
|
||||
set(srcs
|
||||
"src/wifi_default.c"
|
||||
"src/wifi_netif.c"
|
||||
"src/wifi_default_ap.c")
|
||||
set(local_include_dirs)
|
||||
|
||||
endif()
|
||||
|
||||
idf_component_register(SRCS "${srcs}"
|
||||
INCLUDE_DIRS "include" "wifi_apps/include" "wifi_apps/nan_app/include" ${local_include_dirs}
|
||||
INCLUDE_DIRS "include" "include/local" "wifi_apps/include" "wifi_apps/nan_app/include"
|
||||
|
||||
REQUIRES esp_event esp_phy esp_netif
|
||||
PRIV_REQUIRES esptool_py esp_pm esp_timer nvs_flash
|
||||
|
@ -1,7 +1,6 @@
|
||||
|
||||
menu "Wi-Fi"
|
||||
# TODO: Disable WIFI support on ESP32-H2 (WIFI-5796)
|
||||
# visible if SOC_WIFI_SUPPORTED
|
||||
visible if (SOC_WIFI_SUPPORTED || SOC_WIRELESS_HOST_SUPPORTED)
|
||||
|
||||
config ESP_WIFI_ENABLED
|
||||
bool
|
||||
|
@ -17,7 +17,7 @@ extern "C" {
|
||||
// Number of maximum wifi connection may be undefined if we have no native wifi support on this target
|
||||
// and at the same time there's no native interface injected by the wifi_remote component.
|
||||
// In this case, we just let the header compilable, since no wifi API could be used (let's make a sanity check)
|
||||
#if !CONFIG_SOC_WIFI_SUPPORTED && !CONFIG_ESP_WIFI_REMOTE_ENABLED
|
||||
#if !CONFIG_SOC_WIFI_SUPPORTED && !CONFIG_ESP_WIFI_REMOTE_ENABLED && !CONFIG_ESP_HOST_WIFI_ENABLED
|
||||
#define ESP_WIFI_MAX_CONN_NUM (15)
|
||||
typedef struct wifi_sta_list_t wifi_sta_list_t;
|
||||
#else
|
||||
|
@ -4,6 +4,15 @@ if(${target} STREQUAL "linux")
|
||||
return() # This component is not supported by the POSIX/Linux simulator
|
||||
endif()
|
||||
|
||||
if( NOT CONFIG_ESP_WIFI_ENABLED
|
||||
AND NOT CONFIG_ESP_HOST_WIFI_ENABLED
|
||||
AND NOT CMAKE_BUILD_EARLY_EXPANSION )
|
||||
# This component provides only "esp_provisioning" headers if WiFi not enabled
|
||||
# (implementation supported optionally in a managed component esp_wifi_remote)
|
||||
idf_component_register(INCLUDE_DIRS include)
|
||||
return()
|
||||
endif()
|
||||
|
||||
set(srcs "src/wifi_config.c"
|
||||
"src/wifi_scan.c"
|
||||
"src/wifi_ctrl.c"
|
||||
|
@ -1,5 +1,5 @@
|
||||
menu "Wi-Fi Provisioning Manager"
|
||||
|
||||
visible if (SOC_WIFI_SUPPORTED || SOC_WIRELESS_HOST_SUPPORTED)
|
||||
config WIFI_PROV_SCAN_MAX_ENTRIES
|
||||
int "Max Wi-Fi Scan Result Entries"
|
||||
default 16
|
||||
|
@ -6,7 +6,9 @@ else()
|
||||
set(linker_fragments linker.lf)
|
||||
endif()
|
||||
|
||||
if(NOT CONFIG_ESP_WIFI_ENABLED AND NOT CONFIG_ESP_HOST_WIFI_ENABLED AND NOT CMAKE_BUILD_EARLY_EXPANSION)
|
||||
if( NOT CONFIG_ESP_WIFI_ENABLED
|
||||
AND NOT CONFIG_ESP_HOST_WIFI_ENABLED
|
||||
AND NOT CMAKE_BUILD_EARLY_EXPANSION )
|
||||
# This component provides only "esp_supplicant" headers if WiFi not enabled
|
||||
# (implementation supported optionally in a managed component esp_wifi_remote)
|
||||
idf_component_register(INCLUDE_DIRS esp_supplicant/include)
|
||||
|
@ -4,7 +4,7 @@ menu "Example Connection Configuration"
|
||||
|
||||
config EXAMPLE_CONNECT_WIFI
|
||||
bool "connect using WiFi interface"
|
||||
depends on !IDF_TARGET_LINUX && (SOC_WIFI_SUPPORTED || ESP_WIFI_REMOTE_ENABLED)
|
||||
depends on !IDF_TARGET_LINUX && (SOC_WIFI_SUPPORTED || ESP_WIFI_REMOTE_ENABLED || ESP_HOST_WIFI_ENABLED)
|
||||
default y if SOC_WIFI_SUPPORTED
|
||||
help
|
||||
Protocol examples can use Wi-Fi and/or Ethernet to connect to the network.
|
||||
|
@ -1,3 +1,9 @@
|
||||
idf_component_register(SRCS "cmd_wifi.c"
|
||||
if(CONFIG_ESP_WIFI_ENABLED OR CONFIG_ESP_HOST_WIFI_ENABLED)
|
||||
set(srcs "cmd_wifi.c")
|
||||
else()
|
||||
set(srcs)
|
||||
endif()
|
||||
|
||||
idf_component_register(SRCS "${srcs}"
|
||||
INCLUDE_DIRS .
|
||||
REQUIRES console esp_wifi)
|
||||
|
@ -1,5 +1,5 @@
|
||||
/*
|
||||
* SPDX-FileCopyrightText: 2022 Espressif Systems (Shanghai) CO LTD
|
||||
* SPDX-FileCopyrightText: 2022-2024 Espressif Systems (Shanghai) CO LTD
|
||||
*
|
||||
* SPDX-License-Identifier: Unlicense OR CC0-1.0
|
||||
*/
|
||||
@ -24,11 +24,6 @@
|
||||
#include "esp_event.h"
|
||||
#include "cmd_wifi.h"
|
||||
|
||||
/**
|
||||
* This component will be supported using esp_wifi_remote
|
||||
*/
|
||||
#if CONFIG_SOC_WIFI_SUPPORTED
|
||||
|
||||
#define JOIN_TIMEOUT_MS (10000)
|
||||
|
||||
static EventGroupHandle_t wifi_event_group;
|
||||
@ -139,5 +134,3 @@ void register_wifi(void)
|
||||
|
||||
ESP_ERROR_CHECK( esp_console_cmd_register(&join_cmd) );
|
||||
}
|
||||
|
||||
#endif // CONFIG_SOC_WIFI_SUPPORTED
|
||||
|
@ -102,7 +102,7 @@ void app_main(void)
|
||||
#if SOC_DEEP_SLEEP_SUPPORTED
|
||||
register_system_deep_sleep();
|
||||
#endif
|
||||
#if SOC_WIFI_SUPPORTED
|
||||
#if (CONFIG_ESP_WIFI_ENABLED || CONFIG_ESP_HOST_WIFI_ENABLED)
|
||||
register_wifi();
|
||||
#endif
|
||||
register_nvs();
|
||||
|
@ -97,7 +97,7 @@ void app_main(void)
|
||||
#if SOC_DEEP_SLEEP_SUPPORTED
|
||||
register_system_deep_sleep();
|
||||
#endif
|
||||
#if SOC_WIFI_SUPPORTED
|
||||
#if (CONFIG_ESP_WIFI_ENABLED || CONFIG_ESP_HOST_WIFI_ENABLED)
|
||||
register_wifi();
|
||||
#endif
|
||||
register_nvs();
|
||||
|
Loading…
x
Reference in New Issue
Block a user