cmake_minimum_required(VERSION 3.21)
|
project(libscpi VERSION 2.1.0 LANGUAGES C)
|
|
file(GLOB_RECURSE SRC_FILES
|
libscpi/inc/*.h
|
libscpi/src/*.c
|
)
|
|
add_library(scpi_static STATIC ${SRC_FILES})
|
|
target_include_directories(scpi_static
|
PUBLIC
|
"$<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/libscpi/inc>"
|
)
|
|
add_library(scpi SHARED ${SRC_FILES})
|
|
target_include_directories(scpi
|
PUBLIC
|
"$<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/libscpi/inc>"
|
)
|
|
enable_testing()
|
find_package(unofficial-cunit CONFIG REQUIRED)
|
|
file(GLOB_RECURSE TEST_FILES
|
libscpi/test/*.c
|
)
|
foreach(test_file IN LISTS TEST_FILES)
|
cmake_path(GET test_file FILENAME test_name)
|
|
add_executable(${test_name} ${test_file})
|
|
target_link_libraries(${test_name}
|
PRIVATE
|
scpi_static
|
unofficial::cunit::cunit
|
)
|
|
add_test(
|
NAME "${test_name}"
|
COMMAND ${test_name}
|
)
|
endforeach()
|