diff --git a/CMakeLists.txt b/CMakeLists.txt index a825404..7bb0114 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -1,41 +1,56 @@ cmake_minimum_required(VERSION 3.5) project(rslidar_msg) -# Default to C99 -if(NOT CMAKE_C_STANDARD) - set(CMAKE_C_STANDARD 99) -endif() +#ROS# +find_package(catkin QUIET) +if(catkin_FOUND) + message(=============================================================) + message("-- ROS Found. ROS Support is turned On.") + message(=============================================================) -# Default to C++14 -if(NOT CMAKE_CXX_STANDARD) - set(CMAKE_CXX_STANDARD 14) -endif() + find_package(catkin REQUIRED COMPONENTS + std_msgs + message_generation + ) -if(CMAKE_COMPILER_IS_GNUCXX OR CMAKE_CXX_COMPILER_ID MATCHES "Clang") - add_compile_options(-Wall -Wextra -Wpedantic) -endif() + add_message_files( + DIRECTORY msg + FILES + RslidarPacket.msg + ) -# find dependencies -find_package(ament_cmake REQUIRED) -find_package(std_msgs REQUIRED) -find_package(rclcpp REQUIRED) -find_package(builtin_interfaces REQUIRED) -find_package(rosidl_default_generators REQUIRED) - -rosidl_generate_interfaces(${PROJECT_NAME} - "msg/RslidarPacket.msg" - DEPENDENCIES builtin_interfaces std_msgs - ) - -if(BUILD_TESTING) - find_package(ament_lint_auto REQUIRED) - # the following line skips the linter which checks for copyrights - # uncomment the line when a copyright and license is not present in all source files - #set(ament_cmake_copyright_FOUND TRUE) - # the following line skips cpplint (only works in a git repo) - # uncomment the line when this package is not in a git repo - #set(ament_cmake_cpplint_FOUND TRUE) - ament_lint_auto_find_test_dependencies() + generate_messages(DEPENDENCIES std_msgs) + catkin_package(CATKIN_DEPENDS std_msgs message_runtime) endif() -ament_package() + +#ROS2# +find_package(ament_cmake QUIET) +if(ament_cmake_FOUND) + + message(=============================================================) + message("-- ROS2 Found. ROS2 Support is turned On.") + message(=============================================================) + + # Default to C++17 + if(NOT CMAKE_CXX_STANDARD) + set(CMAKE_CXX_STANDARD 17) + set(CMAKE_CXX_STANDARD_REQUIRED ON) + endif() + if(CMAKE_COMPILER_IS_GNUCXX OR CMAKE_CXX_COMPILER_ID MATCHES "Clang") + add_compile_options(-Wall -Wextra -Wpedantic) + endif() + + find_package(builtin_interfaces REQUIRED) + find_package(std_msgs REQUIRED) + find_package(rosidl_default_generators REQUIRED) + + rosidl_generate_interfaces(${PROJECT_NAME} + "msg/RslidarPacket.msg" + DEPENDENCIES builtin_interfaces std_msgs + ADD_LINTER_TESTS + ) + + ament_export_dependencies(rosidl_default_runtime) + ament_package() +endif() diff --git a/README.md b/README.md index 2164d00..9379e80 100644 --- a/README.md +++ b/README.md @@ -1,5 +1,3 @@ ## ROS2 LiDAR Packet Message - - -**This project is the custom LiDAR packet message in ROS2 environment. User need to put this project and rslidar_sdk in same workspace to compile.** \ No newline at end of file +**This project is the custom LiDAR packet message in ROS2 environment. User need to put this project and rslidar_sdk in same workspace to compile.** diff --git a/package.xml b/package.xml index b8a8309..d3e1548 100644 --- a/package.xml +++ b/package.xml @@ -2,28 +2,26 @@ rslidar_msg - 0.0.0 - ros msgs for the rslidar_sdk project + 1.5.16 + Messages for the rslidar_sdk project robosense BSD - ament_cmake + catkin + ament_cmake - std_msgs - rclcpp - - ament_lint_auto - ament_lint_common + rosidl_default_generators - builtin_interfaces + message_generation - builtin_interfaces - rosidl_default_generators - - rosidl_default_runtime + builtin_interfaces + std_msgs -rosidl_interface_packages + message_runtime + rosidl_default_runtime + ament_lint_common + rosidl_interface_packages - ament_cmake + ament_cmake diff --git a/ros1/CMakeLists.txt b/ros1/CMakeLists.txt deleted file mode 100644 index 320fb43..0000000 --- a/ros1/CMakeLists.txt +++ /dev/null @@ -1,41 +0,0 @@ -cmake_minimum_required(VERSION 3.5) -project(rslidar_msg) - -# Default to C99 -if(NOT CMAKE_C_STANDARD) - set(CMAKE_C_STANDARD 99) -endif() - -# Default to C++14 -if(NOT CMAKE_CXX_STANDARD) - set(CMAKE_CXX_STANDARD 14) -endif() - -if(CMAKE_COMPILER_IS_GNUCXX OR CMAKE_CXX_COMPILER_ID MATCHES "Clang") - add_compile_options(-Wall -Wextra -Wpedantic) -endif() - -# find dependencies -find_package(std_msgs REQUIRED) - -find_package(catkin REQUIRED COMPONENTS - roscpp - std_msgs - sensor_msgs - message_generation - ) - -add_message_files(FILES - RslidarPacket.msg - ) - -generate_messages(DEPENDENCIES - std_msgs - sensor_msgs - ) - -catkin_package(CATKIN_DEPENDS - std_msgs - sensor_msgs - message_runtime - ) diff --git a/ros1/package.xml b/ros1/package.xml deleted file mode 100644 index 831a653..0000000 --- a/ros1/package.xml +++ /dev/null @@ -1,22 +0,0 @@ - - - - rslidar_msg - 0.0.0 - ros msgs for the rslidar_sdk project - robosense - BSD - - catkin - - roscpp - std_msgs - sensor_msgs - message_generation - - roscpp - std_msgs - sensor_msgs - message_runtime - - diff --git a/ros2/CMakeLists.txt b/ros2/CMakeLists.txt deleted file mode 100644 index a825404..0000000 --- a/ros2/CMakeLists.txt +++ /dev/null @@ -1,41 +0,0 @@ -cmake_minimum_required(VERSION 3.5) -project(rslidar_msg) - -# Default to C99 -if(NOT CMAKE_C_STANDARD) - set(CMAKE_C_STANDARD 99) -endif() - -# Default to C++14 -if(NOT CMAKE_CXX_STANDARD) - set(CMAKE_CXX_STANDARD 14) -endif() - -if(CMAKE_COMPILER_IS_GNUCXX OR CMAKE_CXX_COMPILER_ID MATCHES "Clang") - add_compile_options(-Wall -Wextra -Wpedantic) -endif() - -# find dependencies -find_package(ament_cmake REQUIRED) -find_package(std_msgs REQUIRED) -find_package(rclcpp REQUIRED) -find_package(builtin_interfaces REQUIRED) -find_package(rosidl_default_generators REQUIRED) - -rosidl_generate_interfaces(${PROJECT_NAME} - "msg/RslidarPacket.msg" - DEPENDENCIES builtin_interfaces std_msgs - ) - -if(BUILD_TESTING) - find_package(ament_lint_auto REQUIRED) - # the following line skips the linter which checks for copyrights - # uncomment the line when a copyright and license is not present in all source files - #set(ament_cmake_copyright_FOUND TRUE) - # the following line skips cpplint (only works in a git repo) - # uncomment the line when this package is not in a git repo - #set(ament_cmake_cpplint_FOUND TRUE) - ament_lint_auto_find_test_dependencies() -endif() - -ament_package() diff --git a/ros2/package.xml b/ros2/package.xml deleted file mode 100644 index b8a8309..0000000 --- a/ros2/package.xml +++ /dev/null @@ -1,29 +0,0 @@ - - - - rslidar_msg - 0.0.0 - ros msgs for the rslidar_sdk project - robosense - BSD - - ament_cmake - - std_msgs - rclcpp - - ament_lint_auto - ament_lint_common - - builtin_interfaces - - builtin_interfaces - rosidl_default_generators - - rosidl_default_runtime - -rosidl_interface_packages - - ament_cmake - -