blob: 3e33757d9e893a26e5978d142326d5e3f6a27ab8 [file] [log] [blame]
Julian Halleff4b282020-11-23 18:24:12 +01001#-------------------------------------------------------------------------------
Gyorgy Szingec62ea72022-07-20 12:36:52 +00002# Copyright (c) 2020-2022, Arm Limited and Contributors. All rights reserved.
Julian Halleff4b282020-11-23 18:24:12 +01003#
4# SPDX-License-Identifier: BSD-3-Clause
5#
6#-------------------------------------------------------------------------------
7
8#-------------------------------------------------------------------------------
9# The base build file shared between deployments of 'ts-service-test' for
10# different environments. Used for running end-to-end service-level tests
Gyorgy Szingec62ea72022-07-20 12:36:52 +000011# where test cases exercise trusted service client interfaces.
Julian Halleff4b282020-11-23 18:24:12 +010012#-------------------------------------------------------------------------------
13
14#-------------------------------------------------------------------------------
15# Use libts for locating and accessing services. An appropriate version of
Gyorgy Szingec62ea72022-07-20 12:36:52 +000016# libts will be imported for the environment in which service tests are
Julian Halleff4b282020-11-23 18:24:12 +010017# deployed.
18#-------------------------------------------------------------------------------
19include(${TS_ROOT}/deployments/libts/libts-import.cmake)
Gyorgy Szingec62ea72022-07-20 12:36:52 +000020target_link_libraries(ts-service-test PRIVATE libts::ts)
Julian Halleff4b282020-11-23 18:24:12 +010021
22#-------------------------------------------------------------------------------
Gyorgy Szingec62ea72022-07-20 12:36:52 +000023# Components that are common across all deployments
Julian Halleff4b282020-11-23 18:24:12 +010024#
25#-------------------------------------------------------------------------------
26add_components(
27 TARGET "ts-service-test"
28 BASE_DIR ${TS_ROOT}
29 COMPONENTS
julhal01734dbad2020-12-21 10:27:41 +000030 "components/common/tlv"
Julian Hall99a57e32021-07-28 14:18:50 +010031 "components/service/common/client"
Julian Halla7e76c82021-04-14 11:12:11 +010032 "components/service/common/include"
Julian Hall3e614542021-07-29 11:47:47 +010033 "components/service/discovery/client"
34 "components/service/discovery/test/service"
Julian Halla7e76c82021-04-14 11:12:11 +010035 "components/service/crypto/include"
Julian Halleff4b282020-11-23 18:24:12 +010036 "components/service/crypto/test/service"
julhal01734dbad2020-12-21 10:27:41 +000037 "components/service/crypto/test/service/protobuf"
38 "components/service/crypto/test/service/packed-c"
Julian Hallc6e7a8a2021-08-09 14:28:13 +010039 "components/service/crypto/test/service/extension/hash"
40 "components/service/crypto/test/service/extension/hash/packed-c"
Julian Halla652ad62021-08-10 12:05:46 +010041 "components/service/crypto/test/service/extension/cipher"
42 "components/service/crypto/test/service/extension/cipher/packed-c"
Julian Hallcb11ba52021-08-10 15:41:06 +010043 "components/service/crypto/test/service/extension/mac"
44 "components/service/crypto/test/service/extension/mac/packed-c"
Julian Halle6569442021-08-11 11:07:24 +010045 "components/service/crypto/test/service/extension/key_derivation"
46 "components/service/crypto/test/service/extension/key_derivation/packed-c"
Julian Halla7e76c82021-04-14 11:12:11 +010047 "components/service/crypto/client/psa"
Julian Halleff4b282020-11-23 18:24:12 +010048 "components/service/crypto/client/cpp"
Julian Hall7a703402021-08-04 09:20:43 +010049 "components/service/crypto/client/cpp/protocol/protobuf"
50 "components/service/crypto/client/cpp/protocol/packed-c"
Julian Halleff4b282020-11-23 18:24:12 +010051 "components/service/common/serializer/protobuf"
Julian Hallcaa4af82021-05-19 12:02:36 +010052 "components/service/attestation/include"
53 "components/service/attestation/client/psa"
54 "components/service/attestation/client/provision"
55 "components/service/attestation/test/service"
Julian Halleff4b282020-11-23 18:24:12 +010056 "protocols/service/crypto/protobuf"
julhal01734dbad2020-12-21 10:27:41 +000057 "protocols/service/crypto/packed-c"
Julian Halla7e76c82021-04-14 11:12:11 +010058 "components/service/secure_storage/include"
julhal013a4207d2021-03-08 13:32:08 +000059 "components/service/secure_storage/test/service"
60 "components/service/secure_storage/frontend/psa/its"
61 "components/service/secure_storage/frontend/psa/its/test"
62 "components/service/secure_storage/frontend/psa/ps"
63 "components/service/secure_storage/frontend/psa/ps/test"
64 "components/service/secure_storage/backend/secure_storage_client"
Julian Halleff4b282020-11-23 18:24:12 +010065)
66
67#-------------------------------------------------------------------------------
68# Components used from external projects
69#
70#-------------------------------------------------------------------------------
71
Julian Halleff4b282020-11-23 18:24:12 +010072# Nanopb
73include(${TS_ROOT}/external/nanopb/nanopb.cmake)
74target_link_libraries(ts-service-test PRIVATE nanopb::protobuf-nanopb-static)
75protobuf_generate_all(TGT "ts-service-test" NAMESPACE "protobuf" BASE_DIR "${TS_ROOT}/protocols")
76
Julian Halleff4b282020-11-23 18:24:12 +010077#-------------------------------------------------------------------------------
78# Define install content.
79#
80#-------------------------------------------------------------------------------
81if (CMAKE_INSTALL_PREFIX_INITIALIZED_TO_DEFAULT)
82 set(CMAKE_INSTALL_PREFIX ${CMAKE_BINARY_DIR}/install CACHE PATH "location to install build output to." FORCE)
83endif()
Gyorgy Szingc31afbf2021-02-12 01:51:55 +010084install(TARGETS ts-service-test RUNTIME DESTINATION ${TS_ENV}/bin)