mirror of
https://github.com/espressif/esp-idf.git
synced 2025-12-10 18:06:29 +00:00
Merge branch 'bugfix/reproducible_builds_improvements' into 'master'
build system: reproducible build improvements Closes IDFGH-12690 See merge request espressif/esp-idf!32734
This commit is contained in:
@@ -13,6 +13,7 @@ When reproducible builds are enabled, the application built with ESP-IDF does no
|
||||
- Directory where the project is located
|
||||
- Directory where ESP-IDF is located (``IDF_PATH``)
|
||||
- Build time
|
||||
- Toolchain installation path
|
||||
|
||||
Reasons for Non-Reproducible Builds
|
||||
-----------------------------------
|
||||
@@ -46,6 +47,7 @@ ESP-IDF achieves reproducible builds using the following measures:
|
||||
- Path to the project is replaced with ``/IDF_PROJECT``
|
||||
- Path to the build directory is replaced with ``/IDF_BUILD``
|
||||
- Paths to components are replaced with ``/COMPONENT_NAME_DIR`` (where ``NAME`` is the name of the component)
|
||||
- Path to the toolchain is replaced with ``/TOOLCHAIN``
|
||||
|
||||
- Build date and time are not included into the :ref:`application metadata structure <app-image-format-application-description>` and :ref:`bootloader metadata structure <image-format-bootloader-description>` if :ref:`CONFIG_APP_REPRODUCIBLE_BUILD` is enabled.
|
||||
- ESP-IDF build system ensures that source file lists, component lists and other sequences are sorted before passing them to CMake. Various other parts of the build system, such as the linker script generator also perform sorting to ensure that same output is produced regardless of the environment.
|
||||
|
||||
Reference in New Issue
Block a user