1#-------------------------------------------------------------------------------
2# Copyright (c) 2020-2022, Arm Limited and Contributors. All rights reserved.
3#
4# SPDX-License-Identifier: BSD-3-Clause
5#
6#-------------------------------------------------------------------------------
7cmake_minimum_required(VERSION 3.18 FATAL_ERROR)
8include(../../deployment.cmake REQUIRED)
9
10#-------------------------------------------------------------------------------
11#  The CMakeLists.txt for building the component-test deployment for arm-linux
12#
13#  Used for building and running component level tests as a Linux userspace
14#  program running on Arm. Tests can be run by running the built executable
15#  called "component-test"
16#-------------------------------------------------------------------------------
17include(${TS_ROOT}/environments/arm-linux/env.cmake)
18project(trusted-services LANGUAGES CXX C)
19add_executable(component-test)
20target_include_directories(component-test PRIVATE "${TOP_LEVEL_INCLUDE_DIRS}")
21
22add_components(
23	TARGET "component-test"
24	BASE_DIR ${TS_ROOT}
25	COMPONENTS   "components/app/test-runner"
26)
27
28include(${TS_ROOT}/external/CppUTest/CppUTest.cmake)
29target_link_libraries(component-test PRIVATE ${CppUTest_LIBRARIES})
30
31#-------------------------------------------------------------------------------
32#  Components that are specific to deployment in the arm-linux environment.
33#
34#-------------------------------------------------------------------------------
35add_components(
36	TARGET "component-test"
37	BASE_DIR ${TS_ROOT}
38    COMPONENTS
39        "components/service/crypto/backend/mbedcrypto/trng_adapter/linux"
40)
41
42#-------------------------------------------------------------------------------
43#  Extend with components that are common across all deployments of
44#  component-test
45#
46#-------------------------------------------------------------------------------
47include(../component-test.cmake REQUIRED)
48
49#-------------------------------------------------------------------------------
50#  Define library options and dependencies.
51#
52#-------------------------------------------------------------------------------
53target_link_libraries(component-test PRIVATE stdc++ gcc m)
54