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,COUNTER >(data) {} + explicit smart_ptr(T* data) : smart_ptr_base,COUNTER >(data) {} +- smart_ptr& operator=(const T& data) {set_value(data); return *this;} +- smart_ptr& operator=(const smart_ptr& r) {alias(r); return *this;} ++ smart_ptr& operator=(const T& data) {this->set_value(data); return *this;} ++ smart_ptr& operator=(const smart_ptr& 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, 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, COUNTER >(data) {} + explicit smart_ptr_nocopy(T* data) : smart_ptr_base, COUNTER >(data) {} +- smart_ptr_nocopy& operator=(const T& data) {set_value(data); return *this;} +- smart_ptr_nocopy& operator=(const smart_ptr_nocopy& r) {alias(r); return *this;} ++ smart_ptr_nocopy& operator=(const T& data) {this->set_value(data); return *this;} ++ smart_ptr_nocopy& operator=(const smart_ptr_nocopy& 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