Skip to content

Commit 3d60ce8

Browse files
Remove support for Catkin (#98)
1 parent b80591d commit 3d60ce8

26 files changed

+127
-3358
lines changed

.github/workflows/ros-humble.yaml

Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,23 @@
1+
name: ROS2 Humble
2+
3+
on:
4+
push:
5+
branches: [ main ]
6+
pull_request:
7+
branches: [ main ]
8+
workflow_dispatch:
9+
10+
jobs:
11+
build:
12+
runs-on: ubuntu-22.04
13+
steps:
14+
# Set up ROS
15+
- uses: ros-tooling/[email protected]
16+
with:
17+
required-ros-distributions: humble
18+
19+
# Run ROS CI
20+
- uses: ros-tooling/[email protected]
21+
with:
22+
package-name: plotjuggler_ros
23+
target-ros2-distro: humble

.github/workflows/ros-jazzy.yaml

Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,23 @@
1+
name: ROS2 Jazzy
2+
3+
on:
4+
push:
5+
branches: [ main ]
6+
pull_request:
7+
branches: [ main ]
8+
workflow_dispatch:
9+
10+
jobs:
11+
build:
12+
runs-on: ubuntu-24.04
13+
steps:
14+
# Set up ROS
15+
- uses: ros-tooling/[email protected]
16+
with:
17+
required-ros-distributions: jazzy
18+
19+
# Run ROS CI
20+
- uses: ros-tooling/[email protected]
21+
with:
22+
package-name: plotjuggler_ros
23+
target-ros2-distro: jazzy

.github/workflows/ros-rolling.yaml

Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,23 @@
1+
name: ROS2 Rolling
2+
3+
on:
4+
push:
5+
branches: [ main ]
6+
pull_request:
7+
branches: [ main ]
8+
workflow_dispatch:
9+
10+
jobs:
11+
build:
12+
runs-on: ubuntu-24.04
13+
steps:
14+
# Set up ROS
15+
- uses: ros-tooling/[email protected]
16+
with:
17+
required-ros-distributions: rolling
18+
19+
# Run ROS CI
20+
- uses: ros-tooling/[email protected]
21+
with:
22+
package-name: plotjuggler_ros
23+
target-ros2-distro: rolling

.github/workflows/ros1.yaml

Lines changed: 0 additions & 17 deletions
This file was deleted.

.github/workflows/ros2.yaml

Lines changed: 0 additions & 19 deletions
This file was deleted.

CMakeLists.txt

Lines changed: 14 additions & 75 deletions
Original file line numberDiff line numberDiff line change
@@ -2,49 +2,15 @@ cmake_minimum_required(VERSION 3.5)
22

33
PROJECT(plotjuggler_ros)
44

5-
find_package(ament_cmake QUIET)
6-
find_package(catkin QUIET)
5+
find_package(ament_cmake REQUIRED)
6+
find_package(rclcpp REQUIRED)
7+
find_package(rcpputils REQUIRED)
8+
find_package(rosbag2_transport REQUIRED)
9+
find_package(Boost REQUIRED)
10+
find_package(tf2_msgs REQUIRED)
11+
find_package(tf2_ros REQUIRED)
12+
find_package(plotjuggler REQUIRED)
713

8-
# http://answers.ros.org/question/230877/optionally-build-a-package-with-catkin/
9-
if( catkin_FOUND OR CATKIN_DEVEL_PREFIX OR CATKIN_BUILD_BINARY_PACKAGE)
10-
set(COMPILING_WITH_CATKIN 1)
11-
12-
message(STATUS "---------------------------------------------------------------------")
13-
message(STATUS "PlotJuggler is being built using CATKIN. ROS plugins will be compiled")
14-
message(STATUS "---------------------------------------------------------------------")
15-
16-
set(ROS_DEPENDENCIES
17-
rosbag_storage
18-
roscpp
19-
roscpp_serialization
20-
ros_type_introspection
21-
tf2_ros
22-
plotjuggler )
23-
24-
find_package(catkin REQUIRED COMPONENTS ${ROS_DEPENDENCIES} )
25-
26-
catkin_package(
27-
CATKIN_DEPENDS ${ROS_DEPENDENCIES} )
28-
29-
elseif( ament_cmake_FOUND )
30-
set(COMPILING_WITH_AMENT 1)
31-
32-
message(STATUS "---------------------------------------------------------------------")
33-
message(STATUS "PlotJuggler is being built using AMENT. ROS2 plugins will be compiled")
34-
message(STATUS "---------------------------------------------------------------------")
35-
36-
find_package(rclcpp REQUIRED)
37-
find_package(rcpputils REQUIRED)
38-
find_package(rosbag2 REQUIRED)
39-
find_package(rosbag2_transport REQUIRED)
40-
find_package(Boost REQUIRED)
41-
find_package(tf2_msgs REQUIRED)
42-
find_package(tf2_ros REQUIRED)
43-
find_package(plotjuggler REQUIRED)
44-
45-
else()
46-
message(FATAL_ERROR "PlotJuggler is being WITHOUT any ROS support")
47-
endif()
4814

4915
cmake_policy (SET CMP0020 NEW)
5016

@@ -96,47 +62,20 @@ IF (NOT WIN32)
9662
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fPIC")
9763
ENDIF()
9864

99-
include_directories(
100-
3rdparty
101-
${Qt5Core_INCLUDE_DIRS}
102-
${Qt5Widgets_INCLUDE_DIRS}
103-
${Qt5Concurrent_INCLUDE_DIRS}
104-
${Qt5Xml_INCLUDE_DIRS}
105-
${Qt5WebSockets_INCLUDE_DIRS}
106-
${Qt5Svg_INCLUDE_DIRS}
107-
)
10865

10966
add_definitions(-DFMT_HEADER_ONLY)
11067

11168
######################### INSTALL ####################################
11269

113-
if(COMPILING_WITH_CATKIN)
114-
set(CMAKE_ARCHIVE_OUTPUT_DIRECTORY ${CATKIN_DEVEL_PREFIX}/${CATKIN_PACKAGE_LIB_DESTINATION})
115-
set(CMAKE_LIBRARY_OUTPUT_DIRECTORY ${CATKIN_DEVEL_PREFIX}/${CATKIN_PACKAGE_BIN_DESTINATION})
116-
set(CMAKE_RUNTIME_OUTPUT_DIRECTORY ${CATKIN_DEVEL_PREFIX}/${CATKIN_PACKAGE_BIN_DESTINATION})
11770

118-
install(DIRECTORY launch
119-
DESTINATION share/${PROJECT_NAME})
71+
set(CMAKE_LIBRARY_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/bin)
72+
set(CMAKE_RUNTIME_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/bin)
12073

121-
elseif(COMPILING_WITH_AMENT)
122-
find_package(ament_cmake REQUIRED)
123-
set(CMAKE_LIBRARY_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/bin)
124-
set(CMAKE_RUNTIME_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/bin)
125-
126-
install(DIRECTORY launch
127-
DESTINATION share/${PROJECT_NAME})
74+
install(DIRECTORY launch
75+
DESTINATION share/${PROJECT_NAME})
12876

129-
else()
130-
set(CMAKE_INSTALL_PREFIX ${CMAKE_INSTALL_PREFIX})
131-
set(CMAKE_ARCHIVE_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/lib)
132-
set(CMAKE_LIBRARY_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/bin/plotjuggler)
133-
endif()
134-
135-
#############################################################
136-
13777
add_subdirectory( src )
13878

139-
if(COMPILING_WITH_AMENT)
140-
ament_package()
141-
endif()
79+
ament_package()
80+
14281

README.md

Lines changed: 8 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -14,19 +14,15 @@ ROS is supported through external plugins that can be found in this [repository]
1414
- **Re-publisher** similar to `rosbag play` (ROS only).
1515

1616

17-
## Install with Debians (TODO)
17+
## Install with Debians
1818

1919
Install PlotJuggler and its ROS plugins with:
2020

2121
sudo apt install ros-${ROS_DISTRO}-plotjuggler-ros
22-
23-
To launch PlotJuggler on ROS, use the command:
24-
25-
rosrun plotjuggler plotjuggler
2622

2723
or, if have ROS2 installed:
2824

29-
ros2 run plotjuggler plotjuggler
25+
ros2 run plotjuggler plotjuggler
3026

3127
## How to compile PlotJuggler from source
3228

@@ -41,12 +37,12 @@ Create a catkin workspace and clone the repositories:
4137
Now, it is time to compile:
4238

4339
cd ~/ws_plotjuggler
44-
rosdep install --from-paths src --ignore-src --rosdistro=${ROS_DISTRO} -y
45-
catkin build
46-
47-
Enjoy:
40+
rosdep install --from-paths src --ignore-src -y
41+
colcon build
42+
43+
# For ROS (1) users
44+
45+
From version 2.3+, this library will support only ROS2 (Hubmle or older)
4846

49-
source devel/setup.bash
50-
roslaunch plotjuggler_ros plotjuggler.launch
5147

5248

package.xml

Lines changed: 5 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -11,22 +11,12 @@
1111

1212
<author email="[email protected]">Davide Faconti</author>
1313

14-
<!-- ROS1 dependencies -->
15-
<buildtool_depend condition="$ROS_VERSION == 1">catkin</buildtool_depend>
16-
17-
<depend condition="$ROS_VERSION == 1">rosbag_storage</depend>
18-
<depend condition="$ROS_VERSION == 1">roscpp</depend>
19-
<depend condition="$ROS_VERSION == 1">roscpp_serialization</depend>
20-
<depend condition="$ROS_VERSION == 1">ros_type_introspection</depend>
21-
2214
<!-- ROS2 dependencies -->
23-
<buildtool_depend condition="$ROS_VERSION == 2">ament_cmake</buildtool_depend>
15+
<buildtool_depend>ament_cmake</buildtool_depend>
2416

25-
<depend condition="$ROS_VERSION == 2">ros_environment</depend>
26-
<depend condition="$ROS_VERSION == 2">rclcpp</depend>
27-
<depend condition="$ROS_VERSION == 2">rcpputils</depend>
28-
<depend condition="$ROS_VERSION == 2">rosbag2</depend>
29-
<depend condition="$ROS_VERSION == 2">rosbag2_transport</depend>
17+
<depend>rclcpp</depend>
18+
<depend>rcpputils</depend>
19+
<depend>rosbag2_transport</depend>
3020

3121
<depend>plotjuggler</depend>
3222
<depend>tf2_ros</depend>
@@ -42,7 +32,6 @@
4232

4333
<!-- The export tag contains other, unspecified, tags -->
4434
<export>
45-
<build_type condition="$ROS_VERSION == 1">catkin</build_type>
46-
<build_type condition="$ROS_VERSION == 2">ament_cmake</build_type>
35+
<build_type>ament_cmake</build_type>
4736
</export>
4837
</package>

0 commit comments

Comments
 (0)