esp32: Collect properties from IDF-managed components as well.
Some targets like the ESP32-S3 use the IDF Component Manager to provide
additional dependencies to the build. Make sure to include these extra
components when collecting properties used by MicroPython-specific build
steps, like qstr preprocessing.
Signed-off-by: Luca Burelli <l.burelli@arduino.cc>
diff --git a/ports/esp32/esp32_common.cmake b/ports/esp32/esp32_common.cmake
index c7d629c..37a1931 100644
--- a/ports/esp32/esp32_common.cmake
+++ b/ports/esp32/esp32_common.cmake
@@ -191,8 +191,9 @@
target_link_libraries(${MICROPY_TARGET} micropy_extmod_btree)
target_link_libraries(${MICROPY_TARGET} usermod)
-# Collect all of the include directories and compile definitions for the IDF components.
-foreach(comp ${IDF_COMPONENTS})
+# Collect all of the include directories and compile definitions for the IDF components,
+# including those added by the IDF Component Manager via idf_components.yaml.
+foreach(comp ${__COMPONENT_NAMES_RESOLVED})
micropy_gather_target_properties(__idf_${comp})
micropy_gather_target_properties(${comp})
endforeach()