Files
cls_master/tests/native/CMakeLists.txt
Oliver Walter a3c3b99fb3 make libCLS more independen of HW
goal is to reuse libCLS on an diffrent MCU
2024-02-05 19:46:48 +01:00

43 lines
1.1 KiB
CMake

cmake_minimum_required(VERSION 3.10)
# set the project name
project(CLS_Master_Unity)
set(CMAKE_EXPORT_COMPILE_COMMANDS 1)
add_executable(${CMAKE_PROJECT_NAME})
target_sources(${CMAKE_PROJECT_NAME} PUBLIC
tests.c
usbdata_test.c
candata_test.c
mock_os/mock_os.c
mock_os/mock_hal.c
../lib/Unity/src/unity.c
)
target_include_directories(${CMAKE_PROJECT_NAME} PUBLIC
./
../lib/Unity/src
)
include_directories(mock_os)
set(CMAKE_MODULE_PATH ${CMAKE_CURRENT_SOURCE_DIR}/../../lib/nanopb/extra)
find_package(Nanopb REQUIRED)
include_directories(${NANOPB_INCLUDE_DIRS})
nanopb_generate_cpp(PROTO_SRCS PROTO_HDRS RELPATH proto ../../proto/firmware.proto)
add_library(PROTOS ${PROTO_SRCS} ${PROTO_HDRS})
target_include_directories(PROTOS PUBLIC ${NANOPB_INCLUDE_DIRS} ${PROJECT_BINARY_DIR})
include_directories(${PROJECT_BINARY_DIR})
add_library(CLS_BSP mock_os/CLS_BSP.c)
target_include_directories(CLS_BSP PUBLIC
./
../lib/Unity/src
)
add_subdirectory(../../Application/Tasks Tasks)
add_subdirectory(../../Application/CLS CLS)
target_link_libraries(${CMAKE_PROJECT_NAME} PUBLIC Tasks CLS)