Summer Qin | 153f3df | 2022-11-17 15:51:02 +0800 | [diff] [blame] | 1 | #------------------------------------------------------------------------------- |
| 2 | # Copyright (c) 2023, Arm Limited. All rights reserved. |
| 3 | # |
| 4 | # SPDX-License-Identifier: BSD-3-Clause |
| 5 | # |
| 6 | #------------------------------------------------------------------------------- |
| 7 | |
David Hu | 4c3c0ca | 2023-12-02 22:09:18 +0800 | [diff] [blame] | 8 | cmake_minimum_required(VERSION 3.21) |
Summer Qin | 153f3df | 2022-11-17 15:51:02 +0800 | [diff] [blame] | 9 | |
| 10 | project("ERPC Host" LANGUAGES CXX C) |
| 11 | set(CMAKE_CXX_FLAGS "-m32") |
| 12 | set(CMAKE_C_FLAGS "-m32") |
| 13 | |
| 14 | add_executable(erpc_main) |
| 15 | |
| 16 | add_subdirectory(../client client) |
| 17 | |
Antonio de Angelis | 6590084 | 2024-05-02 13:32:10 +0100 | [diff] [blame^] | 18 | # Include exported targets as we need psa_crypto_config |
| 19 | include(${CONFIG_SPE_PATH}/cmake/spe_export.cmake) |
| 20 | |
Summer Qin | 153f3df | 2022-11-17 15:51:02 +0800 | [diff] [blame] | 21 | if (ERPC_TRANSPORT STREQUAL "UART") |
| 22 | if (NOT DEFINED PORT_NAME) |
| 23 | message(FATAL_ERROR "Please provide PORT_NAME!") |
| 24 | endif() |
| 25 | elseif (ERPC_TRANSPORT STREQUAL "TCP") |
| 26 | if((NOT DEFINED ERPC_HOST) OR (NOT DEFINED ERPC_PORT)) |
| 27 | message(FATAL_ERROR "Please provide ERPC_HOST and ERPC_PORT!") |
| 28 | endif() |
Jason Guo | 4625c23 | 2023-07-11 10:21:49 +0800 | [diff] [blame] | 29 | elseif (DEFINED ERPC_TRANSPORT) |
Summer Qin | 153f3df | 2022-11-17 15:51:02 +0800 | [diff] [blame] | 30 | message(FATAL_ERROR "Please provided supported transportation type (UART and TCP)!") |
| 31 | endif() |
| 32 | |
| 33 | target_sources(erpc_main |
| 34 | PRIVATE |
| 35 | main.c |
| 36 | ${ERPC_REPO_PATH}/erpc_c/port/erpc_threading_pthreads.cpp |
Jason Guo | 4625c23 | 2023-07-11 10:21:49 +0800 | [diff] [blame] | 37 | ${ERPC_REPO_PATH}/erpc_c/setup/erpc_setup_serial.cpp |
| 38 | ${ERPC_REPO_PATH}/erpc_c/transports/erpc_serial_transport.cpp |
| 39 | ${ERPC_REPO_PATH}/erpc_c/setup/erpc_setup_tcp.cpp |
| 40 | ${ERPC_REPO_PATH}/erpc_c/transports/erpc_tcp_transport.cpp |
Kevin Peng | 9718581 | 2023-11-15 15:34:48 +0800 | [diff] [blame] | 41 | ${CONFIG_SPE_PATH}/interface/src/tfm_crypto_api.c |
Summer Qin | 153f3df | 2022-11-17 15:51:02 +0800 | [diff] [blame] | 42 | ) |
| 43 | |
| 44 | target_link_libraries(erpc_main |
| 45 | PRIVATE |
| 46 | erpc_client |
| 47 | pthread |
Antonio de Angelis | 6590084 | 2024-05-02 13:32:10 +0100 | [diff] [blame^] | 48 | PUBLIC |
| 49 | psa_crypto_config |
Summer Qin | 153f3df | 2022-11-17 15:51:02 +0800 | [diff] [blame] | 50 | ) |
| 51 | |
| 52 | target_compile_definitions(erpc_main |
| 53 | PRIVATE |
| 54 | $<$<STREQUAL:${ERPC_TRANSPORT},UART>:ERPC_TRANSPORT_UART> |
| 55 | $<$<STREQUAL:${ERPC_TRANSPORT},TCP>:ERPC_TRANSPORT_TCP> |
| 56 | $<$<AND:$<STREQUAL:${ERPC_TRANSPORT},UART>,$<BOOL:${PORT_NAME}>>:PORT_NAME="${PORT_NAME}"> |
| 57 | $<$<AND:$<STREQUAL:${ERPC_TRANSPORT},TCP>,$<BOOL:${ERPC_HOST}>>:ERPC_HOST="${ERPC_HOST}"> |
| 58 | $<$<AND:$<STREQUAL:${ERPC_TRANSPORT},TCP>,$<BOOL:${ERPC_PORT}>>:ERPC_PORT=${ERPC_PORT}> |
Summer Qin | 46f1c98 | 2022-12-14 15:24:50 +0800 | [diff] [blame] | 59 | PLATFORM_DEFAULT_CRYPTO_KEYS |
Summer Qin | 153f3df | 2022-11-17 15:51:02 +0800 | [diff] [blame] | 60 | ) |