j7s_diagnostics_cxx/CMakeLists.txt

38 lines
902 B
CMake

cmake_minimum_required(VERSION 3.22)
project(j7s_diagnostics_ros CXX)
find_package(ament_cmake REQUIRED)
find_package(rclcpp REQUIRED)
include(FetchContent)
FetchContent_Declare(
Corrosion
GIT_REPOSITORY https://github.com/corrosion-rs/corrosion.git
GIT_TAG master
)
FetchContent_MakeAvailable(Corrosion)
set(CMAKE_CXX_STANDARD 20)
corrosion_import_crate(MANIFEST_PATH j7s_diagnostics_cxx/Cargo.toml)
corrosion_add_cxxbridge(j7s_diagnostics_cxx_bridge
CRATE j7s_diagnostics_cxx
FILES lib.rs)
add_executable(test_bin src/test.cpp)
target_link_libraries(test_bin PRIVATE j7s_diagnostics_cxx_bridge)
corrosion_install(TARGETS j7s_diagnostics_cxx
EXPORT export_${PROJECT_NAME}
ARCHIVE DESTINATION lib
LIBRARY DESTINATION lib
RUNTIME DESTINATION bin
)
install(TARGETS
test_bin
DESTINATION lib/${PROJECT_NAME})
ament_export_targets(export_${PROJECT_NAME})
ament_package()