robot_time/CMakeLists.txt

49 lines
1.0 KiB
CMake

cmake_minimum_required(VERSION 3.10.2)
project(rostime LANGUAGES CXX)
set(CMAKE_CXX_STANDARD 17)
set(CMAKE_CXX_STANDARD_REQUIRED ON)
set(CMAKE_CXX_EXTENSIONS OFF)
find_package(GTest REQUIRED)
include_directories(${GTEST_INCLUDE_DIRS})
add_library(rostime
src/duration.cpp
src/rate.cpp
src/time.cpp)
target_include_directories(rostime PUBLIC
$<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/include>
$<INSTALL_INTERFACE:include>)
install(TARGETS rostime
EXPORT rostimeTargets
ARCHIVE DESTINATION lib
LIBRARY DESTINATION lib
RUNTIME DESTINATION bin)
install(DIRECTORY include/
DESTINATION include
FILES_MATCHING PATTERN "*.h")
install(EXPORT rostimeTargets
NAMESPACE rostime::
DESTINATION lib/cmake/rostime)
add_executable(robot_time_test test/time.cpp)
add_executable(robot_duration_test test/duration.cpp)
target_link_libraries(robot_time_test PRIVATE
rostime
${GTEST_LIBRARIES}
GTest::GTest
GTest::Main)
target_link_libraries(robot_duration_test PRIVATE
rostime
${GTEST_LIBRARIES}
GTest::GTest
GTest::Main)