espressif: Add CMake build paths for Xtensa ESP32 chips and esp32c3-legacy.#18828
Draft
arjav1528 wants to merge 3 commits intoapache:masterfrom
Draft
espressif: Add CMake build paths for Xtensa ESP32 chips and esp32c3-legacy.#18828arjav1528 wants to merge 3 commits intoapache:masterfrom
arjav1528 wants to merge 3 commits intoapache:masterfrom
Conversation
Add a shared Espressif Xtensa CMake layer and chip-level CMake entry points for ESP32, ESP32-S2, and ESP32-S3 to mirror existing Make-based bring-up. This enables CMake builds to resolve common Espressif arch and HAL wiring. Signed-off-by: Arjav Patel <arjav1528@gmail.com>
…ards. Introduce common and board-level CMakeLists for esp32-devkitc, esp32s2-saola-1, and esp32s3-devkit so the new Xtensa arch CMake paths are reachable through board builds. Signed-off-by: Arjav Patel <arjav1528@gmail.com>
Add esp32c3-legacy architecture CMake entry points and representative board/common CMake files so legacy ESP32-C3 targets can be built through the same CMake flow used by modern Espressif RISC-V targets. Signed-off-by: Arjav Patel <arjav1528@gmail.com>
Contributor
|
Hi @arjav1528 , I've marked PR as a draft. Hi @fdcavalcanti @tmedicci @eren-terzioglu, can you run some tests? |
Contributor
|
A quick test I ran Same issue Configuring incomplete, errors occurred!Hi @arjav1528 , as you’re using macOS, I’d recommend you run some tests with this #18568 tool before adding a new PR. Workflow -> Manually Compiling with Make or Cmake for test @arjav1528 Please also include full build logs ! |
xiaoxiang781216
approved these changes
May 1, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Note: Please adhere to Contributing Guidelines.
Summary
Extends the NuttX CMake flow for Espressif targets that were mainly covered by Make before.
arch/xtensa): Shared Espressif Xtensa CMake underarch/xtensa/src/common/espressif/, plus chipCMakeLists.txt/hal_*.cmakefor ESP32, ESP32-S2, and ESP32-S3 (HAL includes viaESP_HAL_3RDPARTY_REPO/CHIP_SERIES).boards/xtensa):CMakeLists.txtfor common, common/src, and esp32-devkitc, esp32s2-saola-1, esp32s3-devkit.hal_esp32c3-legacy.cmakeand board/common CMake).Additive build-system files only; no runtime OS logic changes in this PR.
Impact
esp32c3-legacy-devkitgain explicit wiring; Make builds are unaffected by these files.Testing
Hardware: I do not have Espressif boards available, so I could not flash images, exercise the serial console, or run on-target tests (e.g. NSH, drivers).
Build / CI: This change is CMake-only (new
CMakeLists.txt/.cmakewiring). Please rely on NuttX CI and/or a maintainer/local build with the documented Espressif toolchains andesp-hal-3rdpartycheckout for full configure + link verification, for example: