diff --git a/CMakeLists.txt b/CMakeLists.txt index f6942b0..95eb379 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -10,19 +10,6 @@ include(CTest) find_package(Eigen3 REQUIRED) find_package(GTest REQUIRED) -# Add subdirectories for message dependencies -# if (NOT TARGET sensor_msgs) -# add_subdirectory(${CMAKE_CURRENT_SOURCE_DIR}/../common_msgs/sensor_msgs ${CMAKE_BINARY_DIR}/sensor_msgs_build) -# endif() - -# if (NOT TARGET geometry_msgs) -# add_subdirectory(${CMAKE_CURRENT_SOURCE_DIR}/../common_msgs/geometry_msgs ${CMAKE_BINARY_DIR}/geometry_msgs_build) -# endif() - -# if (NOT TARGET robot_time) -# add_subdirectory(${CMAKE_CURRENT_SOURCE_DIR}/../robot_time ${CMAKE_BINARY_DIR}/robot_time_build) -# endif() - # Include directories include_directories( include @@ -57,14 +44,13 @@ endif() # which is appropriate when building the dll but not consuming it. target_compile_definitions(laser_geometry PRIVATE "LASER_GEOMETRY_BUILDING_LIBRARY") -# Install targets -install( - TARGETS laser_geometry - # EXPORT laser_geometry - ARCHIVE DESTINATION lib - LIBRARY DESTINATION lib - RUNTIME DESTINATION bin - INCLUDES DESTINATION include +# --- Cài đặt thư viện vào hệ thống khi chạy make install --- +install(TARGETS laser_geometry + EXPORT laser_geometry-targets + ARCHIVE DESTINATION lib # Thư viện tĩnh .a + LIBRARY DESTINATION lib # Thư viện động .so + RUNTIME DESTINATION bin # File thực thi (nếu có) + INCLUDES DESTINATION include # Cài đặt include ) install( @@ -72,6 +58,18 @@ install( DESTINATION include/${PROJECT_NAME} ) +# --- Xuất export set laser_geometry-targets thành file CMake module --- +# --- Tạo file lib/cmake/laser_geometry/laser_geometry-targets.cmake --- +# --- File này chứa cấu hình giúp project khác có thể dùng --- +# --- Find_package(laser_geometry REQUIRED) --- +# --- Target_link_libraries(my_app PRIVATE laser_geometry::laser_geometry) --- +install(EXPORT laser_geometry-targets + FILE laser_geometry-targets.cmake + NAMESPACE laser_geometry:: + DESTINATION lib/cmake/laser_geometry +) + + # Tests if(BUILD_TESTING) enable_testing()