esp-idf/tools/cmake
Frantisek Hrbata 9156bbb55c tools: extend information in project_description.json
This extends information provided in the project_description.json file.
Newly added information can be used in the SBOM generating tool and
also to improve hints regarding the the component dependency issues.

Added fields

version:
   This adds versioning to the project_description.json file,
   so it's easy to identify if it contains the required information.

project_version:
   Can be used as a version for the resulting binary e.g. `hello_world.bin`.

idf_path:
   This one is probably not necessary, but it allows tools to run even without
   esp-idf environment exported(e.g. export.sh).

c_compiler:
   The `CMAKE_C_COMPILER` value with full path to the compiler binary. This can
   be used to get information about toolchain, which was used to build the project.

common_component_reqs:
   List of common components as presented in cmake's __COMPONENT_REQUIRES_COMMON
   and set in tools/cmake/build.cmake:__build_init().

build_component_info:
   Detailed information about components used during build. It's a
   dictionary with the component name as a key and each component has
   a dictionary with detailed information. Following is an example for
   the efuse component.

   "efuse": {
       "alias": "idf::efuse",
       "target": "___idf_efuse",
       "prefix": "idf",
       "dir": "/home/fhrbata/work/esp-idf/components/efuse",
       "type": "LIBRARY",
       "lib": "__idf_efuse",
       "reqs": [],
       "priv_reqs": [ "bootloader_support", "soc", "spi_flash" ],
       "managed_reqs": [],
       "managed_priv_reqs": [],
       "file": "/home/fhrbata/work/blink/build/esp-idf/efuse/libefuse.a",
       "sources": [ "/home/fhrbata/work/esp-idf/components/efuse/esp32s3/esp_efuse_table.c", ... ],
       "include_dirs": [ "include", "esp32s3/include" ]
   }

Signed-off-by: Frantisek Hrbata <frantisek.hrbata@espressif.com>
2023-06-08 14:30:07 +02:00
..
scripts build & config: Don't include common components on early expansion 2022-05-30 14:34:30 +02:00
third_party Whitespace: Automated whitespace fixes (large commit) 2020-11-11 07:36:35 +00:00
build.cmake build: fix excluded components being passed to component manager 2022-08-22 19:20:44 +02:00
component_deps.dot.in G0: add a build example to check G0 dependencies 2022-06-14 15:00:53 +08:00
component.cmake build system: Add idf_component_add_link_dependency function, use for spi_flash overriding 2022-12-19 15:25:30 +01:00
depgraph.cmake cmake: add component dependency graph generation helpers 2021-12-02 15:29:00 +01:00
dfu.cmake mkdfu.py: Support setting flash parameters 2022-05-27 15:44:56 +02:00
git_submodules.cmake CI: build system do not check submodule for CI 2019-12-08 20:32:10 +08:00
idf.cmake tools: cmake: check tool supported version with idf_tools.py 2022-10-18 12:27:55 +04:00
kconfig.cmake build-system: replace ADDITIONAL_MAKE_CLEAN_FILES with ADDITIONAL_CLEAN_FILES 2023-05-10 09:56:15 +08:00
ldgen.cmake build-system: replace ADDITIONAL_MAKE_CLEAN_FILES with ADDITIONAL_CLEAN_FILES 2023-05-10 09:56:15 +08:00
project_description.json.in tools: extend information in project_description.json 2023-06-08 14:30:07 +02:00
project.cmake tools: extend information in project_description.json 2023-06-08 14:30:07 +02:00
run_dfu_util.cmake tools: Increase the minimal supported CMake version to 3.16 2022-06-01 06:35:02 +00:00
targets.cmake cmake: don't search for toolchain files in component directory 2021-09-16 10:54:27 +02:00
tool_version_check.cmake tools: cmake: check tool supported version with idf_tools.py 2022-10-18 12:27:55 +04:00
toolchain-clang-esp32.cmake Build: fix idf_as_lib example not building 2022-01-06 03:17:29 +00:00
toolchain-clang-esp32s2.cmake Build: fix idf_as_lib example not building 2022-01-06 03:17:29 +00:00
toolchain-clang-esp32s3.cmake build: add support ESP32-S3 in Clang build configuration 2022-06-30 14:03:26 +07:00
toolchain-esp32.cmake Build: Xtensa assembly files are now assembled with -mlongcalls option 2022-06-20 13:56:49 +08:00
toolchain-esp32c2.cmake cmake: assign toolchain prefix manually 2022-01-20 15:46:50 +08:00
toolchain-esp32c3.cmake cmake: assign toolchain prefix manually 2022-01-20 15:46:50 +08:00
toolchain-esp32h2.cmake cmake: assign toolchain prefix manually 2022-01-20 15:46:50 +08:00
toolchain-esp32s2.cmake Build: Xtensa assembly files are now assembled with -mlongcalls option 2022-06-20 13:56:49 +08:00
toolchain-esp32s3.cmake Build: Xtensa assembly files are now assembled with -mlongcalls option 2022-06-20 13:56:49 +08:00
toolchain-linux.cmake build system: don't add GCC-specific options when building with clang 2021-01-24 12:48:29 +01:00
uf2.cmake esp8684: rename target to esp32c2 2022-01-19 11:08:57 +08:00
utilities.cmake tools: fix make_json_list to return empty json list for empty cmake list 2023-06-08 14:30:07 +02:00
version.cmake versions: Update version to 5.0.2 2023-05-10 09:59:18 +02:00