fix(esp_tee): Stop esp_tee subproject to be built with build system v2

- Unset IDF_BUILD_V2 in subproject/CMakeLists.txt before including
  project.cmake so the nested esp_tee ExternalProject cmake stays on
  cmakev1.
- Read PARTITION_TABLE_BIN_PATH as a generator expression under
  IDF_BUILD_V2 to defer the lookup to CMake's generate phase.
This commit is contained in:
Sudeep Mohanty
2026-05-25 12:04:40 +02:00
parent 0c4afc54fa
commit 5cfd7b9f96
2 changed files with 15 additions and 1 deletions

View File

@@ -8,7 +8,15 @@ idf_build_get_property(project_dir PROJECT_DIR)
idf_build_get_property(non_os_build NON_OS_BUILD)
idf_build_get_property(custom_secure_service_dir CUSTOM_SECURE_SERVICE_COMPONENT_DIR)
idf_build_get_property(custom_secure_service_component CUSTOM_SECURE_SERVICE_COMPONENT)
idf_build_get_property(partition_table_bin PARTITION_TABLE_BIN_PATH)
if(IDF_BUILD_V2)
# Under build system v2, partition_table/project_include.cmake may run
# after this file, so PARTITION_TABLE_BIN_PATH is not yet set. Defer the
# read to CMake's generate phase via a generator expression.
idf_build_get_property(partition_table_bin PARTITION_TABLE_BIN_PATH GENERATOR_EXPRESSION)
else()
idf_build_get_property(partition_table_bin PARTITION_TABLE_BIN_PATH)
endif()
if(NOT CONFIG_SECURE_ENABLE_TEE OR non_os_build)
return()

View File

@@ -33,6 +33,12 @@ list(APPEND COMPONENTS attestation tee_flash_mgr tee_ota_ops tee_sec_storage)
include_directories("${SECURE_SERVICE_HEADERS_DIR}")
# The TEE subproject is not yet ported to build system v2.
# Explicitly clear the IDF_BUILD_V2 environment variable so that
# tools/cmake/project.cmake does not activate the cmakev2 shim when
# the parent build was invoked with IDF_BUILD_V2=1.
unset(ENV{IDF_BUILD_V2})
include("${IDF_PATH}/tools/cmake/project.cmake")
set(common_req esp_common esp_hw_support esp_rom freertos hal log esp_libc soc spi_flash)