[packages/pcl] - split up explicit template instantiations so that builders don't run out of memory (patch from fed
baggins
baggins at pld-linux.org
Thu May 9 10:03:14 CEST 2019
commit 83fa93acd2adca32477bfa3b0b52cd5737354445
Author: Jan Rękorajski <baggins at pld-linux.org>
Date: Thu May 9 10:02:40 2019 +0200
- split up explicit template instantiations so that builders don't run out of memory (patch from fedora)
oom.patch | 359 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
pcl.spec | 2 +
2 files changed, 361 insertions(+)
---
diff --git a/pcl.spec b/pcl.spec
index 2fa9765..547f06d 100644
--- a/pcl.spec
+++ b/pcl.spec
@@ -17,6 +17,7 @@ Group: Libraries
#Source0Download: http://pointclouds.org/downloads/
Source0: https://github.com/PointCloudLibrary/pcl/archive/%{name}-%{version}.tar.gz
# Source0-md5: 4d4cfb6bf87cc1f08703deeeac1eb6e2
+Patch0: oom.patch
URL: http://pointclouds.org/
BuildRequires: OpenGL-devel
BuildRequires: OpenGL-GLU-devel
@@ -106,6 +107,7 @@ Dokumentacja API oraz wprowadzenie do biblioteki PCL.
%prep
%setup -q -n pcl-pcl-%{version}
+%patch0 -p1
%build
mkdir build
diff --git a/oom.patch b/oom.patch
new file mode 100644
index 0000000..d268ddb
--- /dev/null
+++ b/oom.patch
@@ -0,0 +1,359 @@
+diff -up ./surface/CMakeLists.txt.oom ./surface/CMakeLists.txt
+--- ./surface/CMakeLists.txt.oom 2018-11-26 06:50:33.000000000 -0500
++++ ./surface/CMakeLists.txt 2019-02-16 20:54:35.581123820 -0500
+@@ -99,7 +99,12 @@ if(build)
+ src/marching_cubes_hoppe.cpp
+ src/marching_cubes_rbf.cpp
+ src/bilateral_upsampling.cpp
+- src/mls.cpp
++ src/mls_n.cpp
++ src/mls_xyz.cpp
++ src/mls_xyzi.cpp
++ src/mls_xyzrgba.cpp
++ src/mls_xyzrgb.cpp
++ src/mls_xyzrgbn.cpp
+ src/organized_fast_mesh.cpp
+ src/simplification_remove_unused_vertices.cpp
+ src/surfel_smoothing.cpp
+diff -up ./surface/src/mls_n.cpp.oom ./surface/src/mls_n.cpp
+--- ./surface/src/mls_n.cpp.oom 2019-02-16 20:55:10.920291479 -0500
++++ ./surface/src/mls_n.cpp 2019-02-16 20:51:12.570160727 -0500
+@@ -0,0 +1,53 @@
++/*
++ * Software License Agreement (BSD License)
++ *
++ * Point Cloud Library (PCL) - www.pointclouds.org
++ * Copyright (c) 2009-2011, Willow Garage, Inc.
++ *
++ * All rights reserved.
++ *
++ * Redistribution and use in source and binary forms, with or without
++ * modification, are permitted provided that the following conditions
++ * are met:
++ *
++ * * Redistributions of source code must retain the above copyright
++ * notice, this list of conditions and the following disclaimer.
++ * * Redistributions in binary form must reproduce the above
++ * copyright notice, this list of conditions and the following
++ * disclaimer in the documentation and/or other materials provided
++ * with the distribution.
++ * * Neither the name of Willow Garage, Inc. nor the names of its
++ * contributors may be used to endorse or promote products derived
++ * from this software without specific prior written permission.
++ *
++ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
++ * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
++ * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
++ * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
++ * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
++ * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
++ * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
++ * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
++ * CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
++ * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
++ * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
++ * POSSIBILITY OF SUCH DAMAGE.
++ *
++ * $Id$
++ *
++ */
++
++#include <pcl/surface/mls.h>
++#include <pcl/surface/impl/mls.hpp>
++
++#ifndef PCL_NO_PRECOMPILE
++#include <pcl/point_types.h>
++#include <pcl/impl/instantiate.hpp>
++#ifdef PCL_ONLY_CORE_POINT_TYPES
++ // Instantiations of specific point types
++ PCL_INSTANTIATE_PRODUCT(MovingLeastSquares, ((pcl::PointXYZ)(pcl::PointXYZI)(pcl::PointXYZRGB)(pcl::PointXYZRGBA)(pcl::PointXYZRGBNormal)(pcl::PointNormal))
++ ((pcl::PointNormal)))
++#else
++ // PCL_INSTANTIATE_PRODUCT(MovingLeastSquares, (PCL_XYZ_POINT_TYPES)(PCL_XYZ_POINT_TYPES))
++#endif
++#endif // PCL_NO_PRECOMPILE
+diff -up ./surface/src/mls_xyz.cpp.oom ./surface/src/mls_xyz.cpp
+--- ./surface/src/mls_xyz.cpp.oom 2019-02-16 20:54:51.891201203 -0500
++++ ./surface/src/mls_xyz.cpp 2019-02-16 20:51:33.080258031 -0500
+@@ -0,0 +1,53 @@
++/*
++ * Software License Agreement (BSD License)
++ *
++ * Point Cloud Library (PCL) - www.pointclouds.org
++ * Copyright (c) 2009-2011, Willow Garage, Inc.
++ *
++ * All rights reserved.
++ *
++ * Redistribution and use in source and binary forms, with or without
++ * modification, are permitted provided that the following conditions
++ * are met:
++ *
++ * * Redistributions of source code must retain the above copyright
++ * notice, this list of conditions and the following disclaimer.
++ * * Redistributions in binary form must reproduce the above
++ * copyright notice, this list of conditions and the following
++ * disclaimer in the documentation and/or other materials provided
++ * with the distribution.
++ * * Neither the name of Willow Garage, Inc. nor the names of its
++ * contributors may be used to endorse or promote products derived
++ * from this software without specific prior written permission.
++ *
++ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
++ * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
++ * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
++ * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
++ * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
++ * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
++ * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
++ * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
++ * CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
++ * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
++ * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
++ * POSSIBILITY OF SUCH DAMAGE.
++ *
++ * $Id$
++ *
++ */
++
++#include <pcl/surface/mls.h>
++#include <pcl/surface/impl/mls.hpp>
++
++#ifndef PCL_NO_PRECOMPILE
++#include <pcl/point_types.h>
++#include <pcl/impl/instantiate.hpp>
++#ifdef PCL_ONLY_CORE_POINT_TYPES
++ // Instantiations of specific point types
++ PCL_INSTANTIATE_PRODUCT(MovingLeastSquares, ((pcl::PointXYZ)(pcl::PointXYZI)(pcl::PointXYZRGB)(pcl::PointXYZRGBA)(pcl::PointXYZRGBNormal)(pcl::PointNormal))
++ ((pcl::PointXYZ)))
++#else
++ PCL_INSTANTIATE_PRODUCT(MovingLeastSquares, (PCL_XYZ_POINT_TYPES)(PCL_XYZ_POINT_TYPES))
++#endif
++#endif // PCL_NO_PRECOMPILE
+diff -up ./surface/src/mls_xyzi.cpp.oom ./surface/src/mls_xyzi.cpp
+--- ./surface/src/mls_xyzi.cpp.oom 2019-02-16 20:54:55.133216580 -0500
++++ ./surface/src/mls_xyzi.cpp 2019-02-16 20:51:59.602383856 -0500
+@@ -0,0 +1,53 @@
++/*
++ * Software License Agreement (BSD License)
++ *
++ * Point Cloud Library (PCL) - www.pointclouds.org
++ * Copyright (c) 2009-2011, Willow Garage, Inc.
++ *
++ * All rights reserved.
++ *
++ * Redistribution and use in source and binary forms, with or without
++ * modification, are permitted provided that the following conditions
++ * are met:
++ *
++ * * Redistributions of source code must retain the above copyright
++ * notice, this list of conditions and the following disclaimer.
++ * * Redistributions in binary form must reproduce the above
++ * copyright notice, this list of conditions and the following
++ * disclaimer in the documentation and/or other materials provided
++ * with the distribution.
++ * * Neither the name of Willow Garage, Inc. nor the names of its
++ * contributors may be used to endorse or promote products derived
++ * from this software without specific prior written permission.
++ *
++ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
++ * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
++ * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
++ * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
++ * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
++ * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
++ * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
++ * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
++ * CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
++ * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
++ * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
++ * POSSIBILITY OF SUCH DAMAGE.
++ *
++ * $Id$
++ *
++ */
++
++#include <pcl/surface/mls.h>
++#include <pcl/surface/impl/mls.hpp>
++
++#ifndef PCL_NO_PRECOMPILE
++#include <pcl/point_types.h>
++#include <pcl/impl/instantiate.hpp>
++#ifdef PCL_ONLY_CORE_POINT_TYPES
++ // Instantiations of specific point types
++ PCL_INSTANTIATE_PRODUCT(MovingLeastSquares, ((pcl::PointXYZ)(pcl::PointXYZI)(pcl::PointXYZRGB)(pcl::PointXYZRGBA)(pcl::PointXYZRGBNormal)(pcl::PointNormal))
++ ((pcl::PointXYZI)))
++#else
++ // PCL_INSTANTIATE_PRODUCT(MovingLeastSquares, (PCL_XYZ_POINT_TYPES)(PCL_XYZ_POINT_TYPES))
++#endif
++#endif // PCL_NO_PRECOMPILE
+diff -up ./surface/src/mls_xyzrgba.cpp.oom ./surface/src/mls_xyzrgba.cpp
+--- ./surface/src/mls_xyzrgba.cpp.oom 2019-02-16 20:54:57.832229383 -0500
++++ ./surface/src/mls_xyzrgba.cpp 2019-02-16 20:52:31.126533414 -0500
+@@ -0,0 +1,53 @@
++/*
++ * Software License Agreement (BSD License)
++ *
++ * Point Cloud Library (PCL) - www.pointclouds.org
++ * Copyright (c) 2009-2011, Willow Garage, Inc.
++ *
++ * All rights reserved.
++ *
++ * Redistribution and use in source and binary forms, with or without
++ * modification, are permitted provided that the following conditions
++ * are met:
++ *
++ * * Redistributions of source code must retain the above copyright
++ * notice, this list of conditions and the following disclaimer.
++ * * Redistributions in binary form must reproduce the above
++ * copyright notice, this list of conditions and the following
++ * disclaimer in the documentation and/or other materials provided
++ * with the distribution.
++ * * Neither the name of Willow Garage, Inc. nor the names of its
++ * contributors may be used to endorse or promote products derived
++ * from this software without specific prior written permission.
++ *
++ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
++ * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
++ * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
++ * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
++ * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
++ * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
++ * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
++ * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
++ * CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
++ * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
++ * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
++ * POSSIBILITY OF SUCH DAMAGE.
++ *
++ * $Id$
++ *
++ */
++
++#include <pcl/surface/mls.h>
++#include <pcl/surface/impl/mls.hpp>
++
++#ifndef PCL_NO_PRECOMPILE
++#include <pcl/point_types.h>
++#include <pcl/impl/instantiate.hpp>
++#ifdef PCL_ONLY_CORE_POINT_TYPES
++ // Instantiations of specific point types
++ PCL_INSTANTIATE_PRODUCT(MovingLeastSquares, ((pcl::PointXYZ)(pcl::PointXYZI)(pcl::PointXYZRGB)(pcl::PointXYZRGBA)(pcl::PointXYZRGBNormal)(pcl::PointNormal))
++ ((pcl::PointXYZRGBA)))
++#else
++ // PCL_INSTANTIATE_PRODUCT(MovingLeastSquares, (PCL_XYZ_POINT_TYPES)(PCL_XYZ_POINT_TYPES))
++#endif
++#endif // PCL_NO_PRECOMPILE
+diff -up ./surface/src/mls_xyzrgb.cpp.oom ./surface/src/mls_xyzrgb.cpp
+--- ./surface/src/mls_xyzrgb.cpp.oom 2019-02-16 20:55:03.524256391 -0500
++++ ./surface/src/mls_xyzrgb.cpp 2019-02-16 20:53:02.609682766 -0500
+@@ -0,0 +1,53 @@
++/*
++ * Software License Agreement (BSD License)
++ *
++ * Point Cloud Library (PCL) - www.pointclouds.org
++ * Copyright (c) 2009-2011, Willow Garage, Inc.
++ *
++ * All rights reserved.
++ *
++ * Redistribution and use in source and binary forms, with or without
++ * modification, are permitted provided that the following conditions
++ * are met:
++ *
++ * * Redistributions of source code must retain the above copyright
++ * notice, this list of conditions and the following disclaimer.
++ * * Redistributions in binary form must reproduce the above
++ * copyright notice, this list of conditions and the following
++ * disclaimer in the documentation and/or other materials provided
++ * with the distribution.
++ * * Neither the name of Willow Garage, Inc. nor the names of its
++ * contributors may be used to endorse or promote products derived
++ * from this software without specific prior written permission.
++ *
++ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
++ * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
++ * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
++ * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
++ * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
++ * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
++ * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
++ * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
++ * CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
++ * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
++ * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
++ * POSSIBILITY OF SUCH DAMAGE.
++ *
++ * $Id$
++ *
++ */
++
++#include <pcl/surface/mls.h>
++#include <pcl/surface/impl/mls.hpp>
++
++#ifndef PCL_NO_PRECOMPILE
++#include <pcl/point_types.h>
++#include <pcl/impl/instantiate.hpp>
++#ifdef PCL_ONLY_CORE_POINT_TYPES
++ // Instantiations of specific point types
++ PCL_INSTANTIATE_PRODUCT(MovingLeastSquares, ((pcl::PointXYZ)(pcl::PointXYZI)(pcl::PointXYZRGB)(pcl::PointXYZRGBA)(pcl::PointXYZRGBNormal)(pcl::PointNormal))
++ ((pcl::PointXYZRGB)))
++#else
++ //PCL_INSTANTIATE_PRODUCT(MovingLeastSquares, (PCL_XYZ_POINT_TYPES)(PCL_XYZ_POINT_TYPES))
++#endif
++#endif // PCL_NO_PRECOMPILE
+diff -up ./surface/src/mls_xyzrgbn.cpp.oom ./surface/src/mls_xyzrgbn.cpp
+--- ./surface/src/mls_xyzrgbn.cpp.oom 2019-02-16 20:55:07.030273022 -0500
++++ ./surface/src/mls_xyzrgbn.cpp 2019-02-16 20:53:34.215832702 -0500
+@@ -0,0 +1,53 @@
++/*
++ * Software License Agreement (BSD License)
++ *
++ * Point Cloud Library (PCL) - www.pointclouds.org
++ * Copyright (c) 2009-2011, Willow Garage, Inc.
++ *
++ * All rights reserved.
++ *
++ * Redistribution and use in source and binary forms, with or without
++ * modification, are permitted provided that the following conditions
++ * are met:
++ *
++ * * Redistributions of source code must retain the above copyright
++ * notice, this list of conditions and the following disclaimer.
++ * * Redistributions in binary form must reproduce the above
++ * copyright notice, this list of conditions and the following
++ * disclaimer in the documentation and/or other materials provided
++ * with the distribution.
++ * * Neither the name of Willow Garage, Inc. nor the names of its
++ * contributors may be used to endorse or promote products derived
++ * from this software without specific prior written permission.
++ *
++ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
++ * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
++ * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
++ * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
++ * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
++ * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
++ * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
++ * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
++ * CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
++ * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
++ * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
++ * POSSIBILITY OF SUCH DAMAGE.
++ *
++ * $Id$
++ *
++ */
++
++#include <pcl/surface/mls.h>
++#include <pcl/surface/impl/mls.hpp>
++
++#ifndef PCL_NO_PRECOMPILE
++#include <pcl/point_types.h>
++#include <pcl/impl/instantiate.hpp>
++#ifdef PCL_ONLY_CORE_POINT_TYPES
++ // Instantiations of specific point types
++ PCL_INSTANTIATE_PRODUCT(MovingLeastSquares, ((pcl::PointXYZ)(pcl::PointXYZI)(pcl::PointXYZRGB)(pcl::PointXYZRGBA)(pcl::PointXYZRGBNormal)(pcl::PointNormal))
++ ((pcl::PointXYZRGBNormal)))
++#else
++ //PCL_INSTANTIATE_PRODUCT(MovingLeastSquares, (PCL_XYZ_POINT_TYPES)(PCL_XYZ_POINT_TYPES))
++#endif
++#endif // PCL_NO_PRECOMPILE
================================================================
---- gitweb:
http://git.pld-linux.org/gitweb.cgi/packages/pcl.git/commitdiff/83fa93acd2adca32477bfa3b0b52cd5737354445
More information about the pld-cvs-commit
mailing list