#------------------------------------------------------------------------------- # Copyright (c) 2020, Arm Limited. All rights reserved. # # SPDX-License-Identifier: BSD-3-Clause # #------------------------------------------------------------------------------- cmake_minimum_required(VERSION 3.15) project("CC312 Runtime Library" LANGUAGES C ASM) cmake_policy(SET CMP0076 NEW) cmake_policy(SET CMP0079 NEW) if (NOT DEFINED CC312_LIB_TARGET) set(CC312_LIB_TARGET cc312) endif() if (NOT DEFINED CC312_PAL_TARGET) set(CC312_PAL_TARGET cc312_pal) endif() if (NOT DEFINED CC312_CDMPU_TARGET) set(CC312_CDMPU_TARGET cc312_cdmpu) endif() add_library(${CC312_LIB_TARGET} STATIC) # The extra libraries don't change much, so if we've already got one just ignore # it. it's still possible to create multiple targets by altering the name # variable. if(NOT TARGET ${CC312_PAL_TARGET}) add_library(${CC312_PAL_TARGET} INTERFACE) endif() if(NOT TARGET ${CC312_CDMPU_TARGET}) add_library(${CC312_CDMPU_TARGET} INTERFACE) endif() add_subdirectory(codesafe) add_subdirectory(host) add_subdirectory(shared) ########################## LIB ################################################# target_compile_definitions(${CC312_LIB_TARGET} PRIVATE DLLI_MAX_BUFF_SIZE=0x10000 USE_MBEDTLS_CRYPTOCELL CC_MNG_MIN_BACKUP_SIZE_IN_BYTES=512 $<$,$>:CC_PAL_MAX_LOG_LEVEL=3> PUBLIC CC_IOT CC_SUPPORT_PKA_64_16 ) target_link_libraries(${CC312_LIB_TARGET} PRIVATE ${CC312_PAL_TARGET} ) ########################## PAL ################################################# target_compile_definitions(${CC312_PAL_TARGET} INTERFACE CC_TRNG_MODE=0 $<$,$>:CC_PAL_MAX_LOG_LEVEL=3> CC_IOT CC_SUPPORT_PKA_64_16 ) ########################## CDMPU ############################################### target_link_libraries(${CC312_CDMPU_TARGET} INTERFACE ${CC312_PAL_TARGET} ) target_compile_definitions(${CC312_CDMPU_TARGET} INTERFACE DLLI_MAX_BUFF_SIZE=0x10000 USE_MBEDTLS_CRYPTOCELL CC_MNG_MIN_BACKUP_SIZE_IN_BYTES=512 CC_IOT CC_SUPPORT_PKA_64_16 )