feat: Consume root-managed components from IDF Component Manager

This commit is contained in:
Daniel Paul
2026-08-18 20:51:54 +08:00
parent ab6a455b1a
commit b764f073ac
12 changed files with 194 additions and 53 deletions
@@ -83,14 +83,17 @@ The build system looks for components in several locations, each associated with
- Priority
- Where the components come from
* - ``project_components``
- 3 (highest)
- 4 (highest)
- The project's ``main`` and ``components`` directories (or ``COMPONENT_DIRS``)
* - ``project_extra_components``
- 2
- 3
- Directories listed in ``EXTRA_COMPONENT_DIRS``
* - ``project_managed_components``
- 1
- 2
- Components fetched by the component manager
* - ``idf_managed_components``
- 1
- ESP-IDF's own root-managed components, installed by the component manager from ``$IDF_PATH/tools/idf_extra_components.yml``
* - ``idf_components``
- 0 (lowest)
- Components bundled with ESP-IDF (``$IDF_PATH/components``)
@@ -48,7 +48,7 @@ component property
.. _cmakev2-term-component-source:
component source
A location the build system searches for components, each with a precedence. From highest to lowest: ``project_components`` (the project's ``main`` and ``components`` directories), ``project_extra_components`` (directories in ``EXTRA_COMPONENT_DIRS``), ``project_managed_components`` (fetched by the component manager), and ``idf_components`` (bundled with ESP-IDF). A component from a higher-precedence source shadows a same-named component from a lower one. See :doc:`design`.
A location the build system searches for components, each with a precedence. From highest to lowest: ``project_components`` (the project's ``main`` and ``components`` directories), ``project_extra_components`` (directories in ``EXTRA_COMPONENT_DIRS``), ``project_managed_components`` (fetched by the component manager), ``idf_managed_components`` (ESP-IDF's own root-managed components, resolved by the component manager), and ``idf_components`` (bundled with ESP-IDF). A component from a higher-precedence source shadows a same-named component from a lower one. See :doc:`design`.
.. _cmakev2-term-configuration: