From 84ad88febe854d79307ebfa533aac333ed35dc39 Mon Sep 17 00:00:00 2001 From: Alireza Date: Wed, 23 Sep 2020 11:21:20 -0700 Subject: [PATCH 01/12] feat: Built with pcl-1.9.1 --- .gitignore | 6 ++ pcl_ros/CMakeLists.txt | 146 ++++++++++++++++++++--------------------- 2 files changed, 79 insertions(+), 73 deletions(-) diff --git a/.gitignore b/.gitignore index 0d20b6487..f991fce45 100644 --- a/.gitignore +++ b/.gitignore @@ -1 +1,7 @@ *.pyc + +*/.catkin_tools/ +build +devel +install +logs diff --git a/pcl_ros/CMakeLists.txt b/pcl_ros/CMakeLists.txt index 3065f20b6..3ac5cd82d 100644 --- a/pcl_ros/CMakeLists.txt +++ b/pcl_ros/CMakeLists.txt @@ -132,69 +132,69 @@ target_link_libraries(pcl_ros_io pcl_ros_tf ${Boost_LIBRARIES} ${catkin_LIBRARIE class_loader_hide_library_symbols(pcl_ros_io) ## Declare the pcl_ros_features library -add_library(pcl_ros_features - src/pcl_ros/features/feature.cpp +#add_library(pcl_ros_features +# src/pcl_ros/features/feature.cpp # Compilation is much faster if we include all the following CPP files in feature.cpp - src/pcl_ros/features/boundary.cpp - src/pcl_ros/features/fpfh.cpp - src/pcl_ros/features/fpfh_omp.cpp - src/pcl_ros/features/shot.cpp - src/pcl_ros/features/shot_omp.cpp - src/pcl_ros/features/moment_invariants.cpp - src/pcl_ros/features/normal_3d.cpp - src/pcl_ros/features/normal_3d_omp.cpp - src/pcl_ros/features/pfh.cpp - src/pcl_ros/features/principal_curvatures.cpp - src/pcl_ros/features/vfh.cpp -) -target_link_libraries (pcl_ros_features ${Boost_LIBRARIES} ${catkin_LIBRARIES} ${PCL_LIBRARIES}) -add_dependencies(pcl_ros_features ${PROJECT_NAME}_gencfg) -class_loader_hide_library_symbols(pcl_ros_features) +# src/pcl_ros/features/boundary.cpp +# src/pcl_ros/features/fpfh.cpp +# src/pcl_ros/features/fpfh_omp.cpp +# src/pcl_ros/features/shot.cpp +# src/pcl_ros/features/shot_omp.cpp +# src/pcl_ros/features/moment_invariants.cpp +# src/pcl_ros/features/normal_3d.cpp +# src/pcl_ros/features/normal_3d_omp.cpp +# src/pcl_ros/features/pfh.cpp +# src/pcl_ros/features/principal_curvatures.cpp +# src/pcl_ros/features/vfh.cpp +#) +#target_link_libraries (pcl_ros_features ${Boost_LIBRARIES} ${catkin_LIBRARIES} ${PCL_LIBRARIES}) +#add_dependencies(pcl_ros_features ${PROJECT_NAME}_gencfg) +#class_loader_hide_library_symbols(pcl_ros_features) ## Declare library for base filter plugin -add_library(pcl_ros_filter - src/pcl_ros/filters/filter.cpp -) -target_link_libraries(pcl_ros_filter pcl_ros_tf ${Boost_LIBRARIES} ${catkin_LIBRARIES} ${PCL_LIBRARIES}) -add_dependencies(pcl_ros_filter ${PROJECT_NAME}_gencfg) +#add_library(pcl_ros_filter +# src/pcl_ros/filters/filter.cpp +#) +#target_link_libraries(pcl_ros_filter pcl_ros_tf ${Boost_LIBRARIES} ${catkin_LIBRARIES} ${PCL_LIBRARIES}) +#add_dependencies(pcl_ros_filter ${PROJECT_NAME}_gencfg) ## Declare the pcl_ros_filters library -add_library(pcl_ros_filters - src/pcl_ros/filters/extract_indices.cpp - src/pcl_ros/filters/passthrough.cpp - src/pcl_ros/filters/project_inliers.cpp - src/pcl_ros/filters/radius_outlier_removal.cpp - src/pcl_ros/filters/statistical_outlier_removal.cpp - src/pcl_ros/filters/voxel_grid.cpp - src/pcl_ros/filters/crop_box.cpp -) -target_link_libraries(pcl_ros_filters pcl_ros_filter pcl_ros_tf ${Boost_LIBRARIES} ${catkin_LIBRARIES} ${PCL_LIBRARIES}) -add_dependencies(pcl_ros_filters ${PROJECT_NAME}_gencfg) -class_loader_hide_library_symbols(pcl_ros_filters) +#add_library(pcl_ros_filters +# src/pcl_ros/filters/extract_indices.cpp +# src/pcl_ros/filters/passthrough.cpp +# src/pcl_ros/filters/project_inliers.cpp +# src/pcl_ros/filters/radius_outlier_removal.cpp +# src/pcl_ros/filters/statistical_outlier_removal.cpp +# src/pcl_ros/filters/voxel_grid.cpp +# src/pcl_ros/filters/crop_box.cpp +#) +#target_link_libraries(pcl_ros_filters pcl_ros_filter pcl_ros_tf ${Boost_LIBRARIES} ${catkin_LIBRARIES} ${PCL_LIBRARIES}) +#add_dependencies(pcl_ros_filters ${PROJECT_NAME}_gencfg) +#class_loader_hide_library_symbols(pcl_ros_filters) ## Declare the pcl_ros_segmentation library -add_library (pcl_ros_segmentation - src/pcl_ros/segmentation/extract_clusters.cpp - src/pcl_ros/segmentation/extract_polygonal_prism_data.cpp - src/pcl_ros/segmentation/sac_segmentation.cpp - src/pcl_ros/segmentation/segment_differences.cpp - src/pcl_ros/segmentation/segmentation.cpp -) -target_link_libraries(pcl_ros_segmentation pcl_ros_tf ${Boost_LIBRARIES} ${catkin_LIBRARIES} ${PCL_LIBRARIES}) -add_dependencies(pcl_ros_segmentation ${PROJECT_NAME}_gencfg) -class_loader_hide_library_symbols(pcl_ros_segmentation) +#add_library (pcl_ros_segmentation +# src/pcl_ros/segmentation/extract_clusters.cpp +# src/pcl_ros/segmentation/extract_polygonal_prism_data.cpp +# src/pcl_ros/segmentation/sac_segmentation.cpp +# src/pcl_ros/segmentation/segment_differences.cpp +# src/pcl_ros/segmentation/segmentation.cpp +#) +#target_link_libraries(pcl_ros_segmentation pcl_ros_tf ${Boost_LIBRARIES} ${catkin_LIBRARIES} ${PCL_LIBRARIES}) +#add_dependencies(pcl_ros_segmentation ${PROJECT_NAME}_gencfg) +#class_loader_hide_library_symbols(pcl_ros_segmentation) ## Declare the pcl_ros_surface library -add_library (pcl_ros_surface - src/pcl_ros/surface/surface.cpp - # Compilation is much faster if we include all the following CPP files in surface.cpp - src/pcl_ros/surface/convex_hull.cpp - src/pcl_ros/surface/moving_least_squares.cpp -) -target_link_libraries(pcl_ros_surface ${Boost_LIBRARIES} ${catkin_LIBRARIES} ${PCL_LIBRARIES}) -add_dependencies(pcl_ros_surface ${PROJECT_NAME}_gencfg) -class_loader_hide_library_symbols(pcl_ros_surface) +#add_library (pcl_ros_surface +# src/pcl_ros/surface/surface.cpp + # Compilation is much faster if we include all the following CPP files in surface.cpp# +# src/pcl_ros/surface/convex_hull.cpp +# src/pcl_ros/surface/moving_least_squares.cpp +#) +#target_link_libraries(pcl_ros_surface ${Boost_LIBRARIES} ${catkin_LIBRARIES} ${PCL_LIBRARIES}) +#add_dependencies(pcl_ros_surface ${PROJECT_NAME}_gencfg) +#class_loader_hide_library_symbols(pcl_ros_surface) ## Tools @@ -219,23 +219,23 @@ target_link_libraries(convert_pointcloud_to_image ${Boost_LIBRARIES} ${catkin_LI ## Testing ## ############# -if(CATKIN_ENABLE_TESTING) - catkin_download(table_scene_lms400.pcd http://download.ros.org/data/pcl/table_scene_lms400.pcd - DESTINATION ${CATKIN_DEVEL_PREFIX}/${CATKIN_PACKAGE_SHARE_DESTINATION}/samples/data - MD5 546b5b4822fb1de21b0cf83d41ad6683 - ) - add_custom_target(download ALL DEPENDS download_extra_data) +#if(CATKIN_ENABLE_TESTING) +# catkin_download(table_scene_lms400.pcd http://download.ros.org/data/pcl/table_scene_lms400.pcd +# DESTINATION ${CATKIN_DEVEL_PREFIX}/${CATKIN_PACKAGE_SHARE_DESTINATION}/samples/data +# MD5 546b5b4822fb1de21b0cf83d41ad6683 +# ) +# add_custom_target(download ALL DEPENDS download_extra_data) - find_package(rostest REQUIRED) - add_rostest_gtest(test_tf_message_filter_pcl tests/test_tf_message_filter_pcl.launch src/test/test_tf_message_filter_pcl.cpp) - target_link_libraries(test_tf_message_filter_pcl ${catkin_LIBRARIES} ${GTEST_LIBRARIES}) - add_rostest(samples/pcl_ros/features/sample_normal_3d.launch ARGS gui:=false) - add_rostest(samples/pcl_ros/filters/sample_statistical_outlier_removal.launch ARGS gui:=false) - add_rostest(samples/pcl_ros/filters/sample_voxel_grid.launch ARGS gui:=false) - add_rostest(samples/pcl_ros/segmentation/sample_extract_clusters.launch ARGS gui:=false) - add_rostest(samples/pcl_ros/surface/sample_convex_hull.launch ARGS gui:=false) +# find_package(rostest REQUIRED) +# add_rostest_gtest(test_tf_message_filter_pcl tests/test_tf_message_filter_pcl.launch src/test/test_tf_message_filter_pcl.cpp) +# target_link_libraries(test_tf_message_filter_pcl ${catkin_LIBRARIES} ${GTEST_LIBRARIES}) +# add_rostest(samples/pcl_ros/features/sample_normal_3d.launch ARGS gui:=false) +# add_rostest(samples/pcl_ros/filters/sample_statistical_outlier_removal.launch ARGS gui:=false) +# add_rostest(samples/pcl_ros/filters/sample_voxel_grid.launch ARGS gui:=false) +# add_rostest(samples/pcl_ros/segmentation/sample_extract_clusters.launch ARGS gui:=false) +# add_rostest(samples/pcl_ros/surface/sample_convex_hull.launch ARGS gui:=false) -endif(CATKIN_ENABLE_TESTING) +#endif(CATKIN_ENABLE_TESTING) install(DIRECTORY include/${PROJECT_NAME}/ @@ -245,11 +245,11 @@ install( TARGETS pcl_ros_tf pcl_ros_io - pcl_ros_features - pcl_ros_filter - pcl_ros_filters - pcl_ros_surface - pcl_ros_segmentation + #pcl_ros_features + #pcl_ros_filter + #pcl_ros_filters + #pcl_ros_surface + #pcl_ros_segmentation RUNTIME DESTINATION ${CATKIN_GLOBAL_BIN_DESTINATION} ARCHIVE DESTINATION ${CATKIN_PACKAGE_LIB_DESTINATION} LIBRARY DESTINATION ${CATKIN_PACKAGE_LIB_DESTINATION} From 755c5b8b76201540d104038fbbf7a763394428f5 Mon Sep 17 00:00:00 2001 From: Alireza Date: Wed, 23 Sep 2020 13:09:33 -0700 Subject: [PATCH 02/12] feat: added makefile and debian --- Makefile | 14 +++++++++ debian/README.md | 79 ++++++++++++++++++++++++++++++++++++++++++++++++ debian/changelog | 5 +++ debian/compat | 1 + debian/control | 25 +++++++++++++++ debian/files | 1 + debian/rules | 5 +++ debian/watch | 2 ++ 8 files changed, 132 insertions(+) create mode 100644 Makefile create mode 100644 debian/README.md create mode 100644 debian/changelog create mode 100644 debian/compat create mode 100644 debian/control create mode 100644 debian/files create mode 100755 debian/rules create mode 100644 debian/watch diff --git a/Makefile b/Makefile new file mode 100644 index 000000000..93acdc6cf --- /dev/null +++ b/Makefile @@ -0,0 +1,14 @@ +SHELL := /bin/bash + + +default: + source /opt/ros/melodic/setup.bash && catkin_make && catkin_make install + + +install: + echo ALIREZA + cp -r install debian/ros-melodic-am-perception-pcl/usr/ + install -d /github/workspace/install + +clean: + rm -rf ../*.deb diff --git a/debian/README.md b/debian/README.md new file mode 100644 index 000000000..da669d32b --- /dev/null +++ b/debian/README.md @@ -0,0 +1,79 @@ +# Debian packaging for PCL + + +# Requirements + +This version of library has cuda functionlity enabled. Therefore, make sure you have cuda installed on your machine, and the related environment variables are set. The followings are the environment variables for cuda >= 10.0 (copy and paste the followings into your .bashrc) + +export CUDA_HOME=/usr/local/cuda +export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/cuda/lib64:/usr/local/cuda/extras/CUPTI/lib64 +export PATH=$PATH:$CUDA_HOME/bin + +## Generate Binary + + +Prerequisites: + +``` + apt-get -y \ + debhelper +``` + +From the root of the project: +```https://cloudsmith.io/~automodality/repos/release/packages +fakeroot debian/rules binary +``` + +The binary will be produced in the directory above the project root. + +``` +../pcl_1.9.1-1_amd64.deb +``` + +This file should be manually uploaded to the appropriate [cloudsmith repository](https://cloudsmith.io/~automodality/repos/release/packages). + +Versions are maintained in the `debian/changelog` file. Incremental versioning should be used with a hyphen separation keeping the prefix version the same as the PCL tag version. + +``` +pcl (1.9.1-1) unstable; urgency=medium +pcl (1.9.1-2) unstable; urgency=medium +pcl (1.9.1-3) unstable; urgency=medium +... + +pcl (1.11.0-1) unstable; urgency=medium +pcl (1.11.0-2) unstable; urgency=medium +... +``` + +Targeting different CUDA versions? TBD, but likely an additional variant would be added to the version suffix (`1.9.1-cuda-6.2-1`). + +### Clean + +Rebuild debian artifact: + +``` +debian/rules clean +``` + +Recompile: + +``` +rm -rf build +``` + +# How It Works + +The debian packaging mostly scripts the recommended directions for compiling PCL, which stages all build files in the `build` directory. +Instead of using the "Install" on each machine separately, we +package the build artifacts into a standard debian package. Specifically, these directories are included: + +* bin +* lib +* include +* share + +To capture all of the files installed by PCL, we run the install on the build machine and then copy those directories into a staging directory: `debian/pcl`. +The debian artifact is created with the system architecture details in the meta description (AMD/ARM, etc). + +There is no continuous integration because it is not necessary for the few changes we make to these files. + diff --git a/debian/changelog b/debian/changelog new file mode 100644 index 000000000..60265b2fe --- /dev/null +++ b/debian/changelog @@ -0,0 +1,5 @@ +ros-melodic-am-perception-pcl (1.7.1) unstable; urgency=medium + + * Debian packaging of PCL Libarary + + -- AutoModality Sun, 01 Jan 2020 00:00:00 +0000 diff --git a/debian/compat b/debian/compat new file mode 100644 index 000000000..ec635144f --- /dev/null +++ b/debian/compat @@ -0,0 +1 @@ +9 diff --git a/debian/control b/debian/control new file mode 100644 index 000000000..6126604c4 --- /dev/null +++ b/debian/control @@ -0,0 +1,25 @@ +Source: ros-melodic-am-perception-pcl +Section: misc +Priority: extra +Maintainer: info +Build-Depends: debhelper (>= 9.0.0), + pcl, + libeigen3-dev, + ros-melodic-pcl-msgs, + libflann-dev, + ros-melodic-tf, + ros-melodic-tf2-eigen, + + +Homepage: https://github.com/AutoModality/perception_pcl +Standards-Version: 3.9.2 +Package: ros-melodic-am-perception-pcl +Architecture: any +Depends: ${shlibs:Depends}, ${misc:Depends}, + pcl, + libeigen3-dev, + ros-melodic-pcl-msgs, + libflann-dev, + ros-melodic-tf, + ros-melodic-tf2-eigen, +Description: contains packages including pcl_ros and pcl_conversions diff --git a/debian/files b/debian/files new file mode 100644 index 000000000..f1e9e6f94 --- /dev/null +++ b/debian/files @@ -0,0 +1 @@ +ros-melodic-am-perception-pcl_1.7.1_amd64.deb misc extra diff --git a/debian/rules b/debian/rules new file mode 100755 index 000000000..603a8855b --- /dev/null +++ b/debian/rules @@ -0,0 +1,5 @@ +#!/usr/bin/make -f +export DH_VERBOSE = 1 + +%: + dh $@ diff --git a/debian/watch b/debian/watch new file mode 100644 index 000000000..76575dc53 --- /dev/null +++ b/debian/watch @@ -0,0 +1,2 @@ +# You must remove unused comment lines for the released package. +version=3 From fbcf2d59077bda9a3824eba9b260ebf3409c3e08 Mon Sep 17 00:00:00 2001 From: Alireza Date: Wed, 23 Sep 2020 14:32:09 -0700 Subject: [PATCH 03/12] feat: brought back everything --- pcl_ros/CMakeLists.txt | 144 ++++++++++++++++++++--------------------- 1 file changed, 72 insertions(+), 72 deletions(-) diff --git a/pcl_ros/CMakeLists.txt b/pcl_ros/CMakeLists.txt index 3ac5cd82d..a3cdea26b 100644 --- a/pcl_ros/CMakeLists.txt +++ b/pcl_ros/CMakeLists.txt @@ -132,69 +132,69 @@ target_link_libraries(pcl_ros_io pcl_ros_tf ${Boost_LIBRARIES} ${catkin_LIBRARIE class_loader_hide_library_symbols(pcl_ros_io) ## Declare the pcl_ros_features library -#add_library(pcl_ros_features -# src/pcl_ros/features/feature.cpp +add_library(pcl_ros_features + src/pcl_ros/features/feature.cpp # Compilation is much faster if we include all the following CPP files in feature.cpp -# src/pcl_ros/features/boundary.cpp -# src/pcl_ros/features/fpfh.cpp -# src/pcl_ros/features/fpfh_omp.cpp -# src/pcl_ros/features/shot.cpp -# src/pcl_ros/features/shot_omp.cpp -# src/pcl_ros/features/moment_invariants.cpp -# src/pcl_ros/features/normal_3d.cpp -# src/pcl_ros/features/normal_3d_omp.cpp -# src/pcl_ros/features/pfh.cpp -# src/pcl_ros/features/principal_curvatures.cpp -# src/pcl_ros/features/vfh.cpp -#) -#target_link_libraries (pcl_ros_features ${Boost_LIBRARIES} ${catkin_LIBRARIES} ${PCL_LIBRARIES}) -#add_dependencies(pcl_ros_features ${PROJECT_NAME}_gencfg) -#class_loader_hide_library_symbols(pcl_ros_features) + src/pcl_ros/features/boundary.cpp + src/pcl_ros/features/fpfh.cpp + src/pcl_ros/features/fpfh_omp.cpp + src/pcl_ros/features/shot.cpp + src/pcl_ros/features/shot_omp.cpp + src/pcl_ros/features/moment_invariants.cpp + src/pcl_ros/features/normal_3d.cpp + src/pcl_ros/features/normal_3d_omp.cpp + src/pcl_ros/features/pfh.cpp + src/pcl_ros/features/principal_curvatures.cpp + src/pcl_ros/features/vfh.cpp +) +target_link_libraries (pcl_ros_features ${Boost_LIBRARIES} ${catkin_LIBRARIES} ${PCL_LIBRARIES}) +add_dependencies(pcl_ros_features ${PROJECT_NAME}_gencfg) +class_loader_hide_library_symbols(pcl_ros_features) ## Declare library for base filter plugin -#add_library(pcl_ros_filter -# src/pcl_ros/filters/filter.cpp -#) -#target_link_libraries(pcl_ros_filter pcl_ros_tf ${Boost_LIBRARIES} ${catkin_LIBRARIES} ${PCL_LIBRARIES}) -#add_dependencies(pcl_ros_filter ${PROJECT_NAME}_gencfg) +add_library(pcl_ros_filter + src/pcl_ros/filters/filter.cpp +) +target_link_libraries(pcl_ros_filter pcl_ros_tf ${Boost_LIBRARIES} ${catkin_LIBRARIES} ${PCL_LIBRARIES}) +add_dependencies(pcl_ros_filter ${PROJECT_NAME}_gencfg) ## Declare the pcl_ros_filters library -#add_library(pcl_ros_filters -# src/pcl_ros/filters/extract_indices.cpp -# src/pcl_ros/filters/passthrough.cpp -# src/pcl_ros/filters/project_inliers.cpp -# src/pcl_ros/filters/radius_outlier_removal.cpp -# src/pcl_ros/filters/statistical_outlier_removal.cpp -# src/pcl_ros/filters/voxel_grid.cpp -# src/pcl_ros/filters/crop_box.cpp -#) -#target_link_libraries(pcl_ros_filters pcl_ros_filter pcl_ros_tf ${Boost_LIBRARIES} ${catkin_LIBRARIES} ${PCL_LIBRARIES}) -#add_dependencies(pcl_ros_filters ${PROJECT_NAME}_gencfg) -#class_loader_hide_library_symbols(pcl_ros_filters) +add_library(pcl_ros_filters + src/pcl_ros/filters/extract_indices.cpp + src/pcl_ros/filters/passthrough.cpp + src/pcl_ros/filters/project_inliers.cpp + src/pcl_ros/filters/radius_outlier_removal.cpp + src/pcl_ros/filters/statistical_outlier_removal.cpp + src/pcl_ros/filters/voxel_grid.cpp + src/pcl_ros/filters/crop_box.cpp +) +target_link_libraries(pcl_ros_filters pcl_ros_filter pcl_ros_tf ${Boost_LIBRARIES} ${catkin_LIBRARIES} ${PCL_LIBRARIES}) +add_dependencies(pcl_ros_filters ${PROJECT_NAME}_gencfg) +class_loader_hide_library_symbols(pcl_ros_filters) ## Declare the pcl_ros_segmentation library -#add_library (pcl_ros_segmentation -# src/pcl_ros/segmentation/extract_clusters.cpp -# src/pcl_ros/segmentation/extract_polygonal_prism_data.cpp -# src/pcl_ros/segmentation/sac_segmentation.cpp -# src/pcl_ros/segmentation/segment_differences.cpp -# src/pcl_ros/segmentation/segmentation.cpp -#) -#target_link_libraries(pcl_ros_segmentation pcl_ros_tf ${Boost_LIBRARIES} ${catkin_LIBRARIES} ${PCL_LIBRARIES}) -#add_dependencies(pcl_ros_segmentation ${PROJECT_NAME}_gencfg) -#class_loader_hide_library_symbols(pcl_ros_segmentation) +add_library (pcl_ros_segmentation + src/pcl_ros/segmentation/extract_clusters.cpp + src/pcl_ros/segmentation/extract_polygonal_prism_data.cpp + src/pcl_ros/segmentation/sac_segmentation.cpp + src/pcl_ros/segmentation/segment_differences.cpp + src/pcl_ros/segmentation/segmentation.cpp +) +target_link_libraries(pcl_ros_segmentation pcl_ros_tf ${Boost_LIBRARIES} ${catkin_LIBRARIES} ${PCL_LIBRARIES}) +add_dependencies(pcl_ros_segmentation ${PROJECT_NAME}_gencfg) +class_loader_hide_library_symbols(pcl_ros_segmentation) ## Declare the pcl_ros_surface library -#add_library (pcl_ros_surface -# src/pcl_ros/surface/surface.cpp +add_library (pcl_ros_surface + src/pcl_ros/surface/surface.cpp # Compilation is much faster if we include all the following CPP files in surface.cpp# -# src/pcl_ros/surface/convex_hull.cpp -# src/pcl_ros/surface/moving_least_squares.cpp -#) -#target_link_libraries(pcl_ros_surface ${Boost_LIBRARIES} ${catkin_LIBRARIES} ${PCL_LIBRARIES}) -#add_dependencies(pcl_ros_surface ${PROJECT_NAME}_gencfg) -#class_loader_hide_library_symbols(pcl_ros_surface) + src/pcl_ros/surface/convex_hull.cpp + src/pcl_ros/surface/moving_least_squares.cpp +) +target_link_libraries(pcl_ros_surface ${Boost_LIBRARIES} ${catkin_LIBRARIES} ${PCL_LIBRARIES}) +add_dependencies(pcl_ros_surface ${PROJECT_NAME}_gencfg) +class_loader_hide_library_symbols(pcl_ros_surface) ## Tools @@ -219,23 +219,23 @@ target_link_libraries(convert_pointcloud_to_image ${Boost_LIBRARIES} ${catkin_LI ## Testing ## ############# -#if(CATKIN_ENABLE_TESTING) -# catkin_download(table_scene_lms400.pcd http://download.ros.org/data/pcl/table_scene_lms400.pcd -# DESTINATION ${CATKIN_DEVEL_PREFIX}/${CATKIN_PACKAGE_SHARE_DESTINATION}/samples/data -# MD5 546b5b4822fb1de21b0cf83d41ad6683 -# ) -# add_custom_target(download ALL DEPENDS download_extra_data) +if(CATKIN_ENABLE_TESTING) + catkin_download(table_scene_lms400.pcd http://download.ros.org/data/pcl/table_scene_lms400.pcd + DESTINATION ${CATKIN_DEVEL_PREFIX}/${CATKIN_PACKAGE_SHARE_DESTINATION}/samples/data + MD5 546b5b4822fb1de21b0cf83d41ad6683 + ) + add_custom_target(download ALL DEPENDS download_extra_data) -# find_package(rostest REQUIRED) -# add_rostest_gtest(test_tf_message_filter_pcl tests/test_tf_message_filter_pcl.launch src/test/test_tf_message_filter_pcl.cpp) -# target_link_libraries(test_tf_message_filter_pcl ${catkin_LIBRARIES} ${GTEST_LIBRARIES}) -# add_rostest(samples/pcl_ros/features/sample_normal_3d.launch ARGS gui:=false) -# add_rostest(samples/pcl_ros/filters/sample_statistical_outlier_removal.launch ARGS gui:=false) -# add_rostest(samples/pcl_ros/filters/sample_voxel_grid.launch ARGS gui:=false) -# add_rostest(samples/pcl_ros/segmentation/sample_extract_clusters.launch ARGS gui:=false) -# add_rostest(samples/pcl_ros/surface/sample_convex_hull.launch ARGS gui:=false) + find_package(rostest REQUIRED) + add_rostest_gtest(test_tf_message_filter_pcl tests/test_tf_message_filter_pcl.launch src/test/test_tf_message_filter_pcl.cpp) + target_link_libraries(test_tf_message_filter_pcl ${catkin_LIBRARIES} ${GTEST_LIBRARIES}) + add_rostest(samples/pcl_ros/features/sample_normal_3d.launch ARGS gui:=false) + add_rostest(samples/pcl_ros/filters/sample_statistical_outlier_removal.launch ARGS gui:=false) + add_rostest(samples/pcl_ros/filters/sample_voxel_grid.launch ARGS gui:=false) + add_rostest(samples/pcl_ros/segmentation/sample_extract_clusters.launch ARGS gui:=false) + add_rostest(samples/pcl_ros/surface/sample_convex_hull.launch ARGS gui:=false) -#endif(CATKIN_ENABLE_TESTING) +endif(CATKIN_ENABLE_TESTING) install(DIRECTORY include/${PROJECT_NAME}/ @@ -245,11 +245,11 @@ install( TARGETS pcl_ros_tf pcl_ros_io - #pcl_ros_features - #pcl_ros_filter - #pcl_ros_filters - #pcl_ros_surface - #pcl_ros_segmentation + pcl_ros_features + pcl_ros_filter + pcl_ros_filters + pcl_ros_surface + pcl_ros_segmentation RUNTIME DESTINATION ${CATKIN_GLOBAL_BIN_DESTINATION} ARCHIVE DESTINATION ${CATKIN_PACKAGE_LIB_DESTINATION} LIBRARY DESTINATION ${CATKIN_PACKAGE_LIB_DESTINATION} From adc3d082b35e5fa872ac336f74895693f6671d8e Mon Sep 17 00:00:00 2001 From: Alireza Date: Wed, 23 Sep 2020 16:21:30 -0700 Subject: [PATCH 04/12] feat: few libraries are removed --- pcl_ros/CMakeLists.txt | 106 ++++++++++++++++++++--------------------- 1 file changed, 53 insertions(+), 53 deletions(-) diff --git a/pcl_ros/CMakeLists.txt b/pcl_ros/CMakeLists.txt index a3cdea26b..3f4289148 100644 --- a/pcl_ros/CMakeLists.txt +++ b/pcl_ros/CMakeLists.txt @@ -132,24 +132,24 @@ target_link_libraries(pcl_ros_io pcl_ros_tf ${Boost_LIBRARIES} ${catkin_LIBRARIE class_loader_hide_library_symbols(pcl_ros_io) ## Declare the pcl_ros_features library -add_library(pcl_ros_features - src/pcl_ros/features/feature.cpp - # Compilation is much faster if we include all the following CPP files in feature.cpp - src/pcl_ros/features/boundary.cpp - src/pcl_ros/features/fpfh.cpp - src/pcl_ros/features/fpfh_omp.cpp - src/pcl_ros/features/shot.cpp - src/pcl_ros/features/shot_omp.cpp - src/pcl_ros/features/moment_invariants.cpp - src/pcl_ros/features/normal_3d.cpp - src/pcl_ros/features/normal_3d_omp.cpp - src/pcl_ros/features/pfh.cpp - src/pcl_ros/features/principal_curvatures.cpp - src/pcl_ros/features/vfh.cpp -) -target_link_libraries (pcl_ros_features ${Boost_LIBRARIES} ${catkin_LIBRARIES} ${PCL_LIBRARIES}) -add_dependencies(pcl_ros_features ${PROJECT_NAME}_gencfg) -class_loader_hide_library_symbols(pcl_ros_features) +#add_library(pcl_ros_features +# src/pcl_ros/features/feature.cpp +# # Compilation is much faster if we include all the following CPP files in feature.cpp +# src/pcl_ros/features/boundary.cpp +# src/pcl_ros/features/fpfh.cpp +# src/pcl_ros/features/fpfh_omp.cpp +# src/pcl_ros/features/shot.cpp +# src/pcl_ros/features/shot_omp.cpp +# src/pcl_ros/features/moment_invariants.cpp +# src/pcl_ros/features/normal_3d.cpp +# src/pcl_ros/features/normal_3d_omp.cpp +# src/pcl_ros/features/pfh.cpp +# src/pcl_ros/features/principal_curvatures.cpp +# src/pcl_ros/features/vfh.cpp +#) +#target_link_libraries (pcl_ros_features ${Boost_LIBRARIES} ${catkin_LIBRARIES} ${PCL_LIBRARIES}) +#add_dependencies(pcl_ros_features ${PROJECT_NAME}_gencfg) +#class_loader_hide_library_symbols(pcl_ros_features) ## Declare library for base filter plugin @@ -160,41 +160,41 @@ target_link_libraries(pcl_ros_filter pcl_ros_tf ${Boost_LIBRARIES} ${catkin_LIBR add_dependencies(pcl_ros_filter ${PROJECT_NAME}_gencfg) ## Declare the pcl_ros_filters library -add_library(pcl_ros_filters - src/pcl_ros/filters/extract_indices.cpp - src/pcl_ros/filters/passthrough.cpp - src/pcl_ros/filters/project_inliers.cpp - src/pcl_ros/filters/radius_outlier_removal.cpp - src/pcl_ros/filters/statistical_outlier_removal.cpp - src/pcl_ros/filters/voxel_grid.cpp - src/pcl_ros/filters/crop_box.cpp -) -target_link_libraries(pcl_ros_filters pcl_ros_filter pcl_ros_tf ${Boost_LIBRARIES} ${catkin_LIBRARIES} ${PCL_LIBRARIES}) -add_dependencies(pcl_ros_filters ${PROJECT_NAME}_gencfg) -class_loader_hide_library_symbols(pcl_ros_filters) +#add_library(pcl_ros_filters +# src/pcl_ros/filters/extract_indices.cpp +# src/pcl_ros/filters/passthrough.cpp +# src/pcl_ros/filters/project_inliers.cpp +# src/pcl_ros/filters/radius_outlier_removal.cpp +# src/pcl_ros/filters/statistical_outlier_removal.cpp +# src/pcl_ros/filters/voxel_grid.cpp +# src/pcl_ros/filters/crop_box.cpp +#) +#target_link_libraries(pcl_ros_filters pcl_ros_filter pcl_ros_tf ${Boost_LIBRARIES} ${catkin_LIBRARIES} ${PCL_LIBRARIES}) +#add_dependencies(pcl_ros_filters ${PROJECT_NAME}_gencfg) +#class_loader_hide_library_symbols(pcl_ros_filters) ## Declare the pcl_ros_segmentation library -add_library (pcl_ros_segmentation - src/pcl_ros/segmentation/extract_clusters.cpp - src/pcl_ros/segmentation/extract_polygonal_prism_data.cpp - src/pcl_ros/segmentation/sac_segmentation.cpp - src/pcl_ros/segmentation/segment_differences.cpp - src/pcl_ros/segmentation/segmentation.cpp -) -target_link_libraries(pcl_ros_segmentation pcl_ros_tf ${Boost_LIBRARIES} ${catkin_LIBRARIES} ${PCL_LIBRARIES}) -add_dependencies(pcl_ros_segmentation ${PROJECT_NAME}_gencfg) -class_loader_hide_library_symbols(pcl_ros_segmentation) +#add_library (pcl_ros_segmentation +# src/pcl_ros/segmentation/extract_clusters.cpp +# src/pcl_ros/segmentation/extract_polygonal_prism_data.cpp +# src/pcl_ros/segmentation/sac_segmentation.cpp +# src/pcl_ros/segmentation/segment_differences.cpp +# src/pcl_ros/segmentation/segmentation.cpp +#) +#target_link_libraries(pcl_ros_segmentation pcl_ros_tf ${Boost_LIBRARIES} ${catkin_LIBRARIES} ${PCL_LIBRARIES}) +#add_dependencies(pcl_ros_segmentation ${PROJECT_NAME}_gencfg) +#class_loader_hide_library_symbols(pcl_ros_segmentation) ## Declare the pcl_ros_surface library -add_library (pcl_ros_surface - src/pcl_ros/surface/surface.cpp - # Compilation is much faster if we include all the following CPP files in surface.cpp# - src/pcl_ros/surface/convex_hull.cpp - src/pcl_ros/surface/moving_least_squares.cpp -) -target_link_libraries(pcl_ros_surface ${Boost_LIBRARIES} ${catkin_LIBRARIES} ${PCL_LIBRARIES}) -add_dependencies(pcl_ros_surface ${PROJECT_NAME}_gencfg) -class_loader_hide_library_symbols(pcl_ros_surface) +#add_library (pcl_ros_surface +# src/pcl_ros/surface/surface.cpp +# # Compilation is much faster if we include all the following CPP files in surface.cpp# +# src/pcl_ros/surface/convex_hull.cpp +# src/pcl_ros/surface/moving_least_squares.cpp +#) +#target_link_libraries(pcl_ros_surface ${Boost_LIBRARIES} ${catkin_LIBRARIES} ${PCL_LIBRARIES}) +#add_dependencies(pcl_ros_surface ${PROJECT_NAME}_gencfg) +#class_loader_hide_library_symbols(pcl_ros_surface) ## Tools @@ -245,11 +245,11 @@ install( TARGETS pcl_ros_tf pcl_ros_io - pcl_ros_features +# pcl_ros_features pcl_ros_filter - pcl_ros_filters - pcl_ros_surface - pcl_ros_segmentation +# pcl_ros_filters +# pcl_ros_surface +# pcl_ros_segmentation RUNTIME DESTINATION ${CATKIN_GLOBAL_BIN_DESTINATION} ARCHIVE DESTINATION ${CATKIN_PACKAGE_LIB_DESTINATION} LIBRARY DESTINATION ${CATKIN_PACKAGE_LIB_DESTINATION} From 6c68a2724586207b13d8f1cab74068ab9a3f5569 Mon Sep 17 00:00:00 2001 From: Aaron Roller Date: Thu, 24 Sep 2020 10:52:48 -0700 Subject: [PATCH 05/12] build: added debian/rules binary AM-493/pcl-1.9.1 --- .gitignore | 6 ++++++ CMakeLists.txt | 1 + Makefile | 18 ++++++++++++------ debian/changelog | 6 +----- debian/control | 1 + debian/files | 3 ++- debian/rules | 11 ++++++++++- 7 files changed, 33 insertions(+), 13 deletions(-) create mode 120000 CMakeLists.txt diff --git a/.gitignore b/.gitignore index f991fce45..f6d894b97 100644 --- a/.gitignore +++ b/.gitignore @@ -5,3 +5,9 @@ build devel install logs +debian/ros-melodic-am-perception-pcl +src +.catkin_workspace +*.deb +*.log +*.substvars \ No newline at end of file diff --git a/CMakeLists.txt b/CMakeLists.txt new file mode 120000 index 000000000..66dd650ac --- /dev/null +++ b/CMakeLists.txt @@ -0,0 +1 @@ +/opt/ros/melodic/share/catkin/cmake/toplevel.cmake \ No newline at end of file diff --git a/Makefile b/Makefile index 93acdc6cf..aff890dc9 100644 --- a/Makefile +++ b/Makefile @@ -1,14 +1,20 @@ SHELL := /bin/bash +SRC_DIR=src default: - source /opt/ros/melodic/setup.bash && catkin_make && catkin_make install + mkdir -p ${SRC_DIR} + + cp -rf pcl_conversions ${SRC_DIR} + cp -rf pcl_ros ${SRC_DIR} + cp -rf perception_pcl ${SRC_DIR} + mv -f CMakeLists.txt ${SRC_DIR} + source /opt/ros/melodic/setup.bash && catkin_make && catkin_make install -install: - echo ALIREZA - cp -r install debian/ros-melodic-am-perception-pcl/usr/ - install -d /github/workspace/install clean: - rm -rf ../*.deb + mv -f ${SRC_DIR}/CMakeLists.txt . + rm -rf ${SRC_DIR} + rm -rf ../*.*deb + rm -rf build devel install \ No newline at end of file diff --git a/debian/changelog b/debian/changelog index 60265b2fe..7e1750973 100644 --- a/debian/changelog +++ b/debian/changelog @@ -1,5 +1 @@ -ros-melodic-am-perception-pcl (1.7.1) unstable; urgency=medium - - * Debian packaging of PCL Libarary - - -- AutoModality Sun, 01 Jan 2020 00:00:00 +0000 +ros-melodic-am-perception-pcl (0.20200924173146) unstable; urgency=medium diff --git a/debian/control b/debian/control index 6126604c4..07d935560 100644 --- a/debian/control +++ b/debian/control @@ -22,4 +22,5 @@ Depends: ${shlibs:Depends}, ${misc:Depends}, libflann-dev, ros-melodic-tf, ros-melodic-tf2-eigen, +Replaces: ros-melodic-pcl-conversion, ros-melodic-pcl-ros Description: contains packages including pcl_ros and pcl_conversions diff --git a/debian/files b/debian/files index f1e9e6f94..6dc7520b6 100644 --- a/debian/files +++ b/debian/files @@ -1 +1,2 @@ -ros-melodic-am-perception-pcl_1.7.1_amd64.deb misc extra +ros-melodic-am-perception-pcl-dbgsym_0.20200924173146_amd64.ddeb debug optional +ros-melodic-am-perception-pcl_0.20200924173146_amd64.deb misc extra diff --git a/debian/rules b/debian/rules index 603a8855b..c127f17b9 100755 --- a/debian/rules +++ b/debian/rules @@ -1,5 +1,14 @@ #!/usr/bin/make -f -export DH_VERBOSE = 1 +#export DH_VERBOSE = 1 + +INSTALL_DIR=debian/ros-melodic-am-perception-pcl/opt/ros/melodic %: dh $@ + +override_dh_auto_install: + # for some reason, install: in the makefile isn't being called??? + mkdir -p ${INSTALL_DIR} + cp -r install/include ${INSTALL_DIR} + cp -r install/lib ${INSTALL_DIR} + cp -r install/share ${INSTALL_DIR} From 309e48539a0ec0a6e0a322216c91f1cb0cebca84 Mon Sep 17 00:00:00 2001 From: Aaron Roller Date: Thu, 24 Sep 2020 10:56:59 -0700 Subject: [PATCH 06/12] ci: added package build AM-493/pcl-1.9.1 --- .github/workflows/package.yml | 47 +++++++++++++++++++++++++++++++++++ 1 file changed, 47 insertions(+) create mode 100644 .github/workflows/package.yml diff --git a/.github/workflows/package.yml b/.github/workflows/package.yml new file mode 100644 index 000000000..c82eae7c0 --- /dev/null +++ b/.github/workflows/package.yml @@ -0,0 +1,47 @@ +name: Release Candidate +on: + push: + branches-ignore: + - master +jobs: + package: + runs-on: ${{ matrix.os }} + strategy: + matrix: + os: [[x64, self-hosted,linux,build], [arm64,self-hosted,linux, build]] + fail-fast: false + steps: + - uses: AutoModality/action-clean@v1.1.0 + - uses: actions/checkout@v2 + - uses: rlespinasse/github-slug-action@2.0.0 # for GITHUB_REF_SLUG + - name: Package + id: package + uses: AutoModality/action-package-debian-ros@v4 + with: + branch: ${{ env.GITHUB_REF_SLUG }} + build-number: ${{ github.run_number }} + release-repo-entitlement: ${{ secrets.CLOUDSMITH_READ_RELEASE_ENTITLEMENT }} + - name: The generated package + run: echo "The artifact is ${{ steps.package.outputs.artifact-path }}" + - name: Deploy + id: deploy + uses: AutoModality/action-cloudsmith@0.2.0 + with: + api-key: ${{ secrets.CLOUDSMITH_API_KEY }} + command: 'push' + format: 'deb' + owner: 'automodality' + repo: 'dev' + distro: 'ubuntu' + release: 'bionic' + file: '${{ steps.package.outputs.artifact-path }}' + draft-pr: + runs-on: ubuntu-18.04 + needs: package + steps: + - uses: actions/checkout@v2 + - name: Draft a Pull Request + uses: repo-sync/pull-request@v2 + with: + pr_draft: true + github_token: ${{ secrets.GITHUB_TOKEN }} From 2120ab5df580725bde6f467fa03bd93c6a45ed1d Mon Sep 17 00:00:00 2001 From: Aaron Roller Date: Thu, 24 Sep 2020 11:08:40 -0700 Subject: [PATCH 07/12] ci: making version number consistent across arch AM-493/pcl-1.9.1 --- .github/workflows/package.yml | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/.github/workflows/package.yml b/.github/workflows/package.yml index c82eae7c0..d473b742d 100644 --- a/.github/workflows/package.yml +++ b/.github/workflows/package.yml @@ -18,8 +18,7 @@ jobs: id: package uses: AutoModality/action-package-debian-ros@v4 with: - branch: ${{ env.GITHUB_REF_SLUG }} - build-number: ${{ github.run_number }} + version: ${{ env.GITHUB_REF_SLUG }}-${{ github.run_number }} release-repo-entitlement: ${{ secrets.CLOUDSMITH_READ_RELEASE_ENTITLEMENT }} - name: The generated package run: echo "The artifact is ${{ steps.package.outputs.artifact-path }}" From 38e08261f6793b7582ec0dfe4aee82dd59e0464f Mon Sep 17 00:00:00 2001 From: Aaron Roller Date: Thu, 24 Sep 2020 11:11:09 -0700 Subject: [PATCH 08/12] hard-coded perception_pcl version AM-493/pcl-1.9.1 --- .github/workflows/package.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/package.yml b/.github/workflows/package.yml index d473b742d..d3d3938d9 100644 --- a/.github/workflows/package.yml +++ b/.github/workflows/package.yml @@ -18,7 +18,7 @@ jobs: id: package uses: AutoModality/action-package-debian-ros@v4 with: - version: ${{ env.GITHUB_REF_SLUG }}-${{ github.run_number }} + version: 1.7.1-${{ github.run_number }} release-repo-entitlement: ${{ secrets.CLOUDSMITH_READ_RELEASE_ENTITLEMENT }} - name: The generated package run: echo "The artifact is ${{ steps.package.outputs.artifact-path }}" From 04bd76da30b8127b5b1a572f1e10b15e3ad015a4 Mon Sep 17 00:00:00 2001 From: Aaron Roller Date: Thu, 24 Sep 2020 11:42:00 -0700 Subject: [PATCH 09/12] docs: referenced slack conversation for instructions AM-493/pcl-1.9.1 --- debian/README.md | 80 ++---------------------------------------------- 1 file changed, 3 insertions(+), 77 deletions(-) diff --git a/debian/README.md b/debian/README.md index da669d32b..4c922c761 100644 --- a/debian/README.md +++ b/debian/README.md @@ -1,79 +1,5 @@ -# Debian packaging for PCL +# Debian packaging for perception_pcl +Limited support for building since the repo does not change often. -# Requirements - -This version of library has cuda functionlity enabled. Therefore, make sure you have cuda installed on your machine, and the related environment variables are set. The followings are the environment variables for cuda >= 10.0 (copy and paste the followings into your .bashrc) - -export CUDA_HOME=/usr/local/cuda -export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/cuda/lib64:/usr/local/cuda/extras/CUPTI/lib64 -export PATH=$PATH:$CUDA_HOME/bin - -## Generate Binary - - -Prerequisites: - -``` - apt-get -y \ - debhelper -``` - -From the root of the project: -```https://cloudsmith.io/~automodality/repos/release/packages -fakeroot debian/rules binary -``` - -The binary will be produced in the directory above the project root. - -``` -../pcl_1.9.1-1_amd64.deb -``` - -This file should be manually uploaded to the appropriate [cloudsmith repository](https://cloudsmith.io/~automodality/repos/release/packages). - -Versions are maintained in the `debian/changelog` file. Incremental versioning should be used with a hyphen separation keeping the prefix version the same as the PCL tag version. - -``` -pcl (1.9.1-1) unstable; urgency=medium -pcl (1.9.1-2) unstable; urgency=medium -pcl (1.9.1-3) unstable; urgency=medium -... - -pcl (1.11.0-1) unstable; urgency=medium -pcl (1.11.0-2) unstable; urgency=medium -... -``` - -Targeting different CUDA versions? TBD, but likely an additional variant would be added to the version suffix (`1.9.1-cuda-6.2-1`). - -### Clean - -Rebuild debian artifact: - -``` -debian/rules clean -``` - -Recompile: - -``` -rm -rf build -``` - -# How It Works - -The debian packaging mostly scripts the recommended directions for compiling PCL, which stages all build files in the `build` directory. -Instead of using the "Install" on each machine separately, we -package the build artifacts into a standard debian package. Specifically, these directories are included: - -* bin -* lib -* include -* share - -To capture all of the files installed by PCL, we run the install on the build machine and then copy those directories into a staging directory: `debian/pcl`. -The debian artifact is created with the system architecture details in the meta description (AMD/ARM, etc). - -There is no continuous integration because it is not necessary for the few changes we make to these files. - +See [slack](https://automodality.slack.com/archives/C011WK68QCR/p1600972629000100) conversation for more information. \ No newline at end of file From f7aed887d72b00960b001496e557dcc663411529 Mon Sep 17 00:00:00 2001 From: Aaron Roller Date: Thu, 24 Sep 2020 18:08:55 -0700 Subject: [PATCH 10/12] fix: replaces package misspelling causing conflicts --- debian/control | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/debian/control b/debian/control index 07d935560..bb292368a 100644 --- a/debian/control +++ b/debian/control @@ -22,5 +22,5 @@ Depends: ${shlibs:Depends}, ${misc:Depends}, libflann-dev, ros-melodic-tf, ros-melodic-tf2-eigen, -Replaces: ros-melodic-pcl-conversion, ros-melodic-pcl-ros +Replaces: ros-melodic-pcl-conversions, ros-melodic-pcl-ros Description: contains packages including pcl_ros and pcl_conversions From 609047a923b70c9cdb5153c48ca862f8f4edf390 Mon Sep 17 00:00:00 2001 From: Aaron Roller Date: Thu, 24 Sep 2020 18:13:50 -0700 Subject: [PATCH 11/12] Replaces: ros-melodic-pcl-conversions, ros-melodic-pcl-ros --- debian/README.md | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/debian/README.md b/debian/README.md index 4c922c761..4028111d2 100644 --- a/debian/README.md +++ b/debian/README.md @@ -2,4 +2,6 @@ Limited support for building since the repo does not change often. -See [slack](https://automodality.slack.com/archives/C011WK68QCR/p1600972629000100) conversation for more information. \ No newline at end of file +See [slack](https://automodality.slack.com/archives/C011WK68QCR/p1600972629000100) conversation for more information. + +Replaces: ros-melodic-pcl-conversions, ros-melodic-pcl-ros From c70380836c3695049fc63d8ce25c92827eac558c Mon Sep 17 00:00:00 2001 From: Aaron Roller Date: Thu, 24 Sep 2020 18:28:09 -0700 Subject: [PATCH 12/12] fix: must also replace ros-melodic-perception-pcl --- debian/control | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/debian/control b/debian/control index bb292368a..507f8a9df 100644 --- a/debian/control +++ b/debian/control @@ -22,5 +22,5 @@ Depends: ${shlibs:Depends}, ${misc:Depends}, libflann-dev, ros-melodic-tf, ros-melodic-tf2-eigen, -Replaces: ros-melodic-pcl-conversions, ros-melodic-pcl-ros +Replaces: ros-melodic-pcl-conversions, ros-melodic-pcl-ros, ros-melodic-perception-pcl Description: contains packages including pcl_ros and pcl_conversions