From 7811ac619f0d88e466e7706583a471e6acaa72de Mon Sep 17 00:00:00 2001 From: Jamie Snape Date: Thu, 30 May 2019 12:18:45 -0400 Subject: [PATCH 01/23] Do not use std::random_shuffle with C++11 or above --- octomap/src/Pointcloud.cpp | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/octomap/src/Pointcloud.cpp b/octomap/src/Pointcloud.cpp index 09349db0..74127399 100644 --- a/octomap/src/Pointcloud.cpp +++ b/octomap/src/Pointcloud.cpp @@ -38,6 +38,9 @@ #if defined(_MSC_VER) || defined(_LIBCPP_VERSION) #include + #if __cplusplus > 199711L + #include + #endif #else #include #endif @@ -210,7 +213,13 @@ namespace octomap { #if defined(_MSC_VER) || defined(_LIBCPP_VERSION) samples.reserve(this->size()); samples.insert(samples.end(), this->begin(), this->end()); - std::random_shuffle(samples.begin(), samples.end()); + #if __cplusplus > 199711L + std::random_device r; + std::mt19937 urbg(r()); + std::shuffle(samples.begin(), samples.end(), urbg); + #else + std::random_shuffle(samples.begin(), samples.end()); + #endif samples.resize(num_samples); #else random_sample_n(begin(), end(), std::back_insert_iterator(samples), num_samples); From c921775fbe57980048309c086afa20a0b5a895fe Mon Sep 17 00:00:00 2001 From: Justin Carpentier Date: Thu, 15 Aug 2019 20:09:30 +0200 Subject: [PATCH 02/23] Fix issue with byte typedef when compiling using C++17 (#240) byte is defined in since C++17 --- octomap/src/binvox2bt.cpp | 4 +++- octomap/src/edit_octree.cpp | 4 +++- 2 files changed, 6 insertions(+), 2 deletions(-) diff --git a/octomap/src/binvox2bt.cpp b/octomap/src/binvox2bt.cpp index 6030af15..1e6358f8 100644 --- a/octomap/src/binvox2bt.cpp +++ b/octomap/src/binvox2bt.cpp @@ -56,7 +56,9 @@ using namespace std; using namespace octomap; -typedef unsigned char byte; +#if __cplusplus < 201500L + typedef unsigned char byte; +#endif int main(int argc, char **argv) { diff --git a/octomap/src/edit_octree.cpp b/octomap/src/edit_octree.cpp index 75d3fa3a..cedadd64 100644 --- a/octomap/src/edit_octree.cpp +++ b/octomap/src/edit_octree.cpp @@ -41,7 +41,9 @@ using namespace std; using namespace octomap; -typedef unsigned char byte; +#if __cplusplus < 201500L + typedef unsigned char byte; +#endif int main(int argc, char **argv) { From a95100f6dbc3424f47bce741dcab21ec044b7cdb Mon Sep 17 00:00:00 2001 From: Wolfgang Merkt Date: Sat, 23 Nov 2019 20:40:12 +0000 Subject: [PATCH 03/23] Update package.xml to remove catkin dependency (#263) Improves ROS2 compatibility with updated package.xml format --- dynamicEDT3D/package.xml | 11 +++-------- octomap/package.xml | 9 ++++----- octovis/package.xml | 20 +++++++------------- 3 files changed, 14 insertions(+), 26 deletions(-) diff --git a/dynamicEDT3D/package.xml b/dynamicEDT3D/package.xml index bb2a636e..d7773599 100644 --- a/dynamicEDT3D/package.xml +++ b/dynamicEDT3D/package.xml @@ -1,25 +1,20 @@ - + dynamic_edt_3d 1.9.0 The dynamicEDT3D library implements an inrementally updatable Euclidean distance transform (EDT) in 3D. It comes with a wrapper to use the OctoMap 3D representation and hooks into the change detection of the OctoMap library to propagate changes to the EDT. Christoph Sprunk Christoph Sprunk + Wolfgang Merkt BSD http://octomap.github.io https://github.com/OctoMap/octomap/issues - octomap - - octomap - catkin - + octomap cmake - cmake - diff --git a/octomap/package.xml b/octomap/package.xml index 28ffe778..d87b9b0e 100644 --- a/octomap/package.xml +++ b/octomap/package.xml @@ -1,4 +1,4 @@ - + octomap 1.9.0 The OctoMap library implements a 3D occupancy grid mapping approach, providing data structures and mapping algorithms in C++. The map implementation is based on an octree. See @@ -7,16 +7,15 @@ Kai M. Wurm Armin Hornung Armin Hornung + Wolfgang Merkt BSD http://octomap.github.io https://github.com/OctoMap/octomap/issues - - catkin + cmake - + cmake - diff --git a/octovis/package.xml b/octovis/package.xml index c95b9e80..5d08dc45 100644 --- a/octovis/package.xml +++ b/octovis/package.xml @@ -1,4 +1,4 @@ - + octovis 1.9.0 octovis is visualization tool for the OctoMap library based on Qt and libQGLViewer. See @@ -7,27 +7,21 @@ Kai M. Wurm Armin Hornung Armin Hornung + Wolfgang Merkt GPLv2 http://octomap.github.io https://github.com/OctoMap/octomap/issues - - catkin cmake cmake - octomap - libqglviewer-qt4-dev - libqt4-dev - libqt4-opengl-dev - - octomap - libqglviewer-qt4 - libqtgui4 - libqt4-opengl - + octomap + libqglviewer-qt4 + libqt4-dev + libqt4-opengl-dev + libqtgui4 From 046920afd5e25fcf40aacaa73738403afe4c320b Mon Sep 17 00:00:00 2001 From: Armin Hornung Date: Sat, 23 Nov 2019 21:55:54 +0100 Subject: [PATCH 04/23] Version 1.9.1 release --- dynamicEDT3D/CMakeLists.txt | 2 +- dynamicEDT3D/package.xml | 2 +- octomap/CHANGELOG.txt | 4 ++++ octomap/CMakeLists.txt | 2 +- octomap/package.xml | 2 +- octovis/CMakeLists.txt | 2 +- octovis/package.xml | 2 +- 7 files changed, 10 insertions(+), 6 deletions(-) diff --git a/dynamicEDT3D/CMakeLists.txt b/dynamicEDT3D/CMakeLists.txt index ed8d2f55..78aa8515 100644 --- a/dynamicEDT3D/CMakeLists.txt +++ b/dynamicEDT3D/CMakeLists.txt @@ -6,7 +6,7 @@ include(CTest) # version (e.g. for packaging) set(DYNAMICEDT3D_MAJOR_VERSION 1) set(DYNAMICEDT3D_MINOR_VERSION 9) -set(DYNAMICEDT3D_PATCH_VERSION 0) +set(DYNAMICEDT3D_PATCH_VERSION 1) set(DYNAMICEDT3D_VERSION ${DYNAMICEDT3D_MAJOR_VERSION}.${DYNAMICEDT3D_MINOR_VERSION}.${DYNAMICEDT3D_PATCH_VERSION}) set(DYNAMICEDT3D_SOVERSION ${DYNAMICEDT3D_MAJOR_VERSION}.${DYNAMICEDT3D_MINOR_VERSION}) diff --git a/dynamicEDT3D/package.xml b/dynamicEDT3D/package.xml index d7773599..3b0149d1 100644 --- a/dynamicEDT3D/package.xml +++ b/dynamicEDT3D/package.xml @@ -1,6 +1,6 @@ dynamic_edt_3d - 1.9.0 + 1.9.1 The dynamicEDT3D library implements an inrementally updatable Euclidean distance transform (EDT) in 3D. It comes with a wrapper to use the OctoMap 3D representation and hooks into the change detection of the OctoMap library to propagate changes to the EDT. Christoph Sprunk diff --git a/octomap/CHANGELOG.txt b/octomap/CHANGELOG.txt index f86868ac..4ba94f0a 100644 --- a/octomap/CHANGELOG.txt +++ b/octomap/CHANGELOG.txt @@ -1,3 +1,7 @@ +v1.9.1: 2019-11-23 +================== +- Improved compatibility with modern compilers and ROS2 + v1.9.0: 2017-04-28 ================== - Fixed getUnknownLeafCenters to return true leaf centers (thx to A. Ecins) diff --git a/octomap/CMakeLists.txt b/octomap/CMakeLists.txt index 50e6323f..5e2bc374 100644 --- a/octomap/CMakeLists.txt +++ b/octomap/CMakeLists.txt @@ -6,7 +6,7 @@ include(CTest) # version (e.g. for packaging) set(OCTOMAP_MAJOR_VERSION 1) set(OCTOMAP_MINOR_VERSION 9) -set(OCTOMAP_PATCH_VERSION 0) +set(OCTOMAP_PATCH_VERSION 1) set(OCTOMAP_VERSION ${OCTOMAP_MAJOR_VERSION}.${OCTOMAP_MINOR_VERSION}.${OCTOMAP_PATCH_VERSION}) set(OCTOMAP_SOVERSION ${OCTOMAP_MAJOR_VERSION}.${OCTOMAP_MINOR_VERSION}) if(COMMAND cmake_policy) diff --git a/octomap/package.xml b/octomap/package.xml index d87b9b0e..9f6ce9f3 100644 --- a/octomap/package.xml +++ b/octomap/package.xml @@ -1,6 +1,6 @@ octomap - 1.9.0 + 1.9.1 The OctoMap library implements a 3D occupancy grid mapping approach, providing data structures and mapping algorithms in C++. The map implementation is based on an octree. See http://octomap.github.io for details. diff --git a/octovis/CMakeLists.txt b/octovis/CMakeLists.txt index 61490d9a..255da0a8 100644 --- a/octovis/CMakeLists.txt +++ b/octovis/CMakeLists.txt @@ -6,7 +6,7 @@ include(CTest) # # version (e.g. for packaging) set(OCTOVIS_MAJOR_VERSION 1) set(OCTOVIS_MINOR_VERSION 9) -set(OCTOVIS_PATCH_VERSION 0) +set(OCTOVIS_PATCH_VERSION 1) set(OCTOVIS_VERSION ${OCTOVIS_MAJOR_VERSION}.${OCTOVIS_MINOR_VERSION}.${OCTOVIS_PATCH_VERSION}) set(OCTOVIS_SOVERSION ${OCTOVIS_MAJOR_VERSION}.${OCTOVIS_MINOR_VERSION}) # get rid of a useless warning: diff --git a/octovis/package.xml b/octovis/package.xml index 5d08dc45..9bc5a16c 100644 --- a/octovis/package.xml +++ b/octovis/package.xml @@ -1,6 +1,6 @@ octovis - 1.9.0 + 1.9.1 octovis is visualization tool for the OctoMap library based on Qt and libQGLViewer. See http://octomap.github.io for details. From 4e1e818529c2f3d0872f5ba7c8383e25752aba7e Mon Sep 17 00:00:00 2001 From: Robert Haschke Date: Thu, 28 Nov 2019 18:37:26 +0100 Subject: [PATCH 05/23] fix unused-parameter warning (#267) Fix unused parameter warning in OccupancyOcTreeBase::insertPointCloudRays --- octomap/include/octomap/OccupancyOcTreeBase.hxx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/octomap/include/octomap/OccupancyOcTreeBase.hxx b/octomap/include/octomap/OccupancyOcTreeBase.hxx index ef51fd05..81438973 100644 --- a/octomap/include/octomap/OccupancyOcTreeBase.hxx +++ b/octomap/include/octomap/OccupancyOcTreeBase.hxx @@ -113,7 +113,7 @@ namespace octomap { template - void OccupancyOcTreeBase::insertPointCloudRays(const Pointcloud& pc, const point3d& origin, double maxrange, bool lazy_eval) { + void OccupancyOcTreeBase::insertPointCloudRays(const Pointcloud& pc, const point3d& origin, double /* maxrange */, bool lazy_eval) { if (pc.size() < 1) return; From b67b2c5a17b8978c36b9d704e7444dff10936c1b Mon Sep 17 00:00:00 2001 From: Wolfgang Merkt Date: Thu, 28 Nov 2019 21:18:46 +0000 Subject: [PATCH 06/23] [octovis] Fix dependency list for ROS in package.xml (#269) - Forgot libqlviewer-qt4-dev as a dependency which caused Melodic builds to fail - This now uses build_depend/exec_depend as previously again --- octovis/package.xml | 14 +++++++++----- 1 file changed, 9 insertions(+), 5 deletions(-) diff --git a/octovis/package.xml b/octovis/package.xml index 9bc5a16c..f170eaad 100644 --- a/octovis/package.xml +++ b/octovis/package.xml @@ -19,9 +19,13 @@ cmake - octomap - libqglviewer-qt4 - libqt4-dev - libqt4-opengl-dev - libqtgui4 + octomap + libqglviewer-qt4-dev + libqt4-dev + libqt4-opengl-dev + + octomap + libqglviewer-qt4 + libqtgui4 + libqt4-opengl From 77cc26360af0e097974e824f824b587e0aa459a9 Mon Sep 17 00:00:00 2001 From: Armin Hornung Date: Thu, 28 Nov 2019 22:21:53 +0100 Subject: [PATCH 07/23] Version 1.9.2 release --- dynamicEDT3D/CMakeLists.txt | 2 +- dynamicEDT3D/package.xml | 2 +- octomap/CHANGELOG.txt | 4 ++++ octomap/CMakeLists.txt | 2 +- octomap/package.xml | 2 +- octovis/CMakeLists.txt | 2 +- octovis/package.xml | 2 +- 7 files changed, 10 insertions(+), 6 deletions(-) diff --git a/dynamicEDT3D/CMakeLists.txt b/dynamicEDT3D/CMakeLists.txt index 78aa8515..20c89b27 100644 --- a/dynamicEDT3D/CMakeLists.txt +++ b/dynamicEDT3D/CMakeLists.txt @@ -6,7 +6,7 @@ include(CTest) # version (e.g. for packaging) set(DYNAMICEDT3D_MAJOR_VERSION 1) set(DYNAMICEDT3D_MINOR_VERSION 9) -set(DYNAMICEDT3D_PATCH_VERSION 1) +set(DYNAMICEDT3D_PATCH_VERSION 2) set(DYNAMICEDT3D_VERSION ${DYNAMICEDT3D_MAJOR_VERSION}.${DYNAMICEDT3D_MINOR_VERSION}.${DYNAMICEDT3D_PATCH_VERSION}) set(DYNAMICEDT3D_SOVERSION ${DYNAMICEDT3D_MAJOR_VERSION}.${DYNAMICEDT3D_MINOR_VERSION}) diff --git a/dynamicEDT3D/package.xml b/dynamicEDT3D/package.xml index 3b0149d1..3820236a 100644 --- a/dynamicEDT3D/package.xml +++ b/dynamicEDT3D/package.xml @@ -1,6 +1,6 @@ dynamic_edt_3d - 1.9.1 + 1.9.2 The dynamicEDT3D library implements an inrementally updatable Euclidean distance transform (EDT) in 3D. It comes with a wrapper to use the OctoMap 3D representation and hooks into the change detection of the OctoMap library to propagate changes to the EDT. Christoph Sprunk diff --git a/octomap/CHANGELOG.txt b/octomap/CHANGELOG.txt index 4ba94f0a..b71aaea3 100644 --- a/octomap/CHANGELOG.txt +++ b/octomap/CHANGELOG.txt @@ -1,3 +1,7 @@ +v1.9.2: 2019-11-28 +================== +- Fix ROS buildfarm failures for octovis + v1.9.1: 2019-11-23 ================== - Improved compatibility with modern compilers and ROS2 diff --git a/octomap/CMakeLists.txt b/octomap/CMakeLists.txt index 5e2bc374..ccf6ebcb 100644 --- a/octomap/CMakeLists.txt +++ b/octomap/CMakeLists.txt @@ -6,7 +6,7 @@ include(CTest) # version (e.g. for packaging) set(OCTOMAP_MAJOR_VERSION 1) set(OCTOMAP_MINOR_VERSION 9) -set(OCTOMAP_PATCH_VERSION 1) +set(OCTOMAP_PATCH_VERSION 2) set(OCTOMAP_VERSION ${OCTOMAP_MAJOR_VERSION}.${OCTOMAP_MINOR_VERSION}.${OCTOMAP_PATCH_VERSION}) set(OCTOMAP_SOVERSION ${OCTOMAP_MAJOR_VERSION}.${OCTOMAP_MINOR_VERSION}) if(COMMAND cmake_policy) diff --git a/octomap/package.xml b/octomap/package.xml index 9f6ce9f3..890271c3 100644 --- a/octomap/package.xml +++ b/octomap/package.xml @@ -1,6 +1,6 @@ octomap - 1.9.1 + 1.9.2 The OctoMap library implements a 3D occupancy grid mapping approach, providing data structures and mapping algorithms in C++. The map implementation is based on an octree. See http://octomap.github.io for details. diff --git a/octovis/CMakeLists.txt b/octovis/CMakeLists.txt index 255da0a8..0e062b5d 100644 --- a/octovis/CMakeLists.txt +++ b/octovis/CMakeLists.txt @@ -6,7 +6,7 @@ include(CTest) # # version (e.g. for packaging) set(OCTOVIS_MAJOR_VERSION 1) set(OCTOVIS_MINOR_VERSION 9) -set(OCTOVIS_PATCH_VERSION 1) +set(OCTOVIS_PATCH_VERSION 2) set(OCTOVIS_VERSION ${OCTOVIS_MAJOR_VERSION}.${OCTOVIS_MINOR_VERSION}.${OCTOVIS_PATCH_VERSION}) set(OCTOVIS_SOVERSION ${OCTOVIS_MAJOR_VERSION}.${OCTOVIS_MINOR_VERSION}) # get rid of a useless warning: diff --git a/octovis/package.xml b/octovis/package.xml index f170eaad..16b30c5b 100644 --- a/octovis/package.xml +++ b/octovis/package.xml @@ -1,6 +1,6 @@ octovis - 1.9.1 + 1.9.2 octovis is visualization tool for the OctoMap library based on Qt and libQGLViewer. See http://octomap.github.io for details. From 31af07e5bacc210cbf3c32929acf50338c108123 Mon Sep 17 00:00:00 2001 From: Bo Anderson Date: Sun, 8 Dec 2019 10:30:33 +0000 Subject: [PATCH 08/23] Removed problematic INSTALL_NAME_DIR (#262) Workaround for RPath on macOS no longer necessary --- octomap/src/math/CMakeLists.txt | 2 -- 1 file changed, 2 deletions(-) diff --git a/octomap/src/math/CMakeLists.txt b/octomap/src/math/CMakeLists.txt index 22127adb..6bfa066d 100644 --- a/octomap/src/math/CMakeLists.txt +++ b/octomap/src/math/CMakeLists.txt @@ -10,9 +10,7 @@ ADD_LIBRARY( octomath SHARED ${octomath_SRCS}) SET_TARGET_PROPERTIES( octomath PROPERTIES VERSION ${OCTOMAP_VERSION} SOVERSION ${OCTOMAP_SOVERSION} - INSTALL_NAME_DIR ${CMAKE_ARCHIVE_OUTPUT_DIRECTORY} # this seems to be necessary for MacOS X ) -# INSTALL_NAME_DIR seems to be necessary for MacOS X ADD_LIBRARY( octomath-static STATIC ${octomath_SRCS}) SET_TARGET_PROPERTIES(octomath-static PROPERTIES OUTPUT_NAME "octomath") From 985cdbe010cec96443e5003a105bb83dc26065be Mon Sep 17 00:00:00 2001 From: "Yu, Yan" <43195064+RoboticsYY@users.noreply.github.com> Date: Thu, 26 Dec 2019 17:15:59 +0800 Subject: [PATCH 09/23] Fix -Wpedantic warnings (#275) --- octomap/include/octomap/AbstractOccupancyOcTree.h | 2 +- octomap/include/octomap/OcTreeKey.h | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/octomap/include/octomap/AbstractOccupancyOcTree.h b/octomap/include/octomap/AbstractOccupancyOcTree.h index c81c64c4..5671a2fd 100644 --- a/octomap/include/octomap/AbstractOccupancyOcTree.h +++ b/octomap/include/octomap/AbstractOccupancyOcTree.h @@ -235,7 +235,7 @@ namespace octomap { static const std::string binaryFileHeader; }; -}; // end namespace +} // end namespace #endif diff --git a/octomap/include/octomap/OcTreeKey.h b/octomap/include/octomap/OcTreeKey.h index fabb965c..b48956d8 100644 --- a/octomap/include/octomap/OcTreeKey.h +++ b/octomap/include/octomap/OcTreeKey.h @@ -49,7 +49,7 @@ #include namespace octomap { namespace unordered_ns = std::tr1; - }; + } #else #include #include From bfc45804029d1a0172865fd3420ce3cc41fd43c9 Mon Sep 17 00:00:00 2001 From: Armin Hornung Date: Thu, 26 Dec 2019 10:23:41 +0100 Subject: [PATCH 10/23] Version 1.9.3 release --- dynamicEDT3D/CMakeLists.txt | 2 +- dynamicEDT3D/package.xml | 2 +- octomap/CHANGELOG.txt | 7 ++++++- octomap/CMakeLists.txt | 2 +- octomap/package.xml | 2 +- octovis/CMakeLists.txt | 2 +- octovis/package.xml | 2 +- 7 files changed, 12 insertions(+), 7 deletions(-) diff --git a/dynamicEDT3D/CMakeLists.txt b/dynamicEDT3D/CMakeLists.txt index 20c89b27..f1479cb0 100644 --- a/dynamicEDT3D/CMakeLists.txt +++ b/dynamicEDT3D/CMakeLists.txt @@ -6,7 +6,7 @@ include(CTest) # version (e.g. for packaging) set(DYNAMICEDT3D_MAJOR_VERSION 1) set(DYNAMICEDT3D_MINOR_VERSION 9) -set(DYNAMICEDT3D_PATCH_VERSION 2) +set(DYNAMICEDT3D_PATCH_VERSION 3) set(DYNAMICEDT3D_VERSION ${DYNAMICEDT3D_MAJOR_VERSION}.${DYNAMICEDT3D_MINOR_VERSION}.${DYNAMICEDT3D_PATCH_VERSION}) set(DYNAMICEDT3D_SOVERSION ${DYNAMICEDT3D_MAJOR_VERSION}.${DYNAMICEDT3D_MINOR_VERSION}) diff --git a/dynamicEDT3D/package.xml b/dynamicEDT3D/package.xml index 3820236a..98824113 100644 --- a/dynamicEDT3D/package.xml +++ b/dynamicEDT3D/package.xml @@ -1,6 +1,6 @@ dynamic_edt_3d - 1.9.2 + 1.9.3 The dynamicEDT3D library implements an inrementally updatable Euclidean distance transform (EDT) in 3D. It comes with a wrapper to use the OctoMap 3D representation and hooks into the change detection of the OctoMap library to propagate changes to the EDT. Christoph Sprunk diff --git a/octomap/CHANGELOG.txt b/octomap/CHANGELOG.txt index b71aaea3..78c2648a 100644 --- a/octomap/CHANGELOG.txt +++ b/octomap/CHANGELOG.txt @@ -1,6 +1,11 @@ +v1.9.3: 2019-12-26 +================== +- Fixed Wpedantic warnings +- Removed problematic INSTALL_NAME_DIR (maxOS workaround) + v1.9.2: 2019-11-28 ================== -- Fix ROS buildfarm failures for octovis +- Fixed ROS buildfarm failures for octovis v1.9.1: 2019-11-23 ================== diff --git a/octomap/CMakeLists.txt b/octomap/CMakeLists.txt index ccf6ebcb..b992e4ee 100644 --- a/octomap/CMakeLists.txt +++ b/octomap/CMakeLists.txt @@ -6,7 +6,7 @@ include(CTest) # version (e.g. for packaging) set(OCTOMAP_MAJOR_VERSION 1) set(OCTOMAP_MINOR_VERSION 9) -set(OCTOMAP_PATCH_VERSION 2) +set(OCTOMAP_PATCH_VERSION 3) set(OCTOMAP_VERSION ${OCTOMAP_MAJOR_VERSION}.${OCTOMAP_MINOR_VERSION}.${OCTOMAP_PATCH_VERSION}) set(OCTOMAP_SOVERSION ${OCTOMAP_MAJOR_VERSION}.${OCTOMAP_MINOR_VERSION}) if(COMMAND cmake_policy) diff --git a/octomap/package.xml b/octomap/package.xml index 890271c3..01990885 100644 --- a/octomap/package.xml +++ b/octomap/package.xml @@ -1,6 +1,6 @@ octomap - 1.9.2 + 1.9.3 The OctoMap library implements a 3D occupancy grid mapping approach, providing data structures and mapping algorithms in C++. The map implementation is based on an octree. See http://octomap.github.io for details. diff --git a/octovis/CMakeLists.txt b/octovis/CMakeLists.txt index 0e062b5d..34653c02 100644 --- a/octovis/CMakeLists.txt +++ b/octovis/CMakeLists.txt @@ -6,7 +6,7 @@ include(CTest) # # version (e.g. for packaging) set(OCTOVIS_MAJOR_VERSION 1) set(OCTOVIS_MINOR_VERSION 9) -set(OCTOVIS_PATCH_VERSION 2) +set(OCTOVIS_PATCH_VERSION 3) set(OCTOVIS_VERSION ${OCTOVIS_MAJOR_VERSION}.${OCTOVIS_MINOR_VERSION}.${OCTOVIS_PATCH_VERSION}) set(OCTOVIS_SOVERSION ${OCTOVIS_MAJOR_VERSION}.${OCTOVIS_MINOR_VERSION}) # get rid of a useless warning: diff --git a/octovis/package.xml b/octovis/package.xml index 16b30c5b..134745f0 100644 --- a/octovis/package.xml +++ b/octovis/package.xml @@ -1,6 +1,6 @@ octovis - 1.9.2 + 1.9.3 octovis is visualization tool for the OctoMap library based on Qt and libQGLViewer. See http://octomap.github.io for details. From a330c3cabd9c9c5104e89764aab19c0d3836d6c4 Mon Sep 17 00:00:00 2001 From: Juhani Numminen Date: Tue, 21 Jan 2020 15:28:38 +0200 Subject: [PATCH 11/23] Support configurable libdir Still defaults to PREFIX/lib but e.g. Debian or Fedora packagers can easily set it to lib/x86_64-linux-gnu or lib64 respectively. --- dynamicEDT3D/CMakeLists.txt | 15 ++++++------ .../CMakeModules/InstallPkgConfigFile.cmake | 12 +++++----- dynamicEDT3D/src/CMakeLists.txt | 4 ++-- octomap/CMakeLists.txt | 23 ++++++++++--------- .../CMakeModules/InstallPkgConfigFile.cmake | 12 +++++----- octomap/src/CMakeLists.txt | 4 ++-- octomap/src/math/CMakeLists.txt | 2 +- octovis/CMakeLists.txt | 19 +++++++-------- octovis/CMakeLists_src.txt | 6 ++--- 9 files changed, 50 insertions(+), 47 deletions(-) diff --git a/dynamicEDT3D/CMakeLists.txt b/dynamicEDT3D/CMakeLists.txt index f1479cb0..0c33684c 100644 --- a/dynamicEDT3D/CMakeLists.txt +++ b/dynamicEDT3D/CMakeLists.txt @@ -2,6 +2,7 @@ CMAKE_MINIMUM_REQUIRED(VERSION 2.8.8) PROJECT(dynamicEDT3D) include(CTest) +include(GNUInstallDirs) # version (e.g. for packaging) set(DYNAMICEDT3D_MAJOR_VERSION 1) @@ -63,10 +64,10 @@ ADD_SUBDIRECTORY(src) file(GLOB dynamicEDT3D_HDRS ${PROJECT_SOURCE_DIR}/include/dynamicEDT3D/*.h ${PROJECT_SOURCE_DIR}/include/dynamicEDT3D/*.hxx) -install(FILES ${dynamicEDT3D_HDRS} DESTINATION include/dynamicEDT3D) +install(FILES ${dynamicEDT3D_HDRS} DESTINATION "${CMAKE_INSTALL_INCLUDEDIR}/dynamicEDT3D") # Install catkin package.xml, attention package.xml names the catkin package "dynamic_edt_3d", so this is also the location where it needs to be installed to (and not "dynamicEDT3D") -install(FILES package.xml DESTINATION share/dynamic_edt_3d) +install(FILES package.xml DESTINATION "${CMAKE_INSTALL_DATADIR}/dynamic_edt_3d") #TODO: this conflicts with the octomap uninstall #it is not only a target name problem, also both will use the same manifest file @@ -106,7 +107,7 @@ CONFIGURE_PACKAGE_CONFIG_FILE( dynamicEDT3DConfig.cmake.in "${CMAKE_LIBRARY_OUTPUT_DIRECTORY}/cmake/dynamicEDT3D/dynamicEDT3DConfig.cmake" PATH_VARS DYNAMICEDT3D_INCLUDE_DIRS DYNAMICEDT3D_LIB_DIR - INSTALL_DESTINATION ${CMAKE_INSTALL_PREFIX}/share/dynamicEDT3D) + INSTALL_DESTINATION "${CMAKE_INSTALL_FULL_DATADIR}/dynamicEDT3D") WRITE_BASIC_PACKAGE_VERSION_FILE( "${CMAKE_LIBRARY_OUTPUT_DIRECTORY}/cmake/dynamicEDT3D/dynamicEDT3DConfig-version.cmake" @@ -120,8 +121,8 @@ WRITE_BASIC_PACKAGE_VERSION_FILE( # Create a dynamicEDT3DConfig.cmake file for the use from the install tree # and install it -set(DYNAMICEDT3D_INCLUDE_DIRS "${CMAKE_INSTALL_PREFIX}/include") -set(DYNAMICEDT3D_LIB_DIR "${CMAKE_INSTALL_PREFIX}/lib") +set(DYNAMICEDT3D_INCLUDE_DIRS "${CMAKE_INSTALL_FULL_INCLUDEDIR}") +set(DYNAMICEDT3D_LIB_DIR "${CMAKE_INSTALL_FULL_LIBDIR}") #set(DYNAMICEDT3D_CMAKE_DIR "${INSTALL_DATA_DIR}/FooBar/CMake") set(DYNAMICEDT3D_INCLUDE_TARGETS @@ -131,7 +132,7 @@ CONFIGURE_PACKAGE_CONFIG_FILE( dynamicEDT3DConfig.cmake.in "${PROJECT_BINARY_DIR}/InstallFiles/dynamicEDT3DConfig.cmake" PATH_VARS DYNAMICEDT3D_INCLUDE_DIRS DYNAMICEDT3D_LIB_DIR - INSTALL_DESTINATION ${CMAKE_INSTALL_PREFIX}/share/dynamicEDT3D) + INSTALL_DESTINATION "${CMAKE_INSTALL_FULL_DATADIR}/dynamicEDT3D") WRITE_BASIC_PACKAGE_VERSION_FILE( "${PROJECT_BINARY_DIR}/InstallFiles/dynamicEDT3DConfig-version.cmake" @@ -141,7 +142,7 @@ WRITE_BASIC_PACKAGE_VERSION_FILE( install(FILES "${PROJECT_BINARY_DIR}/InstallFiles/dynamicEDT3DConfig.cmake" "${PROJECT_BINARY_DIR}/InstallFiles/dynamicEDT3DConfig-version.cmake" - DESTINATION share/dynamicEDT3D/) + DESTINATION "${CMAKE_INSTALL_DATADIR}/dynamicEDT3D") # Write pkgconfig-file: include(InstallPkgConfigFile) diff --git a/dynamicEDT3D/CMakeModules/InstallPkgConfigFile.cmake b/dynamicEDT3D/CMakeModules/InstallPkgConfigFile.cmake index 7c4e5859..c874402a 100644 --- a/dynamicEDT3D/CMakeModules/InstallPkgConfigFile.cmake +++ b/dynamicEDT3D/CMakeModules/InstallPkgConfigFile.cmake @@ -7,10 +7,10 @@ # [LIBS ...] # [REQUIRES ...]) # -# Create and install a pkg-config .pc file to CMAKE_INSTALL_PREFIX/lib/pkgconfig +# Create and install a pkg-config .pc file to CMAKE_INSTALL_LIBDIR/pkgconfig # assuming the following install layout: -# libraries: CMAKE_INSTALL_PREFIX/lib -# headers : CMAKE_INSTALL_PREFIX/include +# libraries: CMAKE_INSTALL_LIBDIR +# headers : CMAKE_INSTALL_INCLUDEDIR # # example: # add_library(mylib mylib.c) @@ -63,8 +63,8 @@ function(install_pkg_config_file) # write the .pc file out file(WRITE ${pc_fname} "prefix=${CMAKE_INSTALL_PREFIX}\n" - "libdir=\${prefix}/lib\n" - "includedir=\${prefix}/include\n" + "libdir=${CMAKE_INSTALL_FULL_LIBDIR}\n" + "includedir=${CMAKE_INSTALL_FULL_INCLUDEDIR}\n" "\n" "Name: ${pc_name}\n" "Description: ${pc_description}\n" @@ -74,5 +74,5 @@ function(install_pkg_config_file) "Cflags: -I\${includedir} ${pc_cflags}\n") # mark the .pc file for installation to the lib/pkgconfig directory - install(FILES ${pc_fname} DESTINATION lib/pkgconfig) + install(FILES ${pc_fname} DESTINATION "${CMAKE_INSTALL_LIBDIR}/pkgconfig") endfunction(install_pkg_config_file) diff --git a/dynamicEDT3D/src/CMakeLists.txt b/dynamicEDT3D/src/CMakeLists.txt index 44645d88..0b9357c7 100644 --- a/dynamicEDT3D/src/CMakeLists.txt +++ b/dynamicEDT3D/src/CMakeLists.txt @@ -32,7 +32,7 @@ ADD_SUBDIRECTORY(examples) install(TARGETS dynamicedt3d dynamicedt3d-static EXPORT dynamicEDT3DTargets - INCLUDES DESTINATION include + INCLUDES DESTINATION "${CMAKE_INSTALL_INCLUDEDIR}" ${INSTALL_TARGETS_DEFAULT_ARGS} ) -install(EXPORT dynamicEDT3DTargets DESTINATION share/dynamicEDT3D/) +install(EXPORT dynamicEDT3DTargets DESTINATION "${CMAKE_INSTALL_DATADIR}/dynamicEDT3D") diff --git a/octomap/CMakeLists.txt b/octomap/CMakeLists.txt index b992e4ee..87166bbe 100644 --- a/octomap/CMakeLists.txt +++ b/octomap/CMakeLists.txt @@ -2,6 +2,7 @@ CMAKE_MINIMUM_REQUIRED(VERSION 2.8.8) PROJECT( octomap ) include(CTest) +include(GNUInstallDirs) # version (e.g. for packaging) set(OCTOMAP_MAJOR_VERSION 1) @@ -55,21 +56,21 @@ LINK_DIRECTORIES(${CMAKE_LIBRARY_OUTPUT_DIRECTORY}) # Installation set(INSTALL_TARGETS_DEFAULT_ARGS - RUNTIME DESTINATION bin - LIBRARY DESTINATION lib - ARCHIVE DESTINATION lib + RUNTIME DESTINATION "${CMAKE_INSTALL_BINDIR}" + LIBRARY DESTINATION "${CMAKE_INSTALL_LIBDIR}" + ARCHIVE DESTINATION "${CMAKE_INSTALL_LIBDIR}" ) ADD_SUBDIRECTORY( src/math ) ADD_SUBDIRECTORY( src ) file(GLOB octomap_HDRS ${PROJECT_SOURCE_DIR}/include/octomap/*.h ${PROJECT_SOURCE_DIR}/include/octomap/*.hxx) -install(FILES ${octomap_HDRS} DESTINATION include/octomap) +install(FILES ${octomap_HDRS} DESTINATION "${CMAKE_INSTALL_INCLUDEDIR}/octomap") file(GLOB octomap_math_HDRS ${PROJECT_SOURCE_DIR}/include/octomap/math/*.h) -install(FILES ${octomap_math_HDRS} DESTINATION include/octomap/math) +install(FILES ${octomap_math_HDRS} DESTINATION "${CMAKE_INSTALL_INCLUDEDIR}/octomap/math") # Install catkin package.xml -install(FILES package.xml DESTINATION share/octomap) +install(FILES package.xml DESTINATION "${CMAKE_INSTALL_DATADIR}/octomap") # uninstall target configure_file( @@ -113,7 +114,7 @@ CONFIGURE_PACKAGE_CONFIG_FILE( octomap-config.cmake.in "${CMAKE_LIBRARY_OUTPUT_DIRECTORY}/cmake/octomap/octomap-config.cmake" PATH_VARS OCTOMAP_INCLUDE_DIRS OCTOMAP_LIB_DIR - INSTALL_DESTINATION ${CMAKE_INSTALL_PREFIX}/share/octomap) + INSTALL_DESTINATION "${CMAKE_INSTALL_FULL_DATADIR}/octomap") WRITE_BASIC_PACKAGE_VERSION_FILE( "${CMAKE_LIBRARY_OUTPUT_DIRECTORY}/cmake/octomap/octomap-config-version.cmake" @@ -122,8 +123,8 @@ WRITE_BASIC_PACKAGE_VERSION_FILE( # Create a octomap-config.cmake file for the use from the install tree # and install it -set(OCTOMAP_INCLUDE_DIRS "${CMAKE_INSTALL_PREFIX}/include") -set(OCTOMAP_LIB_DIR "${CMAKE_INSTALL_PREFIX}/lib") +set(OCTOMAP_INCLUDE_DIRS "${CMAKE_INSTALL_FULL_INCLUDEDIR}") +set(OCTOMAP_LIB_DIR "${CMAKE_INSTALL_FULL_LIBDIR}") #set(OCTOMAP_CMAKE_DIR "${INSTALL_DATA_DIR}/FooBar/CMake") set(OCTOMAP_INCLUDE_TARGETS @@ -133,7 +134,7 @@ CONFIGURE_PACKAGE_CONFIG_FILE( octomap-config.cmake.in "${PROJECT_BINARY_DIR}/InstallFiles/octomap-config.cmake" PATH_VARS OCTOMAP_INCLUDE_DIRS OCTOMAP_LIB_DIR - INSTALL_DESTINATION ${CMAKE_INSTALL_PREFIX}/share/octomap) + INSTALL_DESTINATION "${CMAKE_INSTALL_FULL_DATADIR}/octomap") WRITE_BASIC_PACKAGE_VERSION_FILE( ${PROJECT_BINARY_DIR}/InstallFiles/octomap-config-version.cmake @@ -143,7 +144,7 @@ WRITE_BASIC_PACKAGE_VERSION_FILE( install(FILES "${PROJECT_BINARY_DIR}/InstallFiles/octomap-config.cmake" "${PROJECT_BINARY_DIR}/InstallFiles/octomap-config-version.cmake" - DESTINATION share/octomap/) + DESTINATION "${CMAKE_INSTALL_DATADIR}/octomap") # Write pkgconfig-file: include(InstallPkgConfigFile) diff --git a/octomap/CMakeModules/InstallPkgConfigFile.cmake b/octomap/CMakeModules/InstallPkgConfigFile.cmake index 7c4e5859..c874402a 100644 --- a/octomap/CMakeModules/InstallPkgConfigFile.cmake +++ b/octomap/CMakeModules/InstallPkgConfigFile.cmake @@ -7,10 +7,10 @@ # [LIBS ...] # [REQUIRES ...]) # -# Create and install a pkg-config .pc file to CMAKE_INSTALL_PREFIX/lib/pkgconfig +# Create and install a pkg-config .pc file to CMAKE_INSTALL_LIBDIR/pkgconfig # assuming the following install layout: -# libraries: CMAKE_INSTALL_PREFIX/lib -# headers : CMAKE_INSTALL_PREFIX/include +# libraries: CMAKE_INSTALL_LIBDIR +# headers : CMAKE_INSTALL_INCLUDEDIR # # example: # add_library(mylib mylib.c) @@ -63,8 +63,8 @@ function(install_pkg_config_file) # write the .pc file out file(WRITE ${pc_fname} "prefix=${CMAKE_INSTALL_PREFIX}\n" - "libdir=\${prefix}/lib\n" - "includedir=\${prefix}/include\n" + "libdir=${CMAKE_INSTALL_FULL_LIBDIR}\n" + "includedir=${CMAKE_INSTALL_FULL_INCLUDEDIR}\n" "\n" "Name: ${pc_name}\n" "Description: ${pc_description}\n" @@ -74,5 +74,5 @@ function(install_pkg_config_file) "Cflags: -I\${includedir} ${pc_cflags}\n") # mark the .pc file for installation to the lib/pkgconfig directory - install(FILES ${pc_fname} DESTINATION lib/pkgconfig) + install(FILES ${pc_fname} DESTINATION "${CMAKE_INSTALL_LIBDIR}/pkgconfig") endfunction(install_pkg_config_file) diff --git a/octomap/src/CMakeLists.txt b/octomap/src/CMakeLists.txt index 217f2f45..45b384f7 100644 --- a/octomap/src/CMakeLists.txt +++ b/octomap/src/CMakeLists.txt @@ -69,10 +69,10 @@ TARGET_LINK_LIBRARIES(octree2pointcloud octomap) install(TARGETS octomap octomap-static EXPORT octomap-targets - INCLUDES DESTINATION include + INCLUDES DESTINATION "${CMAKE_INSTALL_INCLUDEDIR}" ${INSTALL_TARGETS_DEFAULT_ARGS} ) -install(EXPORT octomap-targets DESTINATION share/octomap/) +install(EXPORT octomap-targets DESTINATION "${CMAKE_INSTALL_DATADIR}/octomap") install(TARGETS graph2tree diff --git a/octomap/src/math/CMakeLists.txt b/octomap/src/math/CMakeLists.txt index 6bfa066d..3b47ec44 100644 --- a/octomap/src/math/CMakeLists.txt +++ b/octomap/src/math/CMakeLists.txt @@ -24,6 +24,6 @@ export(TARGETS octomath octomath-static install(TARGETS octomath octomath-static EXPORT octomap-targets - INCLUDES DESTINATION include + INCLUDES DESTINATION "${CMAKE_INSTALL_INCLUDEDIR}" ${INSTALL_TARGETS_DEFAULT_ARGS} ) diff --git a/octovis/CMakeLists.txt b/octovis/CMakeLists.txt index 34653c02..fcf910a2 100644 --- a/octovis/CMakeLists.txt +++ b/octovis/CMakeLists.txt @@ -2,6 +2,7 @@ CMAKE_MINIMUM_REQUIRED(VERSION 2.8.8) PROJECT( octovis ) include(CTest) +include(GNUInstallDirs) # # version (e.g. for packaging) set(OCTOVIS_MAJOR_VERSION 1) @@ -55,9 +56,9 @@ INCLUDE_DIRECTORIES(BEFORE SYSTEM ${OCTOMAP_INCLUDE_DIRS}) export(PACKAGE octovis) set(INSTALL_TARGETS_DEFAULT_ARGS - RUNTIME DESTINATION bin - LIBRARY DESTINATION lib - ARCHIVE DESTINATION lib + RUNTIME DESTINATION "${CMAKE_INSTALL_BINDIR}" + LIBRARY DESTINATION "${CMAKE_INSTALL_LIBDIR}" + ARCHIVE DESTINATION "${CMAKE_INSTALL_LIBDIR}" ) # Builds the "octovis" viewer based on OpenGL and @@ -125,8 +126,8 @@ IF(BUILD_VIEWER) # Create a octovis-config.cmake file for the use from the install tree # and install it - set(OCTOVIS_INCLUDE_DIRS "${CMAKE_INSTALL_PREFIX}/include") - set(OCTOVIS_LIB_DIR "${CMAKE_INSTALL_PREFIX}/lib") + set(OCTOVIS_INCLUDE_DIRS "${CMAKE_INSTALL_FULL_INCLUDEDIR}") + set(OCTOVIS_LIB_DIR "${CMAKE_INSTALL_FULL_LIBDIR}") #set(OCTOMAP_CMAKE_DIR "${INSTALL_DATA_DIR}/FooBar/CMake") set(OCTOVIS_INCLUDE_TARGETS @@ -136,7 +137,7 @@ IF(BUILD_VIEWER) octovis-config.cmake.in "${PROJECT_BINARY_DIR}/InstallFiles/octovis-config.cmake" PATH_VARS OCTOVIS_INCLUDE_DIRS OCTOVIS_LIB_DIR - INSTALL_DESTINATION ${CMAKE_INSTALL_PREFIX}/share/octovis) + INSTALL_DESTINATION "${CMAKE_INSTALL_FULL_DATADIR}/octovis") WRITE_BASIC_PACKAGE_VERSION_FILE( "${PROJECT_BINARY_DIR}/InstallFiles/octovis-config-version.cmake" @@ -146,15 +147,15 @@ IF(BUILD_VIEWER) install(FILES "${PROJECT_BINARY_DIR}/InstallFiles/octovis-config.cmake" "${PROJECT_BINARY_DIR}/InstallFiles/octovis-config-version.cmake" - DESTINATION share/octovis/) + DESTINATION "${CMAKE_INSTALL_DATADIR}/octovis") # #installation: # # store all header files to install: file(GLOB octovis_HDRS *.h *.hxx *.hpp) - install(FILES ${octovis_HDRS} DESTINATION include/octovis) + install(FILES ${octovis_HDRS} DESTINATION "${CMAKE_INSTALL_INCLUDEDIR}/octovis") # Install catkin package.xml - install(FILES package.xml DESTINATION share/octovis) + install(FILES package.xml DESTINATION "${CMAKE_INSTALL_DATADIR}/octovis") ELSE() MESSAGE ( "Unfortunately, the viewer (octovis) can not be built because some requirements are missing.") diff --git a/octovis/CMakeLists_src.txt b/octovis/CMakeLists_src.txt index 1f800c2d..4ce0903c 100644 --- a/octovis/CMakeLists_src.txt +++ b/octovis/CMakeLists_src.txt @@ -151,13 +151,13 @@ export(TARGETS octovis octovis-static octovis-shared install(TARGETS octovis octovis-static octovis-shared EXPORT octovis-targets - INCLUDES DESTINATION include + INCLUDES DESTINATION "${CMAKE_INSTALL_INCLUDEDIR}" ${INSTALL_TARGETS_DEFAULT_ARGS} ) -install(EXPORT octovis-targets DESTINATION share/octovis/) +install(EXPORT octovis-targets DESTINATION "${CMAKE_INSTALL_DATADIR}/octovis") file(GLOB octovis_HDRS ${PROJECT_SOURCE_DIR}/include/octovis/*.h) # filter generated headers for GUI: list(REMOVE_ITEM octovis_HDRS ${viewer_MOC_HDRS} ${viewer_UIS_H}) -install(FILES ${octovis_HDRS} DESTINATION include/octovis) +install(FILES ${octovis_HDRS} DESTINATION "${CMAKE_INSTALL_INCLUDEDIR}/octovis") From ff95658d59fef0fe945f9854987e7dd6fcfd1f1e Mon Sep 17 00:00:00 2001 From: Juhani Numminen Date: Tue, 21 Jan 2020 16:13:53 +0200 Subject: [PATCH 12/23] Support QGLViewer-qt5 and enable Qt5 by default Thanks to kazuki0824 and anasarrak. --- CMakeLists.txt | 2 +- octovis/CMakeModules/FindQGLViewer.cmake | 10 +++++++--- 2 files changed, 8 insertions(+), 4 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index c1ec836e..70be6912 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -6,7 +6,7 @@ set(CMAKE_POSITION_INDEPENDENT_CODE ON) # enables -fPIC in applicable compilers option(BUILD_OCTOVIS_SUBPROJECT "Build targets from subproject octovis" ON) option(BUILD_DYNAMICETD3D_SUBPROJECT "Build targets from subproject dynamicEDT3D" ON) -option(OCTOVIS_QT5 "Link Octovis against Qt5?" NO) +option(OCTOVIS_QT5 "Link Octovis against Qt5?" ON) if(OCTOVIS_QT5) # Compiling against QT5 requires C++11. diff --git a/octovis/CMakeModules/FindQGLViewer.cmake b/octovis/CMakeModules/FindQGLViewer.cmake index 752002b9..9b64430b 100644 --- a/octovis/CMakeModules/FindQGLViewer.cmake +++ b/octovis/CMakeModules/FindQGLViewer.cmake @@ -1,5 +1,5 @@ # Find QGLViewer library -# Looks for a system-wide version of libQGLViewer (qglviewer-qt4 in Ubuntu). +# Looks for a system-wide version of libQGLViewer (qglviewer-qt4 or 5 in Ubuntu). # If none is found, it builds and uses the local copy in "extern" # # Many thanks to L. Ott for assistance! @@ -23,7 +23,11 @@ FIND_PATH( QGLViewer_INCLUDE_DIR qglviewer.h ${QGLVIEWER_BASE_DIR} ) -FIND_LIBRARY( QGLViewer_LIBRARY_DIR_UBUNTU NAMES qglviewer-qt4 QGLViewer-qt4) +IF( QT4_FOUND ) + FIND_LIBRARY( QGLViewer_LIBRARY_DIR_UBUNTU NAMES qglviewer-qt4 QGLViewer-qt4) +ELSE() + FIND_LIBRARY( QGLViewer_LIBRARY_DIR_UBUNTU NAMES qglviewer-qt5 QGLViewer-qt5) +ENDIF() FIND_LIBRARY( QGLViewer_LIBRARY_DIR_WINDOWS QGLViewer2 ${QGLVIEWER_BASE_DIR}) FIND_LIBRARY( QGLViewer_LIBRARY_DIR_OTHER QGLViewer ${QGLVIEWER_BASE_DIR}) @@ -119,4 +123,4 @@ ENDIF() # You need to use qmake of QT4. You are using QT3 if you get: #CMakeFiles/octovis.dir/ViewerWidget.cpp.o: In function `octomap::ViewerWidget::ViewerWidget(QWidget*)': -#ViewerWidget.cpp:(.text+0x1715): undefined reference to `QGLViewer::QGLViewer(QWidget*, QGLWidget const*, QFlags)' \ No newline at end of file +#ViewerWidget.cpp:(.text+0x1715): undefined reference to `QGLViewer::QGLViewer(QWidget*, QGLWidget const*, QFlags)' From c860efd0f702c5381a81965a6d2bb553d2070b85 Mon Sep 17 00:00:00 2001 From: Juhani Numminen Date: Tue, 21 Jan 2020 16:16:45 +0200 Subject: [PATCH 13/23] Travis: upgrade to Qt5 and Ubuntu 18.04 Bionic --- .travis.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.travis.yml b/.travis.yml index cb4cda90..35a103ee 100644 --- a/.travis.yml +++ b/.travis.yml @@ -1,12 +1,12 @@ language: cpp sudo: required -dist: trusty +dist: bionic compiler: - gcc - clang before_install: - sudo apt-get update -qq - - sudo apt-get install -qq libqt4-dev libqt4-opengl-dev libqglviewer-dev + - sudo apt-get install -qq libqglviewer-dev-qt5 before_script: script: ./scripts/travis_build_jobs.sh $VARIANT env: From ce998c7c1df0e64e5536be5ae20a7a27e6e05667 Mon Sep 17 00:00:00 2001 From: Juhani Numminen Date: Tue, 21 Jan 2020 16:41:50 +0200 Subject: [PATCH 14/23] Add option OCTOVIS_QT5 in octovis/CMakeFiles.txt Copied from root CMakeFiles.txt to make this flag default ON even if building octovis as a module. --- octovis/CMakeLists.txt | 2 ++ 1 file changed, 2 insertions(+) diff --git a/octovis/CMakeLists.txt b/octovis/CMakeLists.txt index 34653c02..d20b7d65 100644 --- a/octovis/CMakeLists.txt +++ b/octovis/CMakeLists.txt @@ -64,6 +64,8 @@ set(INSTALL_TARGETS_DEFAULT_ARGS # libQGLViewer, if dependencies available SET( BUILD_VIEWER 0) +option(OCTOVIS_QT5 "Link Octovis against Qt5?" ON) + # Look for required libraries: FIND_PACKAGE(OpenGL) if(NOT OCTOVIS_QT5) From a722c5192f2d8022cf8f388543995b8b082acccf Mon Sep 17 00:00:00 2001 From: Shane Loretz Date: Tue, 10 Mar 2020 17:28:58 -0700 Subject: [PATCH 15/23] Bump CMake version to avoid CMP0048 Signed-off-by: Shane Loretz --- CMakeLists.txt | 2 +- dynamicEDT3D/CMakeLists.txt | 2 +- octomap/CMakeLists.txt | 2 +- octovis/CMakeLists.txt | 2 +- 4 files changed, 4 insertions(+), 4 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index 70be6912..e0e5feb6 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -1,4 +1,4 @@ -CMAKE_MINIMUM_REQUIRED(VERSION 2.8.8) +CMAKE_MINIMUM_REQUIRED(VERSION 3.0.2) PROJECT( octomap-distribution ) ENABLE_TESTING() # enable CTest environment of subprojects diff --git a/dynamicEDT3D/CMakeLists.txt b/dynamicEDT3D/CMakeLists.txt index 0c33684c..f597da0a 100644 --- a/dynamicEDT3D/CMakeLists.txt +++ b/dynamicEDT3D/CMakeLists.txt @@ -1,4 +1,4 @@ -CMAKE_MINIMUM_REQUIRED(VERSION 2.8.8) +CMAKE_MINIMUM_REQUIRED(VERSION 3.0.2) PROJECT(dynamicEDT3D) include(CTest) diff --git a/octomap/CMakeLists.txt b/octomap/CMakeLists.txt index 87166bbe..462a67d1 100644 --- a/octomap/CMakeLists.txt +++ b/octomap/CMakeLists.txt @@ -1,4 +1,4 @@ -CMAKE_MINIMUM_REQUIRED(VERSION 2.8.8) +CMAKE_MINIMUM_REQUIRED(VERSION 3.0.2) PROJECT( octomap ) include(CTest) diff --git a/octovis/CMakeLists.txt b/octovis/CMakeLists.txt index c1346bc6..cc40ccd6 100644 --- a/octovis/CMakeLists.txt +++ b/octovis/CMakeLists.txt @@ -1,4 +1,4 @@ -CMAKE_MINIMUM_REQUIRED(VERSION 2.8.8) +CMAKE_MINIMUM_REQUIRED(VERSION 3.0.2) PROJECT( octovis ) include(CTest) From 812fb98af3f20067465b5635b0297ff364a444f9 Mon Sep 17 00:00:00 2001 From: Armin Hornung Date: Sun, 15 Mar 2020 22:37:58 +0100 Subject: [PATCH 16/23] Version 1.9.4 release --- dynamicEDT3D/CMakeLists.txt | 2 +- dynamicEDT3D/package.xml | 2 +- octomap/CHANGELOG.txt | 6 ++++++ octomap/CMakeLists.txt | 2 +- octomap/package.xml | 2 +- octovis/CMakeLists.txt | 2 +- octovis/package.xml | 2 +- 7 files changed, 12 insertions(+), 6 deletions(-) diff --git a/dynamicEDT3D/CMakeLists.txt b/dynamicEDT3D/CMakeLists.txt index f597da0a..61fc9da2 100644 --- a/dynamicEDT3D/CMakeLists.txt +++ b/dynamicEDT3D/CMakeLists.txt @@ -7,7 +7,7 @@ include(GNUInstallDirs) # version (e.g. for packaging) set(DYNAMICEDT3D_MAJOR_VERSION 1) set(DYNAMICEDT3D_MINOR_VERSION 9) -set(DYNAMICEDT3D_PATCH_VERSION 3) +set(DYNAMICEDT3D_PATCH_VERSION 4) set(DYNAMICEDT3D_VERSION ${DYNAMICEDT3D_MAJOR_VERSION}.${DYNAMICEDT3D_MINOR_VERSION}.${DYNAMICEDT3D_PATCH_VERSION}) set(DYNAMICEDT3D_SOVERSION ${DYNAMICEDT3D_MAJOR_VERSION}.${DYNAMICEDT3D_MINOR_VERSION}) diff --git a/dynamicEDT3D/package.xml b/dynamicEDT3D/package.xml index 98824113..12864f4a 100644 --- a/dynamicEDT3D/package.xml +++ b/dynamicEDT3D/package.xml @@ -1,6 +1,6 @@ dynamic_edt_3d - 1.9.3 + 1.9.4 The dynamicEDT3D library implements an inrementally updatable Euclidean distance transform (EDT) in 3D. It comes with a wrapper to use the OctoMap 3D representation and hooks into the change detection of the OctoMap library to propagate changes to the EDT. Christoph Sprunk diff --git a/octomap/CHANGELOG.txt b/octomap/CHANGELOG.txt index 78c2648a..c2ab9082 100644 --- a/octomap/CHANGELOG.txt +++ b/octomap/CHANGELOG.txt @@ -1,3 +1,9 @@ +v1.9.4: 2020-03-15 +================== +- octovis: Enable Qt5 by default +- Support added for configurable libdir for packaging +- Increased minimum CMake version to 3.0.2 + v1.9.3: 2019-12-26 ================== - Fixed Wpedantic warnings diff --git a/octomap/CMakeLists.txt b/octomap/CMakeLists.txt index 462a67d1..c546aa9f 100644 --- a/octomap/CMakeLists.txt +++ b/octomap/CMakeLists.txt @@ -7,7 +7,7 @@ include(GNUInstallDirs) # version (e.g. for packaging) set(OCTOMAP_MAJOR_VERSION 1) set(OCTOMAP_MINOR_VERSION 9) -set(OCTOMAP_PATCH_VERSION 3) +set(OCTOMAP_PATCH_VERSION 4) set(OCTOMAP_VERSION ${OCTOMAP_MAJOR_VERSION}.${OCTOMAP_MINOR_VERSION}.${OCTOMAP_PATCH_VERSION}) set(OCTOMAP_SOVERSION ${OCTOMAP_MAJOR_VERSION}.${OCTOMAP_MINOR_VERSION}) if(COMMAND cmake_policy) diff --git a/octomap/package.xml b/octomap/package.xml index 01990885..1fc11c09 100644 --- a/octomap/package.xml +++ b/octomap/package.xml @@ -1,6 +1,6 @@ octomap - 1.9.3 + 1.9.4 The OctoMap library implements a 3D occupancy grid mapping approach, providing data structures and mapping algorithms in C++. The map implementation is based on an octree. See http://octomap.github.io for details. diff --git a/octovis/CMakeLists.txt b/octovis/CMakeLists.txt index cc40ccd6..50aedadd 100644 --- a/octovis/CMakeLists.txt +++ b/octovis/CMakeLists.txt @@ -7,7 +7,7 @@ include(GNUInstallDirs) # # version (e.g. for packaging) set(OCTOVIS_MAJOR_VERSION 1) set(OCTOVIS_MINOR_VERSION 9) -set(OCTOVIS_PATCH_VERSION 3) +set(OCTOVIS_PATCH_VERSION 4) set(OCTOVIS_VERSION ${OCTOVIS_MAJOR_VERSION}.${OCTOVIS_MINOR_VERSION}.${OCTOVIS_PATCH_VERSION}) set(OCTOVIS_SOVERSION ${OCTOVIS_MAJOR_VERSION}.${OCTOVIS_MINOR_VERSION}) # get rid of a useless warning: diff --git a/octovis/package.xml b/octovis/package.xml index 134745f0..f8e9c72b 100644 --- a/octovis/package.xml +++ b/octovis/package.xml @@ -1,6 +1,6 @@ octovis - 1.9.3 + 1.9.4 octovis is visualization tool for the OctoMap library based on Qt and libQGLViewer. See http://octomap.github.io for details. From 6c7fb60930c508c61086890e80aa19c04fb8e6c1 Mon Sep 17 00:00:00 2001 From: Wolfgang Merkt Date: Sun, 15 Mar 2020 23:29:15 +0000 Subject: [PATCH 17/23] [octovis] Update dependencies to Qt5 Recently, OCTOVIS_QT5 was set to ON by default. This requires updated package dependencies to work on the buildfarm. --- octovis/package.xml | 21 +++++++++++++++++---- 1 file changed, 17 insertions(+), 4 deletions(-) diff --git a/octovis/package.xml b/octovis/package.xml index f8e9c72b..863432b6 100644 --- a/octovis/package.xml +++ b/octovis/package.xml @@ -20,12 +20,25 @@ octomap - libqglviewer-qt4-dev + + + libqt5-core + libqt5-opengl-dev + + + octomap - libqglviewer-qt4 + + + libqt5-core + libqt5-opengl + libqt5-gui + + + From 959f2355c80b3ae93719f3d3de04bb1cc662d83a Mon Sep 17 00:00:00 2001 From: Wolfgang Merkt Date: Fri, 20 Mar 2020 15:36:58 +0000 Subject: [PATCH 18/23] [octovis] Update required dependencies for Qt5 New keys introduced upstream in https://github.com/ros/rosdistro/pull/24097 --- octovis/package.xml | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/octovis/package.xml b/octovis/package.xml index 863432b6..c870b169 100644 --- a/octovis/package.xml +++ b/octovis/package.xml @@ -22,6 +22,7 @@ octomap + libqglviewer-dev-qt5 libqt5-core libqt5-opengl-dev @@ -33,9 +34,10 @@ octomap + libqglviewer2-qt5 libqt5-core - libqt5-opengl libqt5-gui + libqt5-opengl