blob: a7d843ba0e495efd7885d85a3562595a5c26539a [file] [log] [blame]
Jianliang Shen7e48bef2022-10-31 16:15:36 +08001#-------------------------------------------------------------------------------
Kevin Penga2b68022023-01-13 13:54:05 +08002# Copyright (c) 2022-2023, Arm Limited. All rights reserved.
Jianliang Shen7e48bef2022-10-31 16:15:36 +08003#
4# SPDX-License-Identifier: BSD-3-Clause
5#
6#-------------------------------------------------------------------------------
7
8cmake_minimum_required(VERSION 3.15)
9
10if (NOT USE_KCONFIG_TOOL)
11 return()
12endif()
13
14set(DOTCONFIG_FILE "${CMAKE_BINARY_DIR}/.config")
15set(ROOT_KCONFIG "${CMAKE_SOURCE_DIR}/Kconfig")
Jianliang Shen7e48bef2022-10-31 16:15:36 +080016
17find_package(Python3)
18
19# Call the tfm_kconfig.py
20execute_process(
21 COMMAND
22 ${Python3_EXECUTABLE} ${CMAKE_SOURCE_DIR}/tools/kconfig/tfm_kconfig.py
Kevin Penga2b68022023-01-13 13:54:05 +080023 -k ${ROOT_KCONFIG} -o ${CMAKE_BINARY_DIR} -u gui -p ${TARGET_PLATFORM_PATH}
Jianliang Shen7e48bef2022-10-31 16:15:36 +080024 WORKING_DIRECTORY ${CMAKE_SOURCE_DIR}
25 RESULT_VARIABLE ret
26)
27
28if(NOT ret EQUAL 0)
29 message(FATAL_ERROR "Kconfig tool failed!")
30endif()
31
32# Component configs generated by tfm_kconfig.py
33if (EXISTS "${CMAKE_BINARY_DIR}/project_config.h")
34 set(PROJECT_CONFIG_HEADER_FILE "${CMAKE_BINARY_DIR}/project_config.h" CACHE STRING "User defined header file for TF-M config")
35endif()
36
37# Load project cmake configs generated by tfm_kconfig.py
38if (EXISTS "${CMAKE_BINARY_DIR}/project_config.cmake")
39 include("${CMAKE_BINARY_DIR}/project_config.cmake")
40endif()