Skip to content

Fix esp32 build to use ATOMVM_ELIXIR_SUPPORT#75

Open
petermm wants to merge 4 commits into
atomvm:mainfrom
petermm:fix-esp32-build
Open

Fix esp32 build to use ATOMVM_ELIXIR_SUPPORT#75
petermm wants to merge 4 commits into
atomvm:mainfrom
petermm:fix-esp32-build

Conversation

@petermm

@petermm petermm commented Jun 8, 2026

Copy link
Copy Markdown
Contributor

Needed to update the build task to use ATOMVM_ELIXIR_SUPPORT, removed legacy support (copying/changing partition map etc), as to avoid code complexity/branches..

tested locally:

mix atomvm.esp32.build --chip esp32s3 --mbedtls-prefix /opt/homebrew/opt/mbedtls@3 --atomvm-path ../../AtomVM
mix atomvm.esp32.build --chip esp32s3 --mbedtls-prefix /opt/homebrew/opt/mbedtls@3 --atomvm-path ../../AtomVM --clean
mix atomvm.esp32.build --use-docker --chip esp32s3 --mbedtls-prefix /opt/homebrew/opt/mbedtls@3
mix atomvm.esp32.build --chip esp32s3 --mbedtls-prefix /opt/homebrew/opt/mbedtls@3

petermm added 4 commits April 25, 2026 15:31
Signed-off-by: Peter M <petermm@gmail.com>
Pass -DATOMVM_ELIXIR_SUPPORT=on when configuring the ESP-IDF target so current AtomVM selects the Elixir partition table and boot library through CMake.

Remove the older sdkconfig.defaults mutation, reconfigure step, and mkimage.sh --boot flow. Invoke mkimage.erl directly, normalize Docker-generated /project paths for local execution, and allow custom mkimage.config boot entries while rejecting stale stock esp32boot configs.

Signed-off-by: Peter M <petermm@gmail.com>
Suggest get_idf or running the export script.

Signed-off-by: Peter M <petermm@gmail.com>
Localize Docker-generated mkimage.config /project paths only for Docker
builds, escape host paths inserted into the Erlang config string, and
verify mkimage actually produced a non-empty image before reporting
success. Fail fast when escript is missing instead of after the build.

Add AtomVMBuilder.clean_dir/1 to tolerate the macOS race where .DS_Store
is recreated mid-delete, which made File.rm_rf! crash --clean builds, and
use it for all build-directory cleanups. Require Elixir 1.18.

Signed-off-by: Peter M <petermm@gmail.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant