blob: 762ad056a903e115b1eeaa7379c765672a8db6df [file] [log] [blame]
Tamas Banc2e0c182020-01-07 15:09:16 +00001#-------------------------------------------------------------------------------
Raef Colesf795a9c2021-01-14 15:49:27 +00002# Copyright (c) 2020-2021, Arm Limited. All rights reserved.
Tamas Banc2e0c182020-01-07 15:09:16 +00003#
4# SPDX-License-Identifier: BSD-3-Clause
5#
6#-------------------------------------------------------------------------------
7
Raef Coles69817322020-10-19 14:14:14 +01008cmake_minimum_required(VERSION 3.15)
Tamas Banc2e0c182020-01-07 15:09:16 +00009
Raef Colesf795a9c2021-01-14 15:49:27 +000010add_library(tfm_t_cose STATIC EXCLUDE_FROM_ALL)
Tamas Banc2e0c182020-01-07 15:09:16 +000011
Raef Coles19715382020-07-10 09:50:17 +010012target_sources(tfm_t_cose
13 PRIVATE
14 $<$<BOOL:${SYMMETRIC_INITIAL_ATTESTATION}>:src/t_cose_mac0_sign.c>
15 $<$<BOOL:${SYMMETRIC_INITIAL_ATTESTATION}>:src/t_cose_mac0_verify.c>
16 $<$<NOT:$<BOOL:${SYMMETRIC_INITIAL_ATTESTATION}>>:src/t_cose_sign1_sign.c>
17 $<$<NOT:$<BOOL:${SYMMETRIC_INITIAL_ATTESTATION}>>:src/t_cose_sign1_verify.c>
18 src/t_cose_util.c
19 src/t_cose_parameters.c
20 crypto_adapters/t_cose_psa_crypto.c
21)
Tamas Banc2e0c182020-01-07 15:09:16 +000022
Raef Coles19715382020-07-10 09:50:17 +010023target_include_directories(tfm_t_cose
24 PUBLIC
25 $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/inc>
26 $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/src>
27)
Tamas Banc2e0c182020-01-07 15:09:16 +000028
Raef Coles19715382020-07-10 09:50:17 +010029target_link_libraries(tfm_t_cose
30 PUBLIC
31 tfm_qcbor
32 psa_interface
33)
Tamas Banc2e0c182020-01-07 15:09:16 +000034
Raef Coles19715382020-07-10 09:50:17 +010035target_compile_definitions(tfm_t_cose
36 PUBLIC
37 T_COSE_COMPILE_TIME_CONFIG
38 T_COSE_USE_PSA_CRYPTO
39 T_COSE_USE_PSA_CRYPTO_FROM_TFM
40 T_COSE_DISABLE_CONTENT_TYPE
41 $<$<NOT:$<BOOL:${SYMMETRIC_INITIAL_ATTESTATION}>>:T_COSE_DISABLE_ES384>
42 $<$<NOT:$<BOOL:${SYMMETRIC_INITIAL_ATTESTATION}>>:T_COSE_DISABLE_ES512>
43 $<$<NOT:$<BOOL:${SYMMETRIC_INITIAL_ATTESTATION}>>:T_COSE_DISABLE_SIGN_VERIFY_TESTS>
44 $<$<BOOL:${SYMMETRIC_INITIAL_ATTESTATION}>:T_COSE_DISABLE_SIGN1>
45 $<$<NOT:$<BOOL:${SYMMETRIC_INITIAL_ATTESTATION}>>:T_COSE_DISABLE_MAC0>
46 $<$<NOT:$<CONFIG:Debug>>:T_COSE_DISABLE_SHORT_CIRCUIT_SIGN>
47)
Tamas Banc2e0c182020-01-07 15:09:16 +000048
Raef Coles19715382020-07-10 09:50:17 +010049############################ t_cose test #######################################
Tamas Banc2e0c182020-01-07 15:09:16 +000050
Raef Coles19715382020-07-10 09:50:17 +010051add_library(tfm_t_cose_test STATIC EXCLUDE_FROM_ALL)
David Hu333ca932020-01-25 12:25:41 +080052
Raef Coles19715382020-07-10 09:50:17 +010053target_sources(tfm_t_cose_test
54 PRIVATE
55 test/run_tests.c
56 test/t_cose_make_psa_test_key.c
57 test/t_cose_make_test_messages.c
58 test/t_cose_sign_verify_test.c
59 test/t_cose_test.c
60)
David Hu333ca932020-01-25 12:25:41 +080061
Raef Coles19715382020-07-10 09:50:17 +010062target_include_directories(tfm_t_cose_test
63 PUBLIC
64 $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/inc>
65 $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/test>
66)
David Hu333ca932020-01-25 12:25:41 +080067
Raef Coles19715382020-07-10 09:50:17 +010068target_link_libraries(tfm_t_cose_test
69 PRIVATE
70 tfm_t_cose
71)