summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAlexis Ballier <aballier@gentoo.org>2018-01-13 10:51:50 +0100
committerAlexis Ballier <aballier@gentoo.org>2018-01-13 13:16:22 +0100
commitf542cb05a15eb621c5fab56789558cd29955ac4b (patch)
tree16a539090fe73689be1050d4784732ee7f639ae1 /sci-libs/octomap
parentx11-libs/libQGLViewer: bump to 2.7.1. (diff)
downloadgentoo-f542cb05a15eb621c5fab56789558cd29955ac4b.tar.gz
gentoo-f542cb05a15eb621c5fab56789558cd29955ac4b.tar.bz2
gentoo-f542cb05a15eb621c5fab56789558cd29955ac4b.zip
sci-libs/octomap: bump to 1.9.0 and port to qt5
Package-Manager: Portage-2.3.19, Repoman-2.3.6
Diffstat (limited to 'sci-libs/octomap')
-rw-r--r--sci-libs/octomap/Manifest1
-rw-r--r--sci-libs/octomap/files/qglqt5.patch231
-rw-r--r--sci-libs/octomap/octomap-1.9.0.ebuild93
-rw-r--r--sci-libs/octomap/octomap-9999.ebuild22
4 files changed, 338 insertions, 9 deletions
diff --git a/sci-libs/octomap/Manifest b/sci-libs/octomap/Manifest
index 815e4e9dde58..b1420dcc0f17 100644
--- a/sci-libs/octomap/Manifest
+++ b/sci-libs/octomap/Manifest
@@ -1 +1,2 @@
DIST octomap-1.8.1.tar.gz 1679526 BLAKE2B 89d71ca43ce4e353d8cf758420907c8bb1e11aa42854178174594d03aaf04ed753a35c6e4ffc60a5ebe0297307aedee92bd69138af8598a8b5ae7ac716193c44 SHA512 e35567da0d6741747abbc87de49733d0e92bae8aedfe66a63766740cc6566f3cfdbc3c986369177497cc9a8fb208ed9b727da496cec48e2ad23328df06fbc8d6
+DIST octomap-1.9.0.tar.gz 1682421 BLAKE2B a299b4a956d5f9b6a67b05548f2239ad1181a4a1e673e5868d56d6e2d8f0101b2c75b114d1b7995c244c138fe04c8972104c25ca2f4ca6f75639f7326f06d8d7 SHA512 335a4ee3fe20f456afd2d8491f8fe6cfc2527d6e26aa690a69a39c1468e41d312fd84c85a1247deb11f513b9d50b8c69d34b46876f8257c205b0a99bac826237
diff --git a/sci-libs/octomap/files/qglqt5.patch b/sci-libs/octomap/files/qglqt5.patch
new file mode 100644
index 000000000000..3fad0a0fc63f
--- /dev/null
+++ b/sci-libs/octomap/files/qglqt5.patch
@@ -0,0 +1,231 @@
+Index: octomap-1.9.0/octovis/src/ViewerGui.cpp
+===================================================================
+--- octomap-1.9.0.orig/octovis/src/ViewerGui.cpp
++++ octomap-1.9.0/octovis/src/ViewerGui.cpp
+@@ -286,7 +286,7 @@ void ViewerGui::showOcTree() {
+ m_mapSizeStatus->setText(size);
+ //}
+
+- m_glwidget->updateGL();
++ m_glwidget->update();
+
+ // generate cubes -> display
+ // timeval start;
+@@ -299,7 +299,7 @@ void ViewerGui::showOcTree() {
+ // gettimeofday(&stop, NULL); // stop timer
+ // double time_to_generate = (stop.tv_sec - start.tv_sec) + 1.0e-6 *(stop.tv_usec - start.tv_usec);
+ // fprintf(stderr, "setOcTree took %f sec\n", time_to_generate);
+- m_glwidget->updateGL();
++ m_glwidget->update();
+ }
+
+
+@@ -983,7 +983,7 @@ void ViewerGui::on_actionSelection_box_t
+ m_glwidget->enableSelectionBox(checked);
+
+
+- m_glwidget->updateGL();
++ m_glwidget->update();
+ }
+
+ void ViewerGui::on_actionHeight_map_toggled(bool checked){
+@@ -1040,7 +1040,7 @@ void ViewerGui::on_actionAxes_toggled(bo
+ it != m_octrees.end(); ++it) {
+ it->second.octree_drawer->enableAxes(checked);
+ }
+- m_glwidget->updateGL();
++ m_glwidget->update();
+ }
+
+ void ViewerGui::on_actionHideBackground_toggled(bool checked) {
+@@ -1048,7 +1048,7 @@ void ViewerGui::on_actionHideBackground_
+ if (getOctreeRecord(DEFAULT_OCTREE_ID, r)) {
+ if (checked) m_glwidget->removeSceneObject(r->octree_drawer);
+ else m_glwidget->addSceneObject(r->octree_drawer);
+- m_glwidget->updateGL();
++ m_glwidget->update();
+ }
+ }
+
+@@ -1142,7 +1142,7 @@ void ViewerGui::on_actionOctree_cells_to
+ it != m_octrees.end(); ++it) {
+ it->second.octree_drawer->enableOcTreeCells(enabled);
+ }
+- m_glwidget->updateGL();
++ m_glwidget->update();
+ }
+
+ void ViewerGui::on_actionOctree_structure_toggled(bool enabled) {
+@@ -1150,7 +1150,7 @@ void ViewerGui::on_actionOctree_structur
+ it != m_octrees.end(); ++it) {
+ it->second.octree_drawer->enableOcTree(enabled);
+ }
+- m_glwidget->updateGL();
++ m_glwidget->update();
+ }
+
+ void ViewerGui::on_actionFree_toggled(bool enabled) {
+@@ -1158,7 +1158,7 @@ void ViewerGui::on_actionFree_toggled(bo
+ it != m_octrees.end(); ++it) {
+ it->second.octree_drawer->enableFreespace(enabled);
+ }
+- m_glwidget->updateGL();
++ m_glwidget->update();
+
+ }
+
+@@ -1176,24 +1176,21 @@ void ViewerGui::on_actionSelected_toggle
+ // } else{
+ // m_octreeDrawer->clearOcTreeSelection();
+ // }
+- // m_glwidget->updateGL();
++ // m_glwidget->update();
+ // }
+ }
+
+
+ void ViewerGui::on_action_bg_black_triggered() {
+ m_glwidget->setBackgroundColor( QColor(0,0,0) );
+- m_glwidget->qglClearColor( m_glwidget->backgroundColor() );
+ }
+
+ void ViewerGui::on_action_bg_white_triggered() {
+ m_glwidget->setBackgroundColor( QColor(255,255,255) );
+- m_glwidget->qglClearColor( m_glwidget->backgroundColor() );
+ }
+
+ void ViewerGui::on_action_bg_gray_triggered() {
+ m_glwidget->setBackgroundColor( QColor(117,117,117) );
+- m_glwidget->qglClearColor( m_glwidget->backgroundColor() );
+ }
+
+ void ViewerGui::on_savecampose_triggered() {
+Index: octomap-1.9.0/octovis/src/ViewerWidget.cpp
+===================================================================
+--- octomap-1.9.0.orig/octovis/src/ViewerWidget.cpp
++++ octomap-1.9.0/octovis/src/ViewerWidget.cpp
+@@ -67,13 +67,12 @@ void ViewerWidget::init() {
+
+ // background color defaults to white
+ this->setBackgroundColor( QColor(255,255,255) );
+- this->qglClearColor( this->backgroundColor() );
+ }
+
+ void ViewerWidget::resetView(){
+ this->camera()->setOrientation((float) -M_PI_2, (float) M_PI_2);
+ this->showEntireScene();
+- updateGL();
++ update();
+ }
+
+
+@@ -98,7 +97,7 @@ void ViewerWidget::enableHeightColorMode
+ for(std::vector<SceneObject*>::iterator it = m_sceneObjects.begin(); it != m_sceneObjects.end(); it++) {
+ (*it)->enableHeightColorMode(enabled);
+ }
+- updateGL();
++ update();
+ }
+
+ void ViewerWidget::enablePrintoutMode(bool enabled) {
+@@ -106,7 +105,7 @@ void ViewerWidget::enablePrintoutMode(bo
+ for(std::vector<SceneObject*>::iterator it = m_sceneObjects.begin(); it != m_sceneObjects.end(); it++) {
+ (*it)->enablePrintoutMode(enabled);
+ }
+- updateGL();
++ update();
+ }
+
+ void ViewerWidget::enableSemanticColoring (bool enabled) {
+@@ -114,12 +113,12 @@ void ViewerWidget::enableSemanticColorin
+ for(std::vector<SceneObject*>::iterator it = m_sceneObjects.begin(); it != m_sceneObjects.end(); it++) {
+ (*it)->enableSemanticColoring(enabled);
+ }
+- updateGL();
++ update();
+ }
+
+ void ViewerWidget::enableSelectionBox(bool enabled) {
+ m_drawSelectionBox = enabled;
+- updateGL();
++ update();
+ }
+
+
+@@ -145,7 +144,7 @@ void ViewerWidget::setCamPosition(double
+ camera()->setPosition(qglviewer::Vec(x, y, z));
+ camera()->lookAt(qglviewer::Vec(lookX, lookY, lookZ));
+ camera()->setUpVector(qglviewer::Vec(0.0, 0.0, 1.0));
+- updateGL();
++ update();
+ }
+
+ void ViewerWidget::setCamPose(const octomath::Pose6D& pose){
+@@ -161,12 +160,12 @@ void ViewerWidget::jumpToCamFrame(int id
+ } else {
+ std::cerr << "Error: Could not jump to frame " << frame << " of " << kfi->numberOfKeyFrames() << std::endl;
+ }
+- updateGL();
++ update();
+ }
+
+ void ViewerWidget::deleteCameraPath(int id) {
+ if(camera()->keyFrameInterpolator(id)) {
+- disconnect(camera()->keyFrameInterpolator(id), SIGNAL(interpolated()), this, SLOT(updateGL()));
++ disconnect(camera()->keyFrameInterpolator(id), SIGNAL(interpolated()), this, SLOT(update()));
+ disconnect(camera()->keyFrameInterpolator(id), SIGNAL(interpolated()), this, SLOT(cameraPathInterpolated()));
+ disconnect(camera()->keyFrameInterpolator(id), SIGNAL(endReached()), this, SLOT(cameraPathFinished()));
+ camera()->deletePath(id);
+@@ -243,7 +242,7 @@ void ViewerWidget::playCameraPath(int id
+ m_current_camera_frame = start_frame;
+ kfi->setInterpolationTime(kfi->keyFrameTime(start_frame));
+ std::cout << "Playing path of length " << kfi->numberOfKeyFrames() << ", start time " << kfi->keyFrameTime(start_frame) << std::endl;
+- connect(kfi, SIGNAL(interpolated()), this, SLOT(updateGL()));
++ connect(kfi, SIGNAL(interpolated()), this, SLOT(update()));
+ connect(kfi, SIGNAL(interpolated()), this, SLOT(cameraPathInterpolated()));
+ connect(kfi, SIGNAL(endReached()), this, SLOT(cameraPathFinished()));
+ kfi->startInterpolation();
+@@ -252,7 +251,7 @@ void ViewerWidget::playCameraPath(int id
+
+ void ViewerWidget::stopCameraPath(int id) {
+ if(camera()->keyFrameInterpolator(id) && camera()->keyFrameInterpolator(id)->interpolationIsStarted()) {
+- disconnect(camera()->keyFrameInterpolator(id), SIGNAL(interpolated()), this, SLOT(updateGL()));
++ disconnect(camera()->keyFrameInterpolator(id), SIGNAL(interpolated()), this, SLOT(update()));
+ disconnect(camera()->keyFrameInterpolator(id), SIGNAL(interpolated()), this, SLOT(cameraPathInterpolated()));
+ disconnect(camera()->keyFrameInterpolator(id), SIGNAL(endReached()), this, SLOT(cameraPathFinished()));
+ camera()->keyFrameInterpolator(id)->stopInterpolation();
+@@ -261,7 +260,7 @@ void ViewerWidget::stopCameraPath(int id
+
+ void ViewerWidget::cameraPathFinished() {
+ if(camera()->keyFrameInterpolator(m_current_camera_path)) {
+- disconnect(camera()->keyFrameInterpolator(m_current_camera_path), SIGNAL(interpolated()), this, SLOT(updateGL()));
++ disconnect(camera()->keyFrameInterpolator(m_current_camera_path), SIGNAL(interpolated()), this, SLOT(update()));
+ disconnect(camera()->keyFrameInterpolator(m_current_camera_path), SIGNAL(interpolated()), this, SLOT(cameraPathInterpolated()));
+ disconnect(camera()->keyFrameInterpolator(m_current_camera_path), SIGNAL(endReached()), this, SLOT(cameraPathFinished()));
+ emit cameraPathStopped(m_current_camera_path);
+@@ -292,7 +291,7 @@ void ViewerWidget::setSceneBoundingBox(c
+ void ViewerWidget::addSceneObject(SceneObject* obj){
+ assert (obj);
+ m_sceneObjects.push_back(obj);
+- updateGL();
++ update();
+ }
+
+ void ViewerWidget::removeSceneObject(SceneObject* obj){
+@@ -304,7 +303,7 @@ void ViewerWidget::removeSceneObject(Sce
+ else
+ ++it;
+ }
+- updateGL();
++ update();
+ }
+
+ void ViewerWidget::clearAll(){
+@@ -364,7 +363,6 @@ void ViewerWidget::postDraw(){
+ glPushAttrib(GL_ALL_ATTRIB_BITS);
+
+ glDisable(GL_COLOR_MATERIAL);
+- qglColor(foregroundColor());
+
+ if (gridIsDrawn()){
+ glLineWidth(1.0);
diff --git a/sci-libs/octomap/octomap-1.9.0.ebuild b/sci-libs/octomap/octomap-1.9.0.ebuild
new file mode 100644
index 000000000000..0472eb73728e
--- /dev/null
+++ b/sci-libs/octomap/octomap-1.9.0.ebuild
@@ -0,0 +1,93 @@
+# Copyright 1999-2018 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=5
+
+SCM=""
+if [ "${PV#9999}" != "${PV}" ] ; then
+ SCM="git-r3"
+ EGIT_REPO_URI="https://github.com/OctoMap/octomap"
+fi
+
+inherit ${SCM} cmake-utils
+
+if [ "${PV#9999}" != "${PV}" ] ; then
+ KEYWORDS=""
+ SRC_URI=""
+else
+ KEYWORDS="~amd64 ~arm"
+ SRC_URI="https://github.com/OctoMap/octomap/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+fi
+
+DESCRIPTION="An Efficient Probabilistic 3D Mapping Framework Based on Octrees"
+HOMEPAGE="http://octomap.github.io/"
+IUSE="qt5 dynamicEDT3D doc"
+LICENSE="BSD qt5? ( GPL-2 )"
+SLOT="0/19"
+
+RDEPEND="
+ qt5? (
+ virtual/opengl
+ dev-qt/qtcore:5
+ dev-qt/qtgui:5
+ dev-qt/qtwidgets:5
+ x11-libs/libQGLViewer:=
+ )
+"
+DEPEND="${RDEPEND}
+ doc? (
+ app-doc/doxygen
+ media-gfx/graphviz
+ )
+"
+
+PATCHES=( "${FILESDIR}/qglqt5.patch" )
+
+src_prepare() {
+ sed -e 's/DESTINATION lib/DESTINATION ${CMAKE_INSTALL_LIBDIR}/' \
+ -i */CMakeLists.txt \
+ -i */CMakeModules/InstallPkgConfigFile.cmake || die
+ sed -e 's/iewer-qt4/iewer-qt5/g' \
+ -i octovis/CMakeModules/FindQGLViewer.cmake || die
+ cmake-utils_src_prepare
+}
+
+src_configure() {
+ local mycmakeargs=(
+ "-DBUILD_OCTOVIS_SUBPROJECT=$(usex qt5 ON OFF)"
+ "-DOCTOVIS_QT5=TRUE"
+ "-DBUILD_DYNAMICETD3D_SUBPROJECT=$(usex dynamicEDT3D ON OFF)"
+ )
+ cmake-utils_src_configure
+}
+
+src_compile() {
+ cmake-utils_src_compile
+ if use doc ; then
+ cd "${BUILD_DIR}/octomap"
+ emake docs
+ if use dynamicEDT3D ; then
+ cd "${BUILD_DIR}/dynamicEDT3D"
+ emake docs_dynamicEDT3D
+ fi
+ fi
+}
+
+src_install() {
+ cmake-utils_src_install
+ if use doc ; then
+ insinto /usr/share/doc/${PF}/html/octomap
+ doins -r "${S}/octomap/doc/html/"*
+ if use dynamicEDT3D ; then
+ insinto /usr/share/doc/${PF}/html/dynamicEDT3D
+ doins -r "${S}/dynamicEDT3D/doc/html/"*
+ fi
+ fi
+
+ insinto /usr/share/ros_packages/${PN}
+ doins "${ED}/usr/share/${PN}/package.xml"
+ if use qt5; then
+ insinto /usr/share/ros_packages/octovis
+ doins "${ED}/usr/share/octovis/package.xml"
+ fi
+}
diff --git a/sci-libs/octomap/octomap-9999.ebuild b/sci-libs/octomap/octomap-9999.ebuild
index 30141845c394..f5c2b0c615ac 100644
--- a/sci-libs/octomap/octomap-9999.ebuild
+++ b/sci-libs/octomap/octomap-9999.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2017 Gentoo Foundation
+# Copyright 1999-2018 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
EAPI=5
@@ -21,15 +21,16 @@ fi
DESCRIPTION="An Efficient Probabilistic 3D Mapping Framework Based on Octrees"
HOMEPAGE="http://octomap.github.io/"
-IUSE="qt4 dynamicEDT3D doc"
-LICENSE="BSD qt4? ( GPL-2 )"
-SLOT="0"
+IUSE="qt5 dynamicEDT3D doc"
+LICENSE="BSD qt5? ( GPL-2 )"
+SLOT="0/19"
RDEPEND="
- qt4? (
+ qt5? (
virtual/opengl
- dev-qt/qtcore:4
- dev-qt/qtgui:4
+ dev-qt/qtcore:5
+ dev-qt/qtgui:5
+ dev-qt/qtwidgets:5
x11-libs/libQGLViewer:=
)
"
@@ -44,12 +45,15 @@ src_prepare() {
sed -e 's/DESTINATION lib/DESTINATION ${CMAKE_INSTALL_LIBDIR}/' \
-i */CMakeLists.txt \
-i */CMakeModules/InstallPkgConfigFile.cmake || die
+ sed -e 's/iewer-qt4/iewer-qt5/g' \
+ -i octovis/CMakeModules/FindQGLViewer.cmake || die
cmake-utils_src_prepare
}
src_configure() {
local mycmakeargs=(
- "-DBUILD_OCTOVIS_SUBPROJECT=$(usex qt4 ON OFF)"
+ "-DBUILD_OCTOVIS_SUBPROJECT=$(usex qt5 ON OFF)"
+ "-DOCTOVIS_QT5=TRUE"
"-DBUILD_DYNAMICETD3D_SUBPROJECT=$(usex dynamicEDT3D ON OFF)"
)
cmake-utils_src_configure
@@ -80,7 +84,7 @@ src_install() {
insinto /usr/share/ros_packages/${PN}
doins "${ED}/usr/share/${PN}/package.xml"
- if use qt4; then
+ if use qt5; then
insinto /usr/share/ros_packages/octovis
doins "${ED}/usr/share/octovis/package.xml"
fi