blob: 7113bc0dc83061ffb451cc0d09ebdeaee08fc07e [file] [log] [blame]
Tamas Banb0e587c2019-02-12 13:53:01 +00001#-------------------------------------------------------------------------------
2# Copyright (c) 2019, Arm Limited. All rights reserved.
3#
4# SPDX-License-Identifier: BSD-3-Clause
5#
6#-------------------------------------------------------------------------------
7
8cmake_minimum_required(VERSION 3.7)
9
10#Tell cmake where our modules can be found
11list(APPEND CMAKE_MODULE_PATH ${CMAKE_CURRENT_LIST_DIR}/../../../cmake)
12
Ken Liue40f9a22019-06-03 16:42:47 +080013#Some project global settings
14set(T_COSE_DIR "${CMAKE_CURRENT_LIST_DIR}")
15get_filename_component(TFM_ROOT_DIR "${T_COSE_DIR}/../.." ABSOLUTE)
16
Tamas Banb0e587c2019-02-12 13:53:01 +000017#Include common stuff to control cmake.
18include("Common/BuildSys")
19
20#Start an embedded project.
Ken Liue40f9a22019-06-03 16:42:47 +080021embedded_project_start(CONFIG "${TFM_ROOT_DIR}/configs/ConfigDefault.cmake")
Tamas Ban5589f232019-03-06 13:11:01 +000022project(tfm_t_cose_sign LANGUAGES C)
23project(tfm_t_cose_verify LANGUAGES C)
Tamas Banb0e587c2019-02-12 13:53:01 +000024embedded_project_fixup()
25
Tamas Banb0e587c2019-02-12 13:53:01 +000026#Append all our source files to global lists.
Tamas Ban5589f232019-03-06 13:11:01 +000027list(APPEND ALL_SRC_C_SIGN
Tamas Banb0e587c2019-02-12 13:53:01 +000028 "${T_COSE_DIR}/src/t_cose_sign1_sign.c"
29 "${T_COSE_DIR}/src/t_cose_util.c"
Tamas Ban5589f232019-03-06 13:11:01 +000030 "${T_COSE_DIR}/src/t_cose_psa_crypto_hash.c"
31 "${T_COSE_DIR}/src/t_cose_psa_crypto_sign.c"
32 )
33
34list(APPEND ALL_SRC_C_VERIFY
Laurence Lundbladedada1232019-03-01 09:13:14 -080035 "${T_COSE_DIR}/src/t_cose_sign1_verify.c"
Tamas Ban5589f232019-03-06 13:11:01 +000036 "${T_COSE_DIR}/src/t_cose_util.c"
37 "${T_COSE_DIR}/src/t_cose_psa_crypto_hash.c"
38 "${T_COSE_DIR}/src/t_cose_psa_crypto_verify.c"
Tamas Banb0e587c2019-02-12 13:53:01 +000039 )
40
41#Setting include directories
42embedded_include_directories(PATH ${T_COSE_DIR}/inc ABSOLUTE)
Tamas Ban5589f232019-03-06 13:11:01 +000043embedded_target_include_directories(TARGET tfm_t_cose_verify PATH ${TFM_ROOT_DIR}/lib/ext/qcbor/util ABSOLUTE APPEND)
Tamas Ban6c08f9d2019-05-09 08:43:29 +010044embedded_target_include_directories(TARGET tfm_t_cose_verify PATH ${TFM_ROOT_DIR}/test/suites/attestation ABSOLUTE APPEND)
Tamas Ban5589f232019-03-06 13:11:01 +000045embedded_target_include_directories(TARGET tfm_t_cose_sign PATH ${TFM_ROOT_DIR}/platform/include ABSOLUTE APPEND)
Tamas Banb0e587c2019-02-12 13:53:01 +000046
Tamas Ban5589f232019-03-06 13:11:01 +000047#Specify what we build (t_cose_sign and t_cose_verify build as an object library)
48add_library(tfm_t_cose_sign OBJECT ${ALL_SRC_C_SIGN})
49add_library(tfm_t_cose_verify OBJECT ${ALL_SRC_C_VERIFY})
Tamas Banb0e587c2019-02-12 13:53:01 +000050
51#Set common compiler flags
Tamas Ban5589f232019-03-06 13:11:01 +000052config_setting_shared_compiler_flags(tfm_t_cose_sign)
53config_setting_shared_compiler_flags(tfm_t_cose_verify)
Tamas Banb0e587c2019-02-12 13:53:01 +000054
Tamas Ban5589f232019-03-06 13:11:01 +000055embedded_project_end(tfm_t_cose_sign)
56embedded_project_end(tfm_t_cose_verify)