Jianliang Shen | 7e48bef | 2022-10-31 16:15:36 +0800 | [diff] [blame] | 1 | #------------------------------------------------------------------------------- |
Kevin Peng | a2b6802 | 2023-01-13 13:54:05 +0800 | [diff] [blame] | 2 | # Copyright (c) 2022-2023, Arm Limited. All rights reserved. |
Jianliang Shen | 7e48bef | 2022-10-31 16:15:36 +0800 | [diff] [blame] | 3 | # |
| 4 | # SPDX-License-Identifier: BSD-3-Clause |
| 5 | # |
| 6 | #------------------------------------------------------------------------------- |
| 7 | |
| 8 | cmake_minimum_required(VERSION 3.15) |
| 9 | |
| 10 | if (NOT USE_KCONFIG_TOOL) |
| 11 | return() |
| 12 | endif() |
| 13 | |
| 14 | set(DOTCONFIG_FILE "${CMAKE_BINARY_DIR}/.config") |
| 15 | set(ROOT_KCONFIG "${CMAKE_SOURCE_DIR}/Kconfig") |
Jianliang Shen | 7e48bef | 2022-10-31 16:15:36 +0800 | [diff] [blame] | 16 | |
| 17 | find_package(Python3) |
| 18 | |
| 19 | # Call the tfm_kconfig.py |
| 20 | execute_process( |
| 21 | COMMAND |
| 22 | ${Python3_EXECUTABLE} ${CMAKE_SOURCE_DIR}/tools/kconfig/tfm_kconfig.py |
Kevin Peng | a2b6802 | 2023-01-13 13:54:05 +0800 | [diff] [blame] | 23 | -k ${ROOT_KCONFIG} -o ${CMAKE_BINARY_DIR} -u gui -p ${TARGET_PLATFORM_PATH} |
Jianliang Shen | 7e48bef | 2022-10-31 16:15:36 +0800 | [diff] [blame] | 24 | WORKING_DIRECTORY ${CMAKE_SOURCE_DIR} |
| 25 | RESULT_VARIABLE ret |
| 26 | ) |
| 27 | |
| 28 | if(NOT ret EQUAL 0) |
| 29 | message(FATAL_ERROR "Kconfig tool failed!") |
| 30 | endif() |
| 31 | |
| 32 | # Component configs generated by tfm_kconfig.py |
| 33 | if (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") |
| 35 | endif() |
| 36 | |
| 37 | # Load project cmake configs generated by tfm_kconfig.py |
| 38 | if (EXISTS "${CMAKE_BINARY_DIR}/project_config.cmake") |
| 39 | include("${CMAKE_BINARY_DIR}/project_config.cmake") |
| 40 | endif() |