blob: 0a3ee559cc6b72b987a5c0402c22457f75a694d0 [file] [log] [blame]
Satish Kumar427923c2021-10-05 07:21:53 +01001#
2# Copyright (c) 2021 Arm Limited. All rights reserved.
3# SPDX-License-Identifier: BSD-3-Clause
4#
5
6cmake_minimum_required(VERSION 3.15)
7
8get_filename_component(PSA_ADAC_ROOT ${CMAKE_CURRENT_SOURCE_DIR} ABSOLUTE)
9get_filename_component(PSA_ADAC_BINARY_DIR ${CMAKE_CURRENT_BINARY_DIR} ABSOLUTE)
10
11if (NOT DEFINED PSA_ADAC_TARGET)
12 Message(FATAL_ERROR "PSA_ADAC_TARGET not defined.")
13endif()
14
15get_filename_component(PSA_ADAC_TARGET_PATH ${CMAKE_CURRENT_SOURCE_DIR}/target/${PSA_ADAC_TARGET} ABSOLUTE)
16
17if (NOT EXISTS ${PSA_ADAC_TARGET_PATH})
18 Message(FATAL_ERROR "Target ${PSA_ADAC_TARGET_PATH} not supported.")
19endif()
20
21if (NOT DEFINED PSA_ADAC_MBEDTLS_INCLUDE)
22 Message(FATAL_ERROR "PSA_ADAC_MBEDTLS_INCLUDE not defined.")
23endif()
24
25if (NOT EXISTS ${PSA_ADAC_MBEDTLS_INCLUDE})
26 Message(FATAL_ERROR "Does not exist: ${PSA_ADAC_MBEDTLS_INCLUDE}")
27endif()
28
29
30get_filename_component(PSA_ADAC_INSTALL_PATH ${CMAKE_CURRENT_BINARY_DIR}/install ABSOLUTE)
31
32# NOTE: cmake config priority is bottom to top, so dont change the order of
33# below includes
34include(${PSA_ADAC_TARGET_PATH}/config.cmake)
35include(${PSA_ADAC_ROOT}/cmake/psa_adac.cmake)
36
37if (${PSA_ADAC_TOOLCHAIN})
38 include(${PSA_ADAC_ROOT}/cmake/toolchain.cmake)
39endif()
40
41project(${PSA_ADAC_TARGET}-psa-adac LANGUAGES C ASM)
42
43if (${PSA_ADAC_TOOLCHAIN})
44 arm_toolchain_reload_compiler()
45endif()
46
47add_library(${PROJECT_NAME} STATIC)
48
49add_subdirectory(${PSA_ADAC_ROOT}/psa-adac/core adac_core)
50add_subdirectory(${PSA_ADAC_ROOT}/psa-adac/sda adac_sda)
51add_subdirectory(${PSA_ADAC_TARGET_PATH} adac_platform)
Maulik Patel5204dc02023-11-08 08:36:31 +000052add_subdirectory(${PSA_ADAC_ROOT}/psa_crypto)
Satish Kumar427923c2021-10-05 07:21:53 +010053
54target_link_libraries(${PROJECT_NAME}
55 PUBLIC
56 psa_adac_core
57 psa_adac_sda
58)
59
60install(FILES "${CMAKE_CURRENT_BINARY_DIR}/lib${PROJECT_NAME}.a"
61 DESTINATION ${PSA_ADAC_INSTALL_PATH}/lib
62)