CMake Utilities
cmake_utilities
is a collection of CMake utilities that are commonly used in the components of esp-iot-solution
.
Supported Features:
project_include.cmake
: add additional features likeDIAGNOSTICS_COLOR
to the project. The file will be automatically parsed, for details, please refer project-include-cmake.package_manager.cmake
: provides functions to manager components’ versions, etc.gcc.cmake
: manager the GCC compiler options likeLTO
through menuconfig.relinker.cmake
provides a way to move IRAM functions to flash to save RAM space.gen_compressed_ota.cmake
: add new commandidf.py gen_compressed_ota
to generatexz
compressed OTA binary. please refer xz.gen_single_bin.cmake
: add new commandidf.py gen_single_bin
to generate single combined bin file (combine app, bootloader, partition table, etc).
How to Use
Use
Add dependency of this component in your component or project’s
idf_component.yml
.dependencies: espressif/cmake_utilities: "0.*"
Include the CMake Features/Script in your component’s or project’s
CMakeLists.txt
afteridf_component_register
.// 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 // only include the one you needed. include(package_manager)
Then you can use the corresponding features provided by the CMake script.