38 lines
1.3 KiB
CMake
38 lines
1.3 KiB
CMake
# SPDX-License-Identifier: Apache-2.0
|
|
#
|
|
# Copyright (c) 2021, Nordic Semiconductor ASA
|
|
|
|
# Configure SoC settings based on Kconfig settings.
|
|
#
|
|
# This CMake module will set the following variables in the build system based
|
|
# on Kconfig settings for the selected SoC.
|
|
#
|
|
# Outcome:
|
|
# The following variables will be defined when this CMake module completes:
|
|
#
|
|
# - SOC_NAME: Name of the SoC in use, identical to CONFIG_SOC
|
|
# - SOC_SERIES: Name of the SoC series in use, identical to CONFIG_SOC_SERIES
|
|
# - SOC_FAMILY: Name of the SoC family, identical to CONFIG_SOC_FAMILY
|
|
#
|
|
# Variables set by this module and not mentioned above are considered internal
|
|
# use only and may be removed, renamed, or re-purposed without prior notice.
|
|
|
|
include_guard(GLOBAL)
|
|
|
|
include(kconfig)
|
|
|
|
if(HWMv2)
|
|
set(SOC_NAME ${CONFIG_SOC})
|
|
set(SOC_SERIES ${CONFIG_SOC_SERIES})
|
|
set(SOC_TOOLCHAIN_NAME ${CONFIG_SOC_TOOLCHAIN_NAME})
|
|
set(SOC_FAMILY ${CONFIG_SOC_FAMILY})
|
|
set(SOC_V2_DIR ${SOC_${SOC_NAME}_DIR})
|
|
set(SOC_FULL_DIR ${SOC_V2_DIR} CACHE PATH "Path to the SoC directory." FORCE)
|
|
set(SOC_DIRECTORIES ${SOC_${SOC_NAME}_DIRECTORIES} CACHE INTERNAL
|
|
"List of SoC directories for SoC (${SOC_NAME})" FORCE
|
|
)
|
|
foreach(dir ${SOC_DIRECTORIES})
|
|
set_property(DIRECTORY APPEND PROPERTY CMAKE_CONFIGURE_DEPENDS ${dir}/soc.yml)
|
|
endforeach()
|
|
endif()
|