summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'sci-electronics/gazebo')
-rw-r--r--sci-electronics/gazebo/Manifest1
-rw-r--r--sci-electronics/gazebo/files/qwt.patch64
-rw-r--r--sci-electronics/gazebo/files/tests.patch46
-rw-r--r--sci-electronics/gazebo/gazebo-8.0.0.ebuild78
4 files changed, 189 insertions, 0 deletions
diff --git a/sci-electronics/gazebo/Manifest b/sci-electronics/gazebo/Manifest
index 51ba7751f2a8..d00ed3b912b1 100644
--- a/sci-electronics/gazebo/Manifest
+++ b/sci-electronics/gazebo/Manifest
@@ -1 +1,2 @@
DIST gazebo-7.5.0.tar.bz2 50140753 SHA256 15d87d0d329ef37ff82e676e7b8b0c8535c40ba635cdebd5b8ee3b5832fa8e56 SHA512 dd65a937a4fe7273b8cefa4d9491e3fca981c86b54769805b2164e53c2c25e18a544412657f942b7d6ec5de612e77f89777150ef25cc62de1726a519161d1d85 WHIRLPOOL d81b9cd4f338c2ef327d7946b2a5f61c916fe35d26c6150825f1d7b26b3f0582890b0a56080ad523d19c024b2b24b482143df80eefade4e973a04157408b2ae8
+DIST gazebo-8.0.0.tar.bz2 52472089 SHA256 ea733be6946ac5c538bf207ba01f3a6d6afa456d0b70455f7066b19d722f0d12 SHA512 51890faebe50112fcdc4f53cb8e7be583f62e9690ffdfab1bc2346a79157a7e796830f58f64573c3fbe1caa7653b2fb0be514f43dfd36545bf9c8ab8d580ffee WHIRLPOOL ff351dad7bede38d1b1749cfb74b18c853c11e9e3db89d112586ce4cdfa51efebb7ab9c06f32e2ff2b5ed6a1b687a44da238de91c6254e12b82f722ba9dc1ade
diff --git a/sci-electronics/gazebo/files/qwt.patch b/sci-electronics/gazebo/files/qwt.patch
new file mode 100644
index 000000000000..d7bbce2f8cbe
--- /dev/null
+++ b/sci-electronics/gazebo/files/qwt.patch
@@ -0,0 +1,64 @@
+Index: gazebo-8.0.0/cmake/SearchForStuff.cmake
+===================================================================
+--- gazebo-8.0.0.orig/cmake/SearchForStuff.cmake
++++ gazebo-8.0.0/cmake/SearchForStuff.cmake
+@@ -758,10 +758,10 @@ find_path(QWT_INCLUDE_DIR NAMES qwt.h PA
+ /usr/local/lib/qwt.framework/Headers
+ ${QWT_WIN_INCLUDE_DIR}
+
+- PATH_SUFFIXES qwt qwt5
++ PATH_SUFFIXES qwt6
+ )
+
+-find_library(QWT_LIBRARY NAMES qwt-qt5 qwt PATHS
++find_library(QWT_LIBRARY NAMES qwt6-qt5 qwt PATHS
+ /usr/lib
+ /usr/local/lib
+ /usr/local/lib/qwt.framework
+Index: gazebo-8.0.0/gazebo/gui/plot/qwt_gazebo.h
+===================================================================
+--- gazebo-8.0.0.orig/gazebo/gui/plot/qwt_gazebo.h
++++ gazebo-8.0.0/gazebo/gui/plot/qwt_gazebo.h
+@@ -23,24 +23,24 @@
+ #pragma clang diagnostic push
+ #pragma clang diagnostic ignored "-Wfloat-equal"
+
+-#include <qwt/qwt_curve_fitter.h>
+-#include <qwt/qwt_legend.h>
+-#include <qwt/qwt_painter.h>
+-#include <qwt/qwt_picker_machine.h>
+-#include <qwt/qwt_plot.h>
+-#include <qwt/qwt_plot_canvas.h>
+-#include <qwt/qwt_plot_curve.h>
+-#include <qwt/qwt_plot_directpainter.h>
+-#include <qwt/qwt_plot_grid.h>
+-#include <qwt/qwt_plot_layout.h>
+-#include <qwt/qwt_plot_magnifier.h>
+-#include <qwt/qwt_plot_marker.h>
+-#include <qwt/qwt_plot_panner.h>
+-#include <qwt/qwt_plot_zoomer.h>
+-#include <qwt/qwt_scale_engine.h>
+-#include <qwt/qwt_scale_widget.h>
+-#include <qwt/qwt_symbol.h>
+-#include <qwt/qwt_plot_renderer.h>
++#include <qwt6/qwt_curve_fitter.h>
++#include <qwt6/qwt_legend.h>
++#include <qwt6/qwt_painter.h>
++#include <qwt6/qwt_picker_machine.h>
++#include <qwt6/qwt_plot.h>
++#include <qwt6/qwt_plot_canvas.h>
++#include <qwt6/qwt_plot_curve.h>
++#include <qwt6/qwt_plot_directpainter.h>
++#include <qwt6/qwt_plot_grid.h>
++#include <qwt6/qwt_plot_layout.h>
++#include <qwt6/qwt_plot_magnifier.h>
++#include <qwt6/qwt_plot_marker.h>
++#include <qwt6/qwt_plot_panner.h>
++#include <qwt6/qwt_plot_zoomer.h>
++#include <qwt6/qwt_scale_engine.h>
++#include <qwt6/qwt_scale_widget.h>
++#include <qwt6/qwt_symbol.h>
++#include <qwt6/qwt_plot_renderer.h>
+
+ #pragma clang diagnostic pop
+
diff --git a/sci-electronics/gazebo/files/tests.patch b/sci-electronics/gazebo/files/tests.patch
new file mode 100644
index 000000000000..4f06acbc0ee7
--- /dev/null
+++ b/sci-electronics/gazebo/files/tests.patch
@@ -0,0 +1,46 @@
+Index: gazebo-8.0.0/test/integration/physics_link.cc
+===================================================================
+--- gazebo-8.0.0.orig/test/integration/physics_link.cc
++++ gazebo-8.0.0/test/integration/physics_link.cc
+@@ -199,7 +199,7 @@ void PhysicsLinkTest::AddForce(const std
+ gzdbg << "World != link == inertial frames, no offset" << std::endl;
+ model->SetLinkWorldPose(ignition::math::Pose3d(
+ ignition::math::Vector3d(2, 3, 4),
+- ignition::math::Vector3d(0, IGN_PI/2.0, 1)), link);
++ ignition::math::Quaterniond(0, IGN_PI/2.0, 1)), link);
+ EXPECT_NE(ignition::math::Pose3d::Zero, link->WorldPose());
+ EXPECT_EQ(link->WorldPose(), link->WorldInertialPose());
+ this->AddLinkForceTwoWays(world, link, ignition::math::Vector3d(-1, 10, 5));
+@@ -215,7 +215,7 @@ void PhysicsLinkTest::AddForce(const std
+ model->SetLinkWorldPose(ignition::math::Pose3d::Zero, link);
+ ignition::math::Pose3d inertialPose = ignition::math::Pose3d(
+ ignition::math::Vector3d(1, 5, 8),
+- ignition::math::Vector3d(IGN_PI/3.0, IGN_PI*1.5, IGN_PI/4));
++ ignition::math::Quaterniond(IGN_PI/3.0, IGN_PI*1.5, IGN_PI/4));
+ link->GetInertial()->SetCoG(inertialPose);
+ EXPECT_EQ(ignition::math::Pose3d::Zero, link->WorldPose());
+ EXPECT_EQ(inertialPose, link->WorldInertialPose());
+@@ -224,9 +224,9 @@ void PhysicsLinkTest::AddForce(const std
+ gzdbg << "World != link != inertial frames, with offset" << std::endl;
+ model->SetLinkWorldPose(ignition::math::Pose3d(
+ ignition::math::Vector3d(5, 10, -4),
+- ignition::math::Vector3d(0, IGN_PI/2.0, IGN_PI/6)), link);
++ ignition::math::Quaterniond(0, IGN_PI/2.0, IGN_PI/6)), link);
+ inertialPose = ignition::math::Pose3d(ignition::math::Vector3d(0, -5, 10),
+- ignition::math::Vector3d(0, 2.0*IGN_PI, IGN_PI/3));
++ ignition::math::Quaterniond(0, 2.0*IGN_PI, IGN_PI/3));
+ link->GetInertial()->SetCoG(inertialPose);
+ this->AddLinkForceTwoWays(world, link, ignition::math::Vector3d(1, 2, 1),
+ ignition::math::Vector3d(-2, 0.5, 1));
+@@ -235,9 +235,9 @@ void PhysicsLinkTest::AddForce(const std
+ << std::endl;
+ model->SetLinkWorldPose(ignition::math::Pose3d(
+ ignition::math::Vector3d(-1.5, 0.8, 3),
+- ignition::math::Vector3d(-IGN_PI/4.5, IGN_PI/3.0, IGN_PI*1.2)), link);
++ ignition::math::Quaterniond(-IGN_PI/4.5, IGN_PI/3.0, IGN_PI*1.2)), link);
+ inertialPose = ignition::math::Pose3d(ignition::math::Vector3d(1, 0, -5.6),
+- ignition::math::Vector3d(IGN_PI/9, 0, IGN_PI*3));
++ ignition::math::Quaterniond(IGN_PI/9, 0, IGN_PI*3));
+ link->GetInertial()->SetCoG(inertialPose);
+ link->SetLinearVel(ignition::math::Vector3d(2, -0.1, 5));
+ link->SetAngularVel(ignition::math::Vector3d(-IGN_PI/10, 0, 0.0001));
diff --git a/sci-electronics/gazebo/gazebo-8.0.0.ebuild b/sci-electronics/gazebo/gazebo-8.0.0.ebuild
new file mode 100644
index 000000000000..eaba13c15fcc
--- /dev/null
+++ b/sci-electronics/gazebo/gazebo-8.0.0.ebuild
@@ -0,0 +1,78 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+inherit cmake-utils versionator vcs-snapshot flag-o-matic
+
+DESCRIPTION="A 3D multiple robot simulator with dynamics"
+HOMEPAGE="http://gazebosim.org/"
+SRC_URI="https://osrf-distributions.s3.amazonaws.com/gazebo/releases/${P}.tar.bz2"
+
+LICENSE="Apache-2.0"
+# Subslot = major version = soname of libs
+SLOT="0/8"
+KEYWORDS="~amd64"
+IUSE="cpu_flags_x86_sse2 libav test"
+
+RDEPEND="
+ >=dev-libs/protobuf-2:=
+ virtual/opengl
+ media-libs/openal
+ net-misc/curl
+ dev-libs/tinyxml
+ dev-libs/tinyxml2
+ dev-libs/libtar
+ dev-cpp/tbb
+ >=dev-games/ogre-1.7.4[freeimage]
+ >=media-libs/freeimage-3.15.4[png]
+ sci-libs/libccd
+ libav? ( >=media-video/libav-9:0= )
+ !libav? ( >=media-video/ffmpeg-2.6:0= )
+ sci-libs/gts
+ >=sci-physics/bullet-2.82
+ >=dev-libs/sdformat-5.0:=
+ dev-qt/qtwidgets:5
+ dev-qt/qtcore:5
+ dev-qt/qtopengl:5
+ dev-libs/boost:=[threads]
+ sci-libs/gdal
+ virtual/libusb:1
+ dev-libs/libspnav
+ media-libs/freeimage
+ sci-libs/hdf5:=
+ sys-apps/util-linux
+ media-gfx/graphviz
+ net-libs/ignition-msgs:=
+ >=sci-libs/ignition-math-2.3:3=
+ net-libs/ignition-transport:3=
+ x11-libs/qwt:6=[qt5]
+"
+DEPEND="${RDEPEND}
+ dev-qt/qttest:5
+ app-text/ronn
+ app-arch/gzip
+ virtual/pkgconfig
+ x11-apps/mesa-progs
+ test? ( dev-libs/libxslt )
+"
+CMAKE_BUILD_TYPE=RelWithDebInfo
+PATCHES=( "${FILESDIR}/qwt.patch" "${FILESDIR}/tests.patch" )
+
+src_configure() {
+ # doesnt build without it
+ append-cxxflags "-std=c++11"
+ # doesnt build with as-needed either
+ append-ldflags "-Wl,--no-as-needed"
+
+ local mycmakeargs=(
+ "-DUSE_UPSTREAM_CFLAGS=OFF"
+ "-DSSE2_FOUND=$(usex cpu_flags_x86_sse2 TRUE FALSE)"
+ "-DUSE_HOST_CFLAGS=FALSE"
+ "-DBUILD_TESTING=$(usex test TRUE FALSE)"
+ "-DENABLE_SCREEN_TESTS=FALSE"
+ "-DUSE_EXTERNAL_TINYXML2=TRUE"
+ )
+ cmake-utils_src_configure
+}