uploaded 5 days ago
A collection of useful cmake utilities


Cmake utilities

Component Registry

This component is aiming to provide some useful CMake utilities outside of ESP-IDF.


  1. Add dependency of this component in your component or project's idf_component.yml.

      espressif/cmake_utilities: "0.*"
  2. Include the CMake file you needed in your component's CMakeLists.txt after idf_component_register, or your project's CMakeLists.txt

    // Note: should remove .cmake postfix when using include(), otherwise the requested file will not found
    // Note: should place this line after `idf_component_register` function
    // Include the top CMake file which will include other CMake files
    // Or, only include the one you needed.
  3. Then you can use the corresponding CMake function which is provided by the CMake file.

Supported features

  1. relinker
  2. gen_compressed_ota


v0.4.8 - 2023-05-24

  • Add unit test app


  • fix customer target redefinition issue

v0.4.7 - 2023-04-21

  • gen_compressed_ota: support the addition of a v2 compressed OTA header to compressed firmware.

v0.4.6 - 2023-04-20

  • relinker: add IDF v4.3.x support

v0.4.5 - 2023-04-17

  • gen_compressed_ota: remove slash use in so that the script can be used in the Windows cmd terminal.

v0.4.4 - 2023-04-07

  • relinker: suppressing the creation of __pycache__
  • relinker: support same name objects in one library

v0.4.3 - 2023-03-24

  • relinker: support decoding to get IRAM excluded libraries

v0.4.2 - 2023-03-20


  • gen_compressed_ota: Fix the number of bytes reserved in the v3 compressed image header
  • gen_compressed_ota: Fix definition of MD5 length in compressed image header for different versions.

v0.4.1 - 2023-03-15

  • relinker: add option to use customized configuration files
  • relinker: add option to print error information instead of throwing exception when missing function
  • relinker: move functions of SPI flash from IRAM to flash only when enable CONFIG_SPI_FLASH_ROM_IMPL
  • relinker: move some functions of esp_timer from IRAM to flash only when disable CONFIG_ESP_TIMER_SUPPORTS_ISR_DISPATCH_METHOD

v0.4.0 - 2023-03-13


  • Add command gen_single_bin to generate merged bin file
  • Add command flash_single_bin to flash generated merged bin
  • Add config Color in diagnostics to control the GCC color output

v0.3.0 - 2023-03-10

v0.2.1 - 2023-03-09


  • package manager: Fix the compile issue when the name of the component has -, just like esp-xxx

v0.2.0 - 2023-02-23

  • Add relinker functionality, please refer to

v0.1.0 - 2023-01-12


  • Add function cu_pkg_get_version
  • Add macro cu_pkg_define_version
  • Add cmake script to CMAKE_MODULE_PATH

Supports all targets

License: Apache-2.0

To add this component to your project, run: add-dependency "espressif/cmake_utilities^0.4.8"

or download archive


  • ESP-IDF >=4.1
  • Stats

    • Downloaded in total
      Downloaded in total 11.0k times
    • Downloaded this version
      This version: 310 times


    espressif/cmake_utilities version: 0.4.8 |