esp-idf/tools/cmake
Frantisek Hrbata 53f271ce10 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 18:35:00 +02:00
..
scripts build & config: Don't include common components on early expansion 2023-02-27 10:06:31 +01:00
third_party
build.cmake build & config: Check requirements of managed components of main and add interface versioning 2023-03-03 20:02:49 +01:00
component.cmake build & config: Check requirements of managed components of main and add interface versioning 2023-03-03 20:02:49 +01:00
convert_to_cmake.py
crosstool_version_check.cmake
dfu.cmake mkdfu.py: Support setting flash parameters 2022-05-27 16:24:13 +02:00
git_submodules.cmake
idf.cmake
kconfig.cmake cmake: kconfig: sort results of new glob expressions 2021-10-06 10:16:44 +02:00
ldgen.cmake
project.cmake tools: extend information in project_description.json 2023-06-08 18:35:00 +02:00
project_description.json.in tools: extend information in project_description.json 2023-06-08 18:35:00 +02:00
run_dfu_util.cmake
targets.cmake cmake: don't search for toolchain files in component directory 2021-09-16 10:54:27 +02:00
toolchain-clang-esp32.cmake Build: fix idf_as_lib example not building 2022-06-21 11:17:39 +08:00
toolchain-clang-esp32s2.cmake Build: fix idf_as_lib example not building 2022-06-21 11:17:39 +08:00
toolchain-esp32.cmake Build: Xtensa assembly files are now assembled with -mlongcalls option 2022-06-21 11:20:07 +08:00
toolchain-esp32c3.cmake Build: fix idf_as_lib example not building 2022-06-21 11:17:39 +08:00
toolchain-esp32h2.cmake Build: fix idf_as_lib example not building 2022-06-21 11:17:39 +08:00
toolchain-esp32s2.cmake Build: Xtensa assembly files are now assembled with -mlongcalls option 2022-06-21 11:20:07 +08:00
toolchain-esp32s3.cmake Build: Xtensa assembly files are now assembled with -mlongcalls option 2022-06-21 11:20:07 +08:00
toolchain-linux.cmake
uf2.cmake
utilities.cmake tools: fix make_json_list to return empty json list for empty cmake list 2023-06-08 15:32:36 +02:00
version.cmake versions: Update version to 4.4.5 2023-06-08 10:16:36 +08:00