blob: 821ea4da747e377e6a6e9c438770514faac3ef79 [file] [log] [blame]
Jianliang Shen7e48bef2022-10-31 16:15:36 +08001#-------------------------------------------------------------------------------
2# Copyright (c) 2022, Arm Limited. All rights reserved.
3#
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")
16set(PLATFORM_PATH "${CMAKE_SOURCE_DIR}/platform/ext/target/${TFM_PLATFORM}")
17
18find_package(Python3)
19
20# Call the tfm_kconfig.py
21execute_process(
22 COMMAND
23 ${Python3_EXECUTABLE} ${CMAKE_SOURCE_DIR}/tools/kconfig/tfm_kconfig.py
24 -k ${ROOT_KCONFIG} -o ${CMAKE_BINARY_DIR} -u gui -p ${PLATFORM_PATH}
25 WORKING_DIRECTORY ${CMAKE_SOURCE_DIR}
26 RESULT_VARIABLE ret
27)
28
29if(NOT ret EQUAL 0)
30 message(FATAL_ERROR "Kconfig tool failed!")
31endif()
32
33# Component configs generated by tfm_kconfig.py
34if (EXISTS "${CMAKE_BINARY_DIR}/project_config.h")
35 set(PROJECT_CONFIG_HEADER_FILE "${CMAKE_BINARY_DIR}/project_config.h" CACHE STRING "User defined header file for TF-M config")
36endif()
37
38# Load project cmake configs generated by tfm_kconfig.py
39if (EXISTS "${CMAKE_BINARY_DIR}/project_config.cmake")
40 include("${CMAKE_BINARY_DIR}/project_config.cmake")
41endif()