[mrpt] Updated gcc4.7 patches
rmattes
rmattes at fedoraproject.org
Wed Aug 22 02:09:19 UTC 2012
commit c6634cc5ce4f6cc74aff15d0855cb9f841d431f5
Author: Rich Mattes <richmattes at gmail.com>
Date: Tue Aug 21 22:08:50 2012 -0400
Updated gcc4.7 patches
mrpt-0.9.5.gcc47.patch | 30 ++++++++++++++++++++++++++----
mrpt.spec | 32 ++++++++++++++++++++++++--------
2 files changed, 50 insertions(+), 12 deletions(-)
---
diff --git a/mrpt-0.9.5.gcc47.patch b/mrpt-0.9.5.gcc47.patch
index c3ed3de..e31b71d 100644
--- a/mrpt-0.9.5.gcc47.patch
+++ b/mrpt-0.9.5.gcc47.patch
@@ -1,6 +1,6 @@
diff -up ./mrpt-0.9.5/libs/base/include/mrpt/math/eigen_plugins.h.gcc47 ./mrpt-0.9.5/libs/base/include/mrpt/math/eigen_plugins.h
---- ./mrpt-0.9.5/libs/base/include/mrpt/math/eigen_plugins.h.gcc47 2012-07-14 19:46:25.374532651 -0400
-+++ ./mrpt-0.9.5/libs/base/include/mrpt/math/eigen_plugins.h 2012-07-14 19:46:57.228764489 -0400
+--- ./mrpt-0.9.5/libs/base/include/mrpt/math/eigen_plugins.h.gcc47 2011-05-31 17:22:27.000000000 -0400
++++ ./mrpt-0.9.5/libs/base/include/mrpt/math/eigen_plugins.h 2012-07-15 11:41:56.486414550 -0400
@@ -394,8 +394,8 @@ public:
outStdVector.resize(cols());
for (Index i=0;i<cols();i++)
@@ -14,7 +14,18 @@ diff -up ./mrpt-0.9.5/libs/base/include/mrpt/math/eigen_plugins.h.gcc47 ./mrpt-0
diff -up ./mrpt-0.9.5/libs/base/include/mrpt/otherlibs/stlplus/smart_ptr.hpp.gcc47 ./mrpt-0.9.5/libs/base/include/mrpt/otherlibs/stlplus/smart_ptr.hpp
--- ./mrpt-0.9.5/libs/base/include/mrpt/otherlibs/stlplus/smart_ptr.hpp.gcc47 2010-07-15 21:13:00.000000000 -0400
-+++ ./mrpt-0.9.5/libs/base/include/mrpt/otherlibs/stlplus/smart_ptr.hpp 2012-07-14 19:46:08.978898821 -0400
++++ ./mrpt-0.9.5/libs/base/include/mrpt/otherlibs/stlplus/smart_ptr.hpp 2012-07-15 11:43:27.393783416 -0400
+@@ -271,8 +271,8 @@ namespace stlplus
+ smart_ptr(void) {}
+ explicit smart_ptr(const T& data) : smart_ptr_base<T, constructor_copy<T>,COUNTER >(data) {}
+ explicit smart_ptr(T* data) : smart_ptr_base<T, constructor_copy<T>,COUNTER >(data) {}
+- smart_ptr<T>& operator=(const T& data) {set_value(data); return *this;}
+- smart_ptr<T>& operator=(const smart_ptr<T>& r) {alias(r); return *this;}
++ smart_ptr<T>& operator=(const T& data) {this->set_value(data); return *this;}
++ smart_ptr<T>& operator=(const smart_ptr<T>& r) {this->alias(r); return *this;}
+ ~smart_ptr(void) {}
+ };
+
@@ -286,8 +286,8 @@ namespace stlplus
smart_ptr_clone(void) {}
explicit smart_ptr_clone(const T& data) : smart_ptr_base<T, clone_copy<T>, COUNTER >(data) {}
@@ -26,9 +37,20 @@ diff -up ./mrpt-0.9.5/libs/base/include/mrpt/otherlibs/stlplus/smart_ptr.hpp.gcc
~smart_ptr_clone(void) {}
};
+@@ -301,8 +301,8 @@ namespace stlplus
+ smart_ptr_nocopy(void) {}
+ explicit smart_ptr_nocopy(const T& data) : smart_ptr_base<T, no_copy<T>, COUNTER >(data) {}
+ explicit smart_ptr_nocopy(T* data) : smart_ptr_base<T, no_copy<T>, COUNTER >(data) {}
+- smart_ptr_nocopy<T>& operator=(const T& data) {set_value(data); return *this;}
+- smart_ptr_nocopy<T>& operator=(const smart_ptr_nocopy<T>& r) {alias(r); return *this;}
++ smart_ptr_nocopy<T>& operator=(const T& data) {this->set_value(data); return *this;}
++ smart_ptr_nocopy<T>& operator=(const smart_ptr_nocopy<T>& r) {this->alias(r); return *this;}
+ ~smart_ptr_nocopy(void) {}
+ };
+
diff -up ./mrpt-0.9.5/libs/base/src/utils/simpleini/SimpleIni.h.gcc47 ./mrpt-0.9.5/libs/base/src/utils/simpleini/SimpleIni.h
--- ./mrpt-0.9.5/libs/base/src/utils/simpleini/SimpleIni.h.gcc47 2010-05-14 06:31:39.000000000 -0400
-+++ ./mrpt-0.9.5/libs/base/src/utils/simpleini/SimpleIni.h 2012-07-14 19:46:08.980898899 -0400
++++ ./mrpt-0.9.5/libs/base/src/utils/simpleini/SimpleIni.h 2012-07-15 11:41:56.487414587 -0400
@@ -416,7 +416,7 @@ public:
return *this;
}
diff --git a/mrpt.spec b/mrpt.spec
index 447b56d..cb7002f 100644
--- a/mrpt.spec
+++ b/mrpt.spec
@@ -1,7 +1,7 @@
Summary: Libraries and programs for mobile robot SLAM and navigation
Name: mrpt
-Version: 0.9.5
-Release: 0.6.20110917svn2662%{?dist}
+Version: 0.9.6
+Release: 1%{?dist}
License: GPLv3+
Group: Development/Libraries
URL: http://www.mrpt.org/
@@ -15,15 +15,19 @@ URL: http://www.mrpt.org/
# following commands to generate the tarball:
# svn export http://babel.isa.uma.es/mrpt-browse-code/mrpt-0.7.0 mrpt-0.7.0
# tar -czvf mrpt-0.7.0-20090529svn1047.tar.gz mrpt-0.70
-Source: http://archive.mrpt.org/fedora-packages/mrpt-0.9.5-20110917svn2662.tar.gz
+#Source: http://archive.mrpt.org/fedora-packages/mrpt-0.9.5-20110917svn2662.tar.gz
+Source0: http://sourceforge.net/projects/mrpt/files/MRPT-all/MRPT-0.9.6/mrpt-0.9.6.tar.gz
Patch0: mrpt-0.9.5.gcc47.patch
Patch1: mrpt-0.9.5.gzip.patch
+Patch2: mrpt-0.9.6-eigen306.patch
+Patch3: mrpt-0.9.6-pcl16.patch
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
BuildRequires: cmake
BuildRequires: wxGTK-devel, opencv-devel, freeglut-devel, lib3ds-devel
BuildRequires: boost-devel
+BuildRequires: eigen3-devel pcl-devel
BuildRequires: doxygen, ghostscript, graphviz
BuildRequires: tex(latex), tex(dvips)
%ifnarch s390 s390x
@@ -260,8 +264,10 @@ with Doxygen.
%prep
%setup -q
-%patch0 -p2 -b .gcc47
+#%patch0 -p2 -b .gcc47
%patch1 -p2 -b .gzip
+%patch2 -p2 -b .eigen306
+%patch3 -p2 -b .pcl16
# Fix encoding of the mrpt-book file
#gzip -d doc/mrpt-book.ps.gz
#iconv -f ISO8859-1 -t UTF-8 doc/mrpt-book.ps > mrpt-book.ps.conv
@@ -271,18 +277,28 @@ with Doxygen.
%build
# The flag CMAKE_MRPT_IS_RPM_PACKAGE disables global "-mtune=native"
-%cmake . -DCMAKE_MRPT_IS_RPM_PACKAGE=1
-make VERBOSE=1 %{?_smp_mflags}
+mkdir build
+cd build
+%cmake -DCMAKE_MRPT_IS_RPM_PACKAGE=1 \
+ -DCMAKE_BUILD_TYPE=NONE \
+ -DEIGEN_USE_EMBEDDED_VERSION=OFF \
+ -DBUILD_KINECT=OFF \
+ -DBUILD_ARIA=OFF \
+ -DBUILD_XSENS=OFF \
+ ..
+
+make VERBOSE=1
+#%{?_smp_mflags}
make documentation_html
make man_pages_all
%check
export LD_LIBRARY_PATH=$(pwd)/lib
-make test VERBOSE=1 ARGS="-VV" || echo "**Warning**: unit tests failed, check whether it was only due to SSE* stuff"
+make -C build test VERBOSE=1 ARGS="-VV" || echo "**Warning**: unit tests failed, check whether it was only due to SSE* stuff"
%install
rm -rf $RPM_BUILD_ROOT
-make install DESTDIR=$RPM_BUILD_ROOT
+make -C build install DESTDIR=$RPM_BUILD_ROOT
# Validate .g files:
find ${RPM_BUILD_ROOT}%{_datadir}/applications/ -name "*.desktop" | xargs -I FIL desktop-file-validate FIL
More information about the scm-commits
mailing list