代码拉取完成,页面将自动刷新
%undefine __cmake_in_source_build
%global apiversion 1.12
%global soversion 1.12
Name: pcl
Version: 1.12.1
Release: 5
Summary: Library for point cloud processing
License: BSD
URL: http://pointclouds.org/
Source0: %{name}-%{version}.tar.gz
# Look for external metslib, not upstream
Patch0: %{name}-1.12.0-metslib.patch
# Patch for PCLConfig.cmake to find pcl
Patch1: %{name}-1.12.0-fedora.patch
Patch2: %{name}-1.12.1-boost.patch
Patch3: backport-Fix-Bug-between-addText3D-and-QVTKWidget.patch
Patch4: backport-Perform-static-cast-+-transform-instead-of-simple-copy-to-avoid-compiler-warning.patch
Patch5: backport-Fix-segfault-executing-multiscale-feature-persistence.patch
Patch6: backport-Fix-division-by-0-width-in-PointCloud-structured-assign.patch
Patch7: backport-Improve-correspondence-rejector-test.patch
Patch8: CVE-2025-4638.patch
# For plain building
BuildRequires: cmake, gcc-c++, boost-devel
# Documentation
#BuildRequires: doxygen, graphviz, /usr/bin/sphinx-build
BuildRequires: doxygen, graphviz
# mandatory
#BuildRequires: eigen3-static, flann-devel, vtk-devel, gl2ps-devel, hdf5-devel, libxml2-devel, netcdf-cxx-devel, jsoncpp-devel, metslib-static, libXext-devel
BuildRequires: eigen3-static, flann-devel, gl2ps-devel, hdf5-devel, libxml2-devel, jsoncpp-devel, metslib-static, libXext-devel, flann-static
BuildRequires: texlive-latex
# To fix Imported target "VTK::Java" includes non-existent path "/usr/lib/jvm/java/include" in its INTERFACE_INCLUDE_DIRECTORIES
%ifarch %{java_arches}
BuildRequires: java-devel
%endif
# optional
BuildRequires: qt5-qtbase-devel, qhull-devel, libusbx-devel, gtest-devel, qt5-qtwebkit-devel
%ifarch %{ix86} x86_64
BuildRequires: openni-devel
%endif
%description
The Point Cloud Library (or PCL) is a large scale, open project for point
cloud processing.
The PCL framework contains numerous state-of-the art algorithms including
filtering, feature estimation, surface reconstruction, registration, model
fitting and segmentation.
%package devel
Summary: Development files for %{name}
Requires: %{name} = %{version}-%{release}
Requires: libusb-devel
Requires: flann-static
Requires: pkgconfig
#Requires: eigen3-devel, qhull-devel, flann-devel, vtk-devel
Requires: eigen3-devel, qhull-devel, flann-devel
%ifarch %{ix86} x86_64
Requires: openni-devel
%endif
%description devel
The %{name}-devel package contains libraries and header files for
developing applications that use %{name}.
%package tools
Summary: Point cloud tools and viewers
Requires: %{name} = %{version}-%{release}
%description tools
This package contains tools for point cloud file processing and viewers
for point cloud files and live Kinect data.
%package doc
Summary: PCL API documentation
BuildArch: noarch
%description doc
The %{name}-doc package contains API documentation for the Point Cloud
Library.
%prep
%autosetup -p1 -n %{name}-%{name}-%{version}
# Just to make it obvious we're not using any of these
rm -fr recognition/include/pcl/recognition/3rdparty/metslib
rm -fr surface/src/3rdparty/opennurbs
rm -rf surface/include/pcl/surface/3rdparty/opennurbs
%build
# try to reduce memory usage of compile process (can cause OOM errors
# esp. on ARM builders)
%global optflags %(echo %{optflags} | sed -e 's/-g /-g1 /' -e 's/-pipe //' -e's/-ffat-lto-objects/-fno-fat-lto-objects/')
%cmake \
-DCMAKE_BUILD_TYPE=None \
-DWITH_DOCS=ON \
-DWITH_CUDA=OFF \
-DWITH_VTK=OFF \
-DWITH_TUTORIALS=ON \
-DBUILD_apps=ON \
-DBUILD_global_tests=OFF \
-DOPENNI_INCLUDE_DIR:PATH=/usr/include/ni \
-DLIB_INSTALL_DIR=%{_lib} \
%ifarch x86_64
-DPCL_ENABLE_SSE=ON \
%else
-DPCL_ENABLE_SSE=OFF \
%endif
-DPCL_PKGCONFIG_SUFFIX:STRING="" \
-DBUILD_documentation=ON \
-DCMAKE_SKIP_RPATH=ON \
%cmake_build
%install
%cmake_install
# Just a dummy test
rm -f $RPM_BUILD_ROOT%{_bindir}/timed_trigger_test
mkdir -p $RPM_BUILD_ROOT%{_libdir}/cmake/pcl
mv $RPM_BUILD_ROOT%{_datadir}/%{name}-*/*.cmake $RPM_BUILD_ROOT%{_libdir}/cmake/pcl/
mv $RPM_BUILD_ROOT%{_datadir}/%{name}-*/Modules $RPM_BUILD_ROOT%{_libdir}/cmake/pcl/
%check
%ctest || true
%files
%license LICENSE.txt
%doc AUTHORS.txt
%{_libdir}/*.so.%{version}
%{_libdir}/*.so.%{soversion}
%{_datadir}/%{name}-%{apiversion}
%files devel
%{_includedir}/*
%{_libdir}/*.so
%{_libdir}/pkgconfig/*.pc
%{_libdir}/cmake/pcl
%files tools
%{_bindir}/pcl_*
# There are no .desktop files because the GUI tools are rather examples
# to understand a particular feature of PCL.
%files doc
%doc %{_datadir}/doc
%changelog
* Wed May 28 2025 chengwei <chenwei@teligen.net> - 1.12.1-5
- Type:CVE
- CVE:CVE-2025-4638 CVE-2025-4640
- SUG:NA
- DESC:fix CVE-2025-4638 CVE-2025-4640
* Tue Nov 19 2024 Funda Wang <fundawang@yeah.net> - 1.12.1-4
- adopt to new cmake macro
* Thu Aug 22 2024 zhangxingrong <zhangxingrong@uniontech.cn> - 1.12.1-3
- Fix Bug between addText3D and QVTKWidget
- Perform static cast + transform instead of simple copy to avoid compiler warning
- Fix segfault executing multiscale feature persistence
- Fix division by 0 width in PointCloud structured assign
- Improve correspondence rejector test
* Mon Sep 11 2023 will_niutao <niutao2@huawei.com> - 1.12.1-2
- delete unused build require
* Fri Apr 28 2023 will_niutao <niutao2@huawei.com> - 1.12.1-1
- init package for openEuler
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。