diff --git a/Sming/Arch/Esp32/Components/esp32/component.mk b/Sming/Arch/Esp32/Components/esp32/component.mk index 586ffbe0f7..b7f21017a9 100644 --- a/Sming/Arch/Esp32/Components/esp32/component.mk +++ b/Sming/Arch/Esp32/Components/esp32/component.mk @@ -66,6 +66,15 @@ endif ESP32_COMPONENT_PATH := $(COMPONENT_PATH) SDK_DEFAULT_PATH := $(ESP32_COMPONENT_PATH)/sdk +SDK_PROJECT_PATH := $(ESP32_COMPONENT_PATH)/project/$(ESP_VARIANT)/$(BUILD_TYPE) +SDK_CONFIG_DEFAULTS := $(SDK_PROJECT_PATH)/sdkconfig.defaults + +SDKCONFIG_MAKEFILE := $(SDK_PROJECT_PATH)/sdkconfig +ifeq ($(MAKE_DOCS),) +-include $(SDKCONFIG_MAKEFILE) +endif +export SDKCONFIG_MAKEFILE # sub-makes (like bootloader) will reuse this path + ifdef IDF_VERSION_52 GLOBAL_CFLAGS += \ -DSOC_XTAL_FREQ_MHZ=CONFIG_XTAL_FREQ \ @@ -405,15 +414,6 @@ EXTRA_LDFLAGS += \ -T sections.ld endif -SDK_PROJECT_PATH := $(ESP32_COMPONENT_PATH)/project/$(ESP_VARIANT)/$(BUILD_TYPE) -SDK_CONFIG_DEFAULTS := $(SDK_PROJECT_PATH)/sdkconfig.defaults - -SDKCONFIG_MAKEFILE := $(SDK_PROJECT_PATH)/sdkconfig -ifeq ($(MAKE_DOCS),) --include $(SDKCONFIG_MAKEFILE) -endif -export SDKCONFIG_MAKEFILE # sub-makes (like bootloader) will reuse this path - FLASH_BOOT_LOADER := $(SDK_BUILD_BASE)/bootloader/bootloader.bin FLASH_BOOT_CHUNKS := $(CONFIG_BOOTLOADER_OFFSET_IN_FLASH)=$(FLASH_BOOT_LOADER) diff --git a/Sming/Arch/Esp32/Components/esp32/sdk/config/common b/Sming/Arch/Esp32/Components/esp32/sdk/config/common index 41c9b2c602..e5b5711631 100644 --- a/Sming/Arch/Esp32/Components/esp32/sdk/config/common +++ b/Sming/Arch/Esp32/Components/esp32/sdk/config/common @@ -23,6 +23,11 @@ CONFIG_ETH_USE_SPI_ETHERNET=y CONFIG_ETH_SPI_ETHERNET_W5500=y CONFIG_ETH_SPI_ETHERNET_DM9051=y +# WiFi +CONFIG_ESP_WIFI_ENABLE_WPA3_SAE=n +CONFIG_ESP_WIFI_ENABLE_WPA3_OWE_STA=n +CONFIG_ESP_WIFI_SOFTAP_SAW_SUPPORT=n + # Bluetooth CONFIG_BT_ENABLED=y CONFIG_BT_BLUEDROID_ENABLED=n diff --git a/Sming/Arch/Esp32/Components/esp32/sdk/esp_system.mk b/Sming/Arch/Esp32/Components/esp32/sdk/esp_system.mk index 1d7f1f8726..ec7f205e94 100644 --- a/Sming/Arch/Esp32/Components/esp32/sdk/esp_system.mk +++ b/Sming/Arch/Esp32/Components/esp32/sdk/esp_system.mk @@ -16,3 +16,6 @@ endif # linker will ignore panic_highint_hdl.S as it has no other files depending on any # symbols in it. SDK_UNDEF_SYMBOLS += ld_include_panic_highint_hdl + +# IDF 5.2 +SDK_WRAP_SYMBOLS += esp_newlib_init_global_stdio diff --git a/Sming/Arch/Esp32/Components/esp32/src/startup.cpp b/Sming/Arch/Esp32/Components/esp32/src/startup.cpp index 47ea3f00f2..5ea2d72358 100644 --- a/Sming/Arch/Esp32/Components/esp32/src/startup.cpp +++ b/Sming/Arch/Esp32/Components/esp32/src/startup.cpp @@ -71,6 +71,10 @@ void main(void*) } // namespace +extern "C" void __wrap_esp_newlib_init_global_stdio(const char*) +{ +} + extern void sming_create_task(TaskFunction_t); extern "C" void app_main(void) diff --git a/Sming/Arch/Esp32/Components/esp32/src/system.cpp b/Sming/Arch/Esp32/Components/esp32/src/system.cpp index a3d3607e0b..a13039592f 100644 --- a/Sming/Arch/Esp32/Components/esp32/src/system.cpp +++ b/Sming/Arch/Esp32/Components/esp32/src/system.cpp @@ -1,5 +1,6 @@ #include #include +#include #include #include #include diff --git a/Tools/ci/scanlog.py b/Tools/ci/scanlog.py index 80f1d7a12f..85d34c4e59 100644 --- a/Tools/ci/scanlog.py +++ b/Tools/ci/scanlog.py @@ -87,6 +87,8 @@ def __next__(self): def scan_log(filename: str): + BUILD_PREFIX = 'Building /home/runner/' + IGNORE_PREFIX = ['projects/', 'work/Sming/Sming/Sming/'] state = State.searching table = Table(os.path.basename(filename)) target = None @@ -97,10 +99,15 @@ def scan_log(filename: str): dtstr, _, line = line.strip().partition(' ') if not dtstr: continue - _, sep, c = line.partition('** Building ') - if sep: - target, _, _ = c.partition(' ') - target = target.removeprefix('/home/runner/projects/') + if state == State.searching: + if not line.startswith(BUILD_PREFIX): + continue + if 'clib-App' not in line: + continue + c = line[len(BUILD_PREFIX):] + for prefix in IGNORE_PREFIX: + c = c.removeprefix(prefix) + target, _, _ = c.partition('/out/') row = { 'target': target } @@ -121,7 +128,8 @@ def scan_log(filename: str): elif ' : ' in line: k, v = line.split(':') else: - table.append(row) + if len(row) > 1: # Not just target (discard host builds) + table.append(row) row = None state = State.searching continue