From 4c6f8867d46d823c29659f4d29bbae56f9c7132f Mon Sep 17 00:00:00 2001 From: Lingkai Dong Date: Tue, 16 Mar 2021 17:04:00 +0000 Subject: [PATCH] Make CryptoCell 310 part of mbed-mbedtls on supported targets The CMake target mbed-mbedtls-cryptocell310 was not linked by default, resulting in a compilation error on targets that use Mbed TLS: fatal error: mbedtls_device.h: No such file or directory Other Mbed TLS drivers simply add themselve to mbed-mbedtls, so this commits does the alignment to fix the build error. Note: the driver and the core Mbed TLS have mutual dependency, so they need to be one CMake target. --- connectivity/CMakeLists.txt | 1 - .../TARGET_NORDIC_CORDIO/TARGET_NRF5x/CMakeLists.txt | 2 +- .../mbedtls/FEATURE_CRYPTOCELL310/CMakeLists.txt | 11 +++-------- .../TARGET_MCU_NRF52840/CMakeLists.txt | 6 +++--- .../FEATURE_CRYPTOCELL310/binaries/CMakeLists.txt | 2 +- 5 files changed, 8 insertions(+), 14 deletions(-) diff --git a/connectivity/CMakeLists.txt b/connectivity/CMakeLists.txt index 9c3c1c7e0f..75882472ae 100644 --- a/connectivity/CMakeLists.txt +++ b/connectivity/CMakeLists.txt @@ -13,7 +13,6 @@ add_library(mbed-emac INTERFACE) add_library(mbed-lorawan INTERFACE) add_library(mbed-lwipstack INTERFACE) add_library(mbed-mbedtls INTERFACE) -add_library(mbed-mbedtls-cryptocell310 INTERFACE) add_library(mbed-nanostack INTERFACE) add_library(mbed-nanostack-coap_service INTERFACE) add_library(mbed-nanostack-mbed_mesh_api INTERFACE) diff --git a/connectivity/drivers/ble/FEATURE_BLE/TARGET_NORDIC/TARGET_NORDIC_CORDIO/TARGET_NRF5x/CMakeLists.txt b/connectivity/drivers/ble/FEATURE_BLE/TARGET_NORDIC/TARGET_NORDIC_CORDIO/TARGET_NRF5x/CMakeLists.txt index 29996451c0..ea255676a1 100644 --- a/connectivity/drivers/ble/FEATURE_BLE/TARGET_NORDIC/TARGET_NORDIC_CORDIO/TARGET_NRF5x/CMakeLists.txt +++ b/connectivity/drivers/ble/FEATURE_BLE/TARGET_NORDIC/TARGET_NORDIC_CORDIO/TARGET_NRF5x/CMakeLists.txt @@ -23,5 +23,5 @@ target_sources(mbed-ble-cordio target_link_libraries(mbed-ble-cordio INTERFACE mbed-ble-cordio_ll - mbed-mbedtls-cryptocell310 + mbed-mbedtls ) diff --git a/connectivity/drivers/mbedtls/FEATURE_CRYPTOCELL310/CMakeLists.txt b/connectivity/drivers/mbedtls/FEATURE_CRYPTOCELL310/CMakeLists.txt index b5d392ee41..24d8764f37 100644 --- a/connectivity/drivers/mbedtls/FEATURE_CRYPTOCELL310/CMakeLists.txt +++ b/connectivity/drivers/mbedtls/FEATURE_CRYPTOCELL310/CMakeLists.txt @@ -7,7 +7,7 @@ endif() add_subdirectory(binaries) -target_include_directories(mbed-mbedtls-cryptocell310 +target_include_directories(mbed-mbedtls INTERFACE . ./include @@ -15,7 +15,7 @@ target_include_directories(mbed-mbedtls-cryptocell310 ./include/cryptocell310/internal ) -target_sources(mbed-mbedtls-cryptocell310 +target_sources(mbed-mbedtls INTERFACE source/aes_alt.c source/cc_internal.c @@ -29,12 +29,7 @@ target_sources(mbed-mbedtls-cryptocell310 source/trng.c ) -target_compile_definitions(mbed-mbedtls-cryptocell310 +target_compile_definitions(mbed-mbedtls INTERFACE MBED_CONF_CRYPTOCELL310_PRESENT=1 ) - -target_link_libraries(mbed-mbedtls-cryptocell310 - INTERFACE - mbed-mbedtls -) diff --git a/connectivity/drivers/mbedtls/FEATURE_CRYPTOCELL310/TARGET_MCU_NRF52840/CMakeLists.txt b/connectivity/drivers/mbedtls/FEATURE_CRYPTOCELL310/TARGET_MCU_NRF52840/CMakeLists.txt index 0b0e1d3dbe..46726a4969 100644 --- a/connectivity/drivers/mbedtls/FEATURE_CRYPTOCELL310/TARGET_MCU_NRF52840/CMakeLists.txt +++ b/connectivity/drivers/mbedtls/FEATURE_CRYPTOCELL310/TARGET_MCU_NRF52840/CMakeLists.txt @@ -9,17 +9,17 @@ elseif(${MBED_TOOLCHAIN} STREQUAL "ARM") set(LIBCC_310_TRNG TOOLCHAIN_ARM/libcc_310_trng.ar) endif() -target_include_directories(mbed-mbedtls-cryptocell310 +target_include_directories(mbed-mbedtls INTERFACE . ) -target_sources(mbed-mbedtls-cryptocell310 +target_sources(mbed-mbedtls INTERFACE crypto_device_platform.c ) -target_link_libraries(mbed-mbedtls-cryptocell310 +target_link_libraries(mbed-mbedtls INTERFACE ${CMAKE_CURRENT_SOURCE_DIR}/${LIBCC_310_EXT} ${CMAKE_CURRENT_SOURCE_DIR}/${LIBCC_310_TRNG} diff --git a/connectivity/drivers/mbedtls/FEATURE_CRYPTOCELL310/binaries/CMakeLists.txt b/connectivity/drivers/mbedtls/FEATURE_CRYPTOCELL310/binaries/CMakeLists.txt index da904ab942..c8c6f7af5f 100644 --- a/connectivity/drivers/mbedtls/FEATURE_CRYPTOCELL310/binaries/CMakeLists.txt +++ b/connectivity/drivers/mbedtls/FEATURE_CRYPTOCELL310/binaries/CMakeLists.txt @@ -7,7 +7,7 @@ elseif(${MBED_TOOLCHAIN} STREQUAL "ARM") set(LIBCC_310_CORE TOOLCHAIN_ARM/libcc_310_core.ar) endif() -target_link_libraries(mbed-mbedtls-cryptocell310 +target_link_libraries(mbed-mbedtls INTERFACE ${CMAKE_CURRENT_SOURCE_DIR}/${LIBCC_310_CORE} )