[pcl] Update to release 1.7.2
rmattes
rmattes at fedoraproject.org
Wed Dec 17 00:57:10 UTC 2014
commit a8ed99ca87c0d035bb0076e2136e2037302c56ee
Author: Rich Mattes <richmattes at gmail.com>
Date: Tue Dec 16 19:56:26 2014 -0500
Update to release 1.7.2
.gitignore | 1 +
pcl-1.7.1-fedora.patch | 34 --
pcl-1.7.1-metslib.patch | 81 ----
pcl-1.7.2-fedora.patch | 13 +
pcl-1.7.2-metslib.patch | 12 +
pcl-1.7.2-sse2.patch | 21 +
pcl-vtk6.patch | 1184 -----------------------------------------------
pcl.spec | 79 ++--
sources | 2 +-
9 files changed, 83 insertions(+), 1344 deletions(-)
---
diff --git a/.gitignore b/.gitignore
index d8b68b1..2ca8e9d 100644
--- a/.gitignore
+++ b/.gitignore
@@ -8,3 +8,4 @@
/PCL-1.6.0-Source.tar.bz2
/pcl-1.7.0.tar.gz
/pcl-1.7.1.tar.gz
+/pcl-0ddf11a6ad1175b6f1c253da003de20c1295cde0.tar.gz
diff --git a/pcl-1.7.2-fedora.patch b/pcl-1.7.2-fedora.patch
new file mode 100644
index 0000000..c7a265b
--- /dev/null
+++ b/pcl-1.7.2-fedora.patch
@@ -0,0 +1,13 @@
+diff -up ./PCLConfig.cmake.in.fedora ./PCLConfig.cmake.in
+--- ./PCLConfig.cmake.in.fedora 2013-10-07 09:09:35.000000000 -0400
++++ ./PCLConfig.cmake.in 2014-03-21 16:40:01.057216627 -0400
+@@ -490,8 +490,7 @@ if(WIN32 AND NOT MINGW)
+ get_filename_component(PCL_ROOT "${PCL_DIR}" PATH)
+ else(WIN32 AND NOT MINGW)
+ # PCLConfig.cmake is installed to PCL_ROOT/share/pcl-x.y
+- get_filename_component(PCL_ROOT "${PCL_DIR}" PATH)
+- get_filename_component(PCL_ROOT "${PCL_ROOT}" PATH)
++ set(PCL_ROOT "@CMAKE_INSTALL_PREFIX@")
+ endif(WIN32 AND NOT MINGW)
+
+ # check whether PCLConfig.cmake is found into a PCL installation or in a build tree
diff --git a/pcl-1.7.2-metslib.patch b/pcl-1.7.2-metslib.patch
new file mode 100644
index 0000000..e21332a
--- /dev/null
+++ b/pcl-1.7.2-metslib.patch
@@ -0,0 +1,12 @@
+diff -up ./recognition/include/pcl/recognition/impl/hv/hv_go.hpp.metslib ./recognition/include/pcl/recognition/impl/hv/hv_go.hpp
+--- ./recognition/include/pcl/recognition/impl/hv/hv_go.hpp.metslib 2013-10-07 09:09:35.000000000 -0400
++++ ./recognition/include/pcl/recognition/impl/hv/hv_go.hpp 2013-10-26 11:12:04.422310387 -0400
+@@ -445,7 +445,7 @@ void pcl::GlobalHypothesesVerification<M
+ mets::noimprove_termination_criteria noimprove (max_iterations_);
+ mets::linear_cooling linear_cooling;
+ mets::simulated_annealing<move_manager> sa (model, best_recorder, neigh, noimprove, linear_cooling, initial_temp_, 1e-7, 2);
+- sa.setApplyAndEvaluate(true);
++ //sa.setApplyAndEvaluate(true);
+
+ {
+ pcl::ScopeTime t ("SA search...");
diff --git a/pcl-1.7.2-sse2.patch b/pcl-1.7.2-sse2.patch
new file mode 100644
index 0000000..525b067
--- /dev/null
+++ b/pcl-1.7.2-sse2.patch
@@ -0,0 +1,21 @@
+diff -up ./cmake/pcl_find_sse.cmake.sse2 ./cmake/pcl_find_sse.cmake
+--- ./cmake/pcl_find_sse.cmake.sse2 2014-12-15 20:29:32.034099142 -0500
++++ ./cmake/pcl_find_sse.cmake 2014-12-15 20:33:37.162322940 -0500
+@@ -150,16 +150,8 @@ macro(PCL_CHECK_FOR_SSE)
+ set(CMAKE_REQUIRED_FLAGS)
+
+ if(CMAKE_COMPILER_IS_GNUCC OR CMAKE_COMPILER_IS_GNUCXX OR CMAKE_COMPILER_IS_CLANG)
+- if(HAVE_SSE4_2_EXTENSIONS)
+- SET(SSE_FLAGS "${SSE_FLAGS} -msse4.2 -mfpmath=sse")
+- elseif(HAVE_SSE4_1_EXTENSIONS)
+- SET(SSE_FLAGS "${SSE_FLAGS} -msse4.1 -mfpmath=sse")
+- elseif(HAVE_SSE3_EXTENSIONS)
+- SET(SSE_FLAGS "${SSE_FLAGS} -msse3 -mfpmath=sse")
+- elseif(HAVE_SSE2_EXTENSIONS)
++ if(HAVE_SSE2_EXTENSIONS AND ${CMAKE_SYSTEM_PROCESSOR} STREQUAL "x86_64")
+ SET(SSE_FLAGS "${SSE_FLAGS} -msse2 -mfpmath=sse")
+- elseif(HAVE_SSE_EXTENSIONS)
+- SET(SSE_FLAGS "${SSE_FLAGS} -msse -mfpmath=sse")
+ else()
+ # Setting -ffloat-store to alleviate 32bit vs 64bit discrepancies on non-SSE
+ # platforms.
diff --git a/pcl.spec b/pcl.spec
index 4c7e562..af4e4e7 100644
--- a/pcl.spec
+++ b/pcl.spec
@@ -1,20 +1,23 @@
%global apiversion 1.7
+%global commit 0ddf11a6ad1175b6f1c253da003de20c1295cde0
+%global shortcommit %(c=%{commit}; echo ${c:0:7})
Name: pcl
-Version: 1.7.1
-Release: 5%{?dist}
+Version: 1.7.2
+Release: 1%{?dist}
Summary: Library for point cloud processing
Group: System Environment/Libraries
License: BSD
URL: http://pointclouds.org/
-Source0: https://github.com/PointCloudLibrary/pcl/archive/pcl-%{version}.tar.gz
-# Patch to compile against vtk 6.0.0
-Patch0: %{name}-vtk6.patch
+Source0: https://github.com/PointCloudLibrary/%{name}/archive/%{commit}/%{name}-%{commit}.tar.gz
+# Only enable sse2, and only on x86_64
+Patch0: %{name}-1.7.2-sse2.patch
# Patch to compile against system metslib
-Patch1: %{name}-1.7.1-metslib.patch
+Patch1: %{name}-1.7.2-metslib.patch
# Patch for PCLConfig.cmake to find pcl
Patch2: %{name}-1.7.1-fedora.patch
+
# For plain building
BuildRequires: cmake, gcc-c++, boost-devel
# Documentation
@@ -26,7 +29,7 @@ BuildRequires: tetex-latex
%endif
# mandatory
-BuildRequires: eigen3-static, flann-devel, cminpack-devel, vtk-devel, gl2ps-devel, hdf5-devel, python-devel, libxml2-devel, metslib-static
+BuildRequires: eigen3-static, flann-devel, cminpack-devel, vtk-devel, gl2ps-devel, hdf5-devel, python-devel, libxml2-devel, metslib-static, netcdf-cxx-devel, jsoncpp-devel
# optional
BuildRequires: qhull-devel, libusb1-devel, gtest-devel, qtwebkit-devel, python-sphinx
%ifarch %{ix86} x86_64
@@ -79,8 +82,8 @@ Library.
%prep
-%setup -q -n %{name}-%{name}-%{version}
-%patch0 -p1 -b .vtk6
+%setup -qn %{name}-%{commit}
+%patch0 -p1 -b .sse2
%patch1 -p0 -b .metslib
%patch2 -p0 -b .fedora
# Just to make it obvious we're not using any of these
@@ -95,10 +98,14 @@ sed -i "s/, 'sphinxcontrib.doxylink.doxylink'//g" doc/advanced/content/conf.py d
mkdir build
pushd build
%cmake \
+ -DWITH_DOCS=ON \
+ -DWITH_TUTORIALS=ON \
-DCMAKE_BUILD_TYPE=NONE \
+ -DBUILD_apps=ON \
+ -DBUILD_global_tests=OFF \
-DOPENNI_INCLUDE_DIR:PATH=/usr/include/ni \
- -DLIB_INSTALL_DIR=$(echo %{_libdir} | sed -e 's|%{_prefix}/||') \
-%ifarch x86_64
+ -DLIB_INSTALL_DIR=%{_lib} \
+%ifarch x86_64 %{?ix86}:
-DPCL_ENABLE_SSE=ON \
%else
-DPCL_ENABLE_SSE=OFF \
@@ -109,40 +116,32 @@ pushd build
..
# Don't use mflags, we're hitting out of memory errors on the koji builders
-make -j 3
-make doc
-popd
-
-pushd doc/overview
-make
-popd
-
-pushd doc/tutorials
-sed -i "s/, 'sphinxcontrib.doxylink.doxylink'//" content/conf.py
-make
+make %{?_smp_mflags}
+make doc tutorials advanced
popd
-pushd doc/advanced
-make
-popd
-
-
%install
pushd build
make install DESTDIR=$RPM_BUILD_ROOT
+
+# Remove libtool archives
find $RPM_BUILD_ROOT -name '*.la' -exec rm -f {} ';'
# Just a dummy test
rm -f $RPM_BUILD_ROOT%{_bindir}/timed_trigger_test
-#mv $RPM_BUILD_ROOT%{_datadir}/doc/%{name} $RPM_BUILD_ROOT%{_datadir}/doc/%{name}-%{version}
-rm -rf $RPM_BUILD_ROOT%{_datadir}/doc/%{name}
+# Remove installed documentation (will use %doc)
+rm -rf $RPM_BUILD_ROOT%{_datadir}/doc
+
+# Rename the documentation folders from "html"
mv doc/doxygen/html doc/doxygen/api
+mv doc/tutorials/html doc/tutorials/tutorials
+mv doc/advanced/html doc/advanced/advanced
+cp -fr ../doc/advanced/content/files/* doc/advanced/advanced
+cp -fr ../doc/tutorials/content/sources doc/tutorials/tutorials
popd
-mv doc/tutorials/html doc/tutorials/tutorials
-
for f in $RPM_BUILD_ROOT%{_bindir}/{openni_image,pcd_grabber_viewer,pcd_viewer,openni_viewer,oni_viewer}; do
if [ -f $f ]; then
mv $f $RPM_BUILD_ROOT%{_bindir}/pcl_$(basename $f)
@@ -153,17 +152,6 @@ rm $RPM_BUILD_ROOT%{_bindir}/{openni_fast_mesh,openni_ii_normal_estimation,openn
mkdir -p $RPM_BUILD_ROOT%{_libdir}/cmake/pcl
mv $RPM_BUILD_ROOT%{_datadir}/%{name}-*/*.cmake $RPM_BUILD_ROOT%{_libdir}/cmake/pcl
-# Remove installed documentation, will add with doc tags later
-rm -rf $RPM_BUILD_ROOT%{_datadir}/doc/%{name}-%{apiversion}
-
-#mv $RPM_BUILD_ROOT%{_libdir}/pcl/*.cmake $RPM_BUILD_ROOT%{_libdir}/cmake/pcl
-#rmdir $RPM_BUILD_ROOT%{_libdir}/pcl
-
-# This is required to fix crashes in programs linked against pcl_visualization lib
-#sed -i -e 's/vtkWidgets/vtkRendering/' $RPM_BUILD_ROOT%{_libdir}/cmake/pcl/PCLDepends-release.cmake
-
-# At the moment fails due to RPATH problem
-# (RPATH not built into test apps as required)
#%check
#make -C build test || true
@@ -190,10 +178,13 @@ rm -rf $RPM_BUILD_ROOT%{_datadir}/doc/%{name}-%{apiversion}
%files doc
%doc build/doc/doxygen/api
-%doc doc/tutorials/tutorials
-
+%doc build/doc/tutorials/tutorials
+%doc build/doc/advanced/advanced
%changelog
+* Tue Dec 16 2014 Rich Mattes <richmattes at gmail.com> - 1.7.2-1
+- Update to release 1.7.2
+
* Sun Aug 17 2014 Fedora Release Engineering <rel-eng at lists.fedoraproject.org> - 1.7.1-5
- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_22_Mass_Rebuild
diff --git a/sources b/sources
index e6f6346..548428a 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-ce8fa17662544eb4bb7b084191a61ad5 pcl-1.7.1.tar.gz
+e30c8954bcd60098b36ef74dc018a1ff pcl-0ddf11a6ad1175b6f1c253da003de20c1295cde0.tar.gz
More information about the scm-commits
mailing list