]> git.pld-linux.org Git - packages/pcl.git/blob - pcl.spec
- rebuild with boost 1.63.0
[packages/pcl.git] / pcl.spec
1 # TODO: MPI, ROS?
2 #
3 # Conditional build:
4 %bcond_without  apidocs # do not build and package API docs
5 %bcond_without  fzapi   # Fotonic FZ API support
6 %bcond_with     sse     # SSE/SSE2/SSE3 support
7 %bcond_with     tawara  # Tawara video output (pcl_video)
8 %bcond_without  vtk     # VTK support in libpcl_{io,surface} + libpcl_{apps,visualization} libs
9
10 Summary:        Point Cloud Library - library for point cloud processing
11 Summary(pl.UTF-8):      Point Cloud Library - biblioteka do operacji na chmurze punktów
12 Name:           pcl
13 Version:        1.7.2
14 Release:        13
15 License:        BSD
16 Group:          Libraries
17 #Source0Download: http://pointclouds.org/downloads/
18 Source0:        https://github.com/PointCloudLibrary/pcl/archive/%{name}-%{version}.tar.gz
19 # Source0-md5:  02c72eb6760fcb1f2e359ad8871b9968
20 Patch0:         %{name}-fz_api.patch
21 Patch1:         %{name}-tawara.patch
22 Patch2:         %{name}-openni.patch
23 Patch3:         eigen-dependency.patch
24 Patch4:         vtk7.patch
25 Patch5:         vtk71.patch
26 Patch6:         vtkOpenGL2.patch
27 Patch7:         fix-return-type.patch
28 URL:            http://pointclouds.org/
29 BuildRequires:  OpenGL-devel
30 BuildRequires:  OpenGL-GLU-devel
31 BuildRequires:  OpenNI-devel
32 BuildRequires:  OpenNI2-devel
33 BuildRequires:  QtCore-devel >= 4
34 BuildRequires:  QtOpenGL-devel >= 4
35 BuildRequires:  boost-devel >= 1.43
36 BuildRequires:  cmake >= 2.8
37 BuildRequires:  eigen3 >= 3
38 BuildRequires:  flann-devel >= 1.7.0
39 %{?with_fzapi:BuildRequires:    fz-api-devel}
40 BuildRequires:  gcc-c++ >= 6:4.2
41 BuildRequires:  libgomp-devel
42 BuildRequires:  libpcap-devel
43 BuildRequires:  libpng-devel
44 BuildRequires:  libstdc++-devel
45 BuildRequires:  libusb-devel >= 1.0
46 BuildRequires:  qhull-devel
47 BuildRequires:  qt4-build >= 4
48 BuildRequires:  python
49 BuildRequires:  sed >= 4.0
50 %{?with_tawara:BuildRequires:   tawara-devel}
51 # FIXME: only vtk-devel is really required, the rest (java,python,tcl runtimes) only because of checks in VTK cmake files
52 %{?with_vtk:BuildRequires:      vtk-devel >= 6}
53 %{?with_vtk:BuildRequires:      vtk-java >= 6}
54 %{?with_vtk:BuildRequires:      vtk-python >= 6}
55 %{?with_vtk:BuildRequires:      vtk-tcl >= 6}
56 %if %{with apidocs}
57 BuildRequires:  doxygen
58 BuildRequires:  python3-sphinxcontrib-doxylink >= 1.3
59 BuildRequires:  sphinx-pdg >= 1.3.3-2
60 BuildRequires:  texlive-latex-ams
61 %endif
62 BuildRoot:      %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
63
64 %description
65 The Point Cloud Library (PCL) is a standalone, large scale, open
66 project for 3D point cloud processing.
67
68 The PCL framework contains numerous state-of-the art algorithms
69 including filtering, feature estimation, surface reconstruction,
70 registration, model fitting and segmentation, as well as higher level
71 tools for performing mapping and object recognition. Think of it as
72 the Boost of 3D point cloud processing.
73
74 %description -l pl.UTF-8
75 Biblioteka PCL (Point Cloud Processing) to samodzielna, wielkoskalowa,
76 mająca otwarte źródła biblioteka do przetwarzania chmury punktów 3D.
77
78 Szkielet PCL zawiera wiele współczesnych algorytmów, obejmujących
79 filtrowanie, przybliżanie cech, rekonstrukcję powierzchni,
80 rejestrację, dopasowywanie modeli oraz segmentację, a także narzędzia
81 wyższego poziomu do wykonywania odwzorowań oraz rozpoznawania
82 obiektów. O bibliotece można myśleć jako odpowiedniku Boosta do
83 przetwarzania chmury punktów 3D.
84
85 %package devel
86 Summary:        Header files for PCL library
87 Summary(pl.UTF-8):      Pliki nagłówkowe biblioteki PCL
88 Group:          Development/Libraries
89 Requires:       %{name} = %{version}-%{release}
90 Requires:       boost-devel >= 1.44
91 Requires:       eigen3 >= 3
92 %{?with_vtk:Requires:   vtk-devel >= 6}
93
94 %description devel
95 Header files for PCL library.
96
97 %description devel -l pl.UTF-8
98 Pliki nagłówkowe biblioteki PCL.
99
100 %package apidocs
101 Summary:        PCL API documentation and tutorials
102 Summary(pl.UTF-8):      Dokumentacja API oraz wprowadzenie do biblioteki PCL
103 Group:          Documentation
104 %if "%{_rpmversion}" >= "5"
105 BuildArch:      noarch
106 %endif
107
108 %description apidocs
109 API documentation and tutorials for PCL library.
110
111 %description apidocs -l pl.UTF-8
112 Dokumentacja API oraz wprowadzenie do biblioteki PCL.
113
114 %prep
115 %setup -q -n pcl-pcl-%{version}
116 %patch0 -p1
117 %patch1 -p1
118 %patch2 -p1
119 %patch3 -p1
120 %patch4 -p1
121 %patch5 -p1
122 %patch6 -p1
123 %patch7 -p1
124
125 %build
126 mkdir build
127 cd build
128 # LIB_INSTALL_DIR specified by PLD cmake macro is incompatible with what PCL expects
129 %cmake .. \
130         -DLIB_INSTALL_DIR=%{_lib} \
131 %if %{with fzapi}
132         -DFZAPI_DIR=/usr \
133         -DFZAPI_INCLUDE_DIR=/usr/include \
134         -DFZAPI_LIBS=%{_libdir}/libfz_api.so \
135 %endif
136 %if %{with apidocs}
137         -DWITH_DOCS=ON \
138         -DWITH_TUTORIALS=ON \
139 %endif
140         %{!?with_sse:-DPCL_ENABLE_SSE=OFF}
141
142 # NOTE: -j1 because of OOM on th-x86_64
143 %{__make} -j1
144
145 %install
146 rm -rf $RPM_BUILD_ROOT
147
148 %{__make} -C build install \
149         DESTDIR=$RPM_BUILD_ROOT
150
151 %clean
152 rm -rf $RPM_BUILD_ROOT
153
154 %post   -p /sbin/ldconfig
155 %postun -p /sbin/ldconfig
156
157 %files
158 %defattr(644,root,root,755)
159 %doc AUTHORS.txt LICENSE.txt
160 %attr(755,root,root) %{_bindir}/pcl_compute_hausdorff
161 %attr(755,root,root) %{_bindir}/pcl_compute_hull
162 %attr(755,root,root) %{_bindir}/pcl_concatenate_points_pcd
163 %attr(755,root,root) %{_bindir}/pcl_convert_pcd_ascii_binary
164 %attr(755,root,root) %{_bindir}/pcl_demean_cloud
165 %attr(755,root,root) %{_bindir}/pcl_fast_bilateral_filter
166 %attr(755,root,root) %{_bindir}/pcl_generate
167 %attr(755,root,root) %{_bindir}/pcl_grid_min
168 %attr(755,root,root) %{_bindir}/pcl_hdl_grabber
169 %attr(755,root,root) %{_bindir}/pcl_linemod_detection
170 %attr(755,root,root) %{_bindir}/pcl_local_max
171 %attr(755,root,root) %{_bindir}/pcl_lum
172 %attr(755,root,root) %{_bindir}/pcl_match_linemod_template
173 %attr(755,root,root) %{_bindir}/pcl_morph
174 %attr(755,root,root) %{_bindir}/pcl_ndt2d
175 %attr(755,root,root) %{_bindir}/pcl_ndt3d
176 %attr(755,root,root) %{_bindir}/pcl_obj2pcd
177 %attr(755,root,root) %{_bindir}/pcl_oni2pcd
178 %attr(755,root,root) %{_bindir}/pcl_openni_grabber_depth_example
179 %attr(755,root,root) %{_bindir}/pcl_openni_grabber_example
180 %attr(755,root,root) %{_bindir}/pcl_openni_pcd_recorder
181 %attr(755,root,root) %{_bindir}/pcl_outofcore_print
182 %attr(755,root,root) %{_bindir}/pcl_outofcore_process
183 %attr(755,root,root) %{_bindir}/pcl_outofcore_viewer
184 %attr(755,root,root) %{_bindir}/pcl_pcd_change_viewpoint
185 %attr(755,root,root) %{_bindir}/pcl_pcd_convert_NaN_nan
186 %attr(755,root,root) %{_bindir}/pcl_pclzf2pcd
187 %attr(755,root,root) %{_bindir}/pcl_ply2obj
188 %attr(755,root,root) %{_bindir}/pcl_ply2ply
189 %attr(755,root,root) %{_bindir}/pcl_ply2raw
190 %attr(755,root,root) %{_bindir}/pcl_plyheader
191 %attr(755,root,root) %{_bindir}/pcl_progressive_morphological_filter
192 %attr(755,root,root) %{_bindir}/pcl_radius_filter
193 %attr(755,root,root) %{_bindir}/pcl_sac_segmentation_plane
194 %attr(755,root,root) %{_bindir}/pcl_train_linemod_template
195 %attr(755,root,root) %{_bindir}/pcl_uniform_sampling
196 %attr(755,root,root) %{_bindir}/pcl_xyz2pcd
197 %if %{with vtk}
198 %attr(755,root,root) %{_bindir}/pcl_add_gaussian_noise
199 %attr(755,root,root) %{_bindir}/pcl_boundary_estimation
200 %attr(755,root,root) %{_bindir}/pcl_cluster_extraction
201 %attr(755,root,root) %{_bindir}/pcl_compute_cloud_error
202 %attr(755,root,root) %{_bindir}/pcl_crop_to_hull
203 %attr(755,root,root) %{_bindir}/pcl_elch
204 %attr(755,root,root) %{_bindir}/pcl_extract_feature
205 %attr(755,root,root) %{_bindir}/pcl_fpfh_estimation
206 %attr(755,root,root) %{_bindir}/pcl_gp3_surface
207 %attr(755,root,root) %{_bindir}/pcl_ground_based_rgbd_people_detector
208 %attr(755,root,root) %{_bindir}/pcl_hdl_viewer_simple
209 %attr(755,root,root) %{_bindir}/pcl_icp
210 %attr(755,root,root) %{_bindir}/pcl_icp2d
211 %attr(755,root,root) %{_bindir}/pcl_image_grabber_saver
212 %attr(755,root,root) %{_bindir}/pcl_image_grabber_viewer
213 %attr(755,root,root) %{_bindir}/pcl_marching_cubes_reconstruction
214 %attr(755,root,root) %{_bindir}/pcl_mesh2pcd
215 %attr(755,root,root) %{_bindir}/pcl_mesh_sampling
216 %attr(755,root,root) %{_bindir}/pcl_mls_smoothing
217 %attr(755,root,root) %{_bindir}/pcl_normal_estimation
218 %attr(755,root,root) %{_bindir}/pcl_obj2vtk
219 %attr(755,root,root) %{_bindir}/pcl_obj_rec_ransac_accepted_hypotheses
220 %attr(755,root,root) %{_bindir}/pcl_obj_rec_ransac_hash_table
221 %attr(755,root,root) %{_bindir}/pcl_obj_rec_ransac_model_opps
222 %attr(755,root,root) %{_bindir}/pcl_obj_rec_ransac_orr_octree
223 %attr(755,root,root) %{_bindir}/pcl_obj_rec_ransac_orr_octree_zprojection
224 %attr(755,root,root) %{_bindir}/pcl_obj_rec_ransac_result
225 %attr(755,root,root) %{_bindir}/pcl_obj_rec_ransac_scene_opps
226 %attr(755,root,root) %{_bindir}/pcl_octree_viewer
227 %attr(755,root,root) %{_bindir}/pcl_oni_viewer
228 %attr(755,root,root) %{_bindir}/pcl_openni_image
229 %attr(755,root,root) %{_bindir}/pcl_openni_save_image
230 %attr(755,root,root) %{_bindir}/pcl_openni_viewer
231 %attr(755,root,root) %{_bindir}/pcl_organized_pcd_to_png
232 %attr(755,root,root) %{_bindir}/pcl_outlier_removal
233 %attr(755,root,root) %{_bindir}/pcl_passthrough_filter
234 %attr(755,root,root) %{_bindir}/pcl_pcd2ply
235 %attr(755,root,root) %{_bindir}/pcl_pcd2png
236 %attr(755,root,root) %{_bindir}/pcl_pcd2vtk
237 %attr(755,root,root) %{_bindir}/pcl_pcd_grabber_viewer
238 %attr(755,root,root) %{_bindir}/pcl_pcd_image_viewer
239 %attr(755,root,root) %{_bindir}/pcl_plane_projection
240 %attr(755,root,root) %{_bindir}/pcl_ply2pcd
241 %attr(755,root,root) %{_bindir}/pcl_ply2vtk
242 %attr(755,root,root) %{_bindir}/pcl_png2pcd
243 %attr(755,root,root) %{_bindir}/pcl_poisson_reconstruction
244 %attr(755,root,root) %{_bindir}/pcl_registration_visualizer
245 %attr(755,root,root) %{_bindir}/pcl_spin_estimation
246 %attr(755,root,root) %{_bindir}/pcl_tiff2pcd
247 %attr(755,root,root) %{_bindir}/pcl_timed_trigger_test
248 %attr(755,root,root) %{_bindir}/pcl_transform_from_viewpoint
249 %attr(755,root,root) %{_bindir}/pcl_transform_point_cloud
250 %attr(755,root,root) %{_bindir}/pcl_vfh_estimation
251 %if %{with tawara}
252 %attr(755,root,root) %{_bindir}/pcl_video
253 %endif
254 %attr(755,root,root) %{_bindir}/pcl_viewer
255 %attr(755,root,root) %{_bindir}/pcl_virtual_scanner
256 %attr(755,root,root) %{_bindir}/pcl_voxel_grid
257 %attr(755,root,root) %{_bindir}/pcl_voxel_grid_occlusion_estimation
258 %attr(755,root,root) %{_bindir}/pcl_vtk2obj
259 %attr(755,root,root) %{_bindir}/pcl_vtk2pcd
260 %attr(755,root,root) %{_bindir}/pcl_vtk2ply
261 %endif
262 %attr(755,root,root) %{_libdir}/libpcl_common.so.*.*.*
263 %attr(755,root,root) %ghost %{_libdir}/libpcl_common.so.1.7
264 %attr(755,root,root) %{_libdir}/libpcl_features.so.*.*.*
265 %attr(755,root,root) %ghost %{_libdir}/libpcl_features.so.1.7
266 %attr(755,root,root) %{_libdir}/libpcl_filters.so.*.*.*
267 %attr(755,root,root) %ghost %{_libdir}/libpcl_filters.so.1.7
268 %attr(755,root,root) %{_libdir}/libpcl_io.so.*.*.*
269 %attr(755,root,root) %ghost %{_libdir}/libpcl_io.so.1.7
270 %attr(755,root,root) %{_libdir}/libpcl_io_ply.so.*.*.*
271 %attr(755,root,root) %ghost %{_libdir}/libpcl_io_ply.so.1.7
272 %attr(755,root,root) %{_libdir}/libpcl_kdtree.so.*.*.*
273 %attr(755,root,root) %ghost %{_libdir}/libpcl_kdtree.so.1.7
274 %attr(755,root,root) %{_libdir}/libpcl_keypoints.so.*.*.*
275 %attr(755,root,root) %ghost %{_libdir}/libpcl_keypoints.so.1.7
276 %attr(755,root,root) %{_libdir}/libpcl_octree.so.*.*.*
277 %attr(755,root,root) %ghost %{_libdir}/libpcl_octree.so.1.7
278 %attr(755,root,root) %{_libdir}/libpcl_outofcore.so.*.*.*
279 %attr(755,root,root) %ghost %{_libdir}/libpcl_outofcore.so.1.7
280 %attr(755,root,root) %{_libdir}/libpcl_recognition.so.*.*.*
281 %attr(755,root,root) %ghost %{_libdir}/libpcl_recognition.so.1.7
282 %attr(755,root,root) %{_libdir}/libpcl_registration.so.*.*.*
283 %attr(755,root,root) %ghost %{_libdir}/libpcl_registration.so.1.7
284 %attr(755,root,root) %{_libdir}/libpcl_sample_consensus.so.*.*.*
285 %attr(755,root,root) %ghost %{_libdir}/libpcl_sample_consensus.so.1.7
286 %attr(755,root,root) %{_libdir}/libpcl_search.so.*.*.*
287 %attr(755,root,root) %ghost %{_libdir}/libpcl_search.so.1.7
288 %attr(755,root,root) %{_libdir}/libpcl_segmentation.so.*.*.*
289 %attr(755,root,root) %ghost %{_libdir}/libpcl_segmentation.so.1.7
290 %attr(755,root,root) %{_libdir}/libpcl_surface.so.*.*.*
291 %attr(755,root,root) %ghost %{_libdir}/libpcl_surface.so.1.7
292 %attr(755,root,root) %{_libdir}/libpcl_tracking.so.*.*.*
293 %attr(755,root,root) %ghost %{_libdir}/libpcl_tracking.so.1.7
294 %if %{with vtk}
295 %attr(755,root,root) %{_libdir}/libpcl_people.so.*.*.*
296 %attr(755,root,root) %ghost %{_libdir}/libpcl_people.so.1.7
297 %attr(755,root,root) %{_libdir}/libpcl_visualization.so.*.*.*
298 %attr(755,root,root) %ghost %{_libdir}/libpcl_visualization.so.1.7
299 %endif
300
301 %files devel
302 %defattr(644,root,root,755)
303 %attr(755,root,root) %{_libdir}/libpcl_common.so
304 %attr(755,root,root) %{_libdir}/libpcl_features.so
305 %attr(755,root,root) %{_libdir}/libpcl_filters.so
306 %attr(755,root,root) %{_libdir}/libpcl_io.so
307 %attr(755,root,root) %{_libdir}/libpcl_io_ply.so
308 %attr(755,root,root) %{_libdir}/libpcl_kdtree.so
309 %attr(755,root,root) %{_libdir}/libpcl_keypoints.so
310 %attr(755,root,root) %{_libdir}/libpcl_octree.so
311 %attr(755,root,root) %{_libdir}/libpcl_outofcore.so
312 %attr(755,root,root) %{_libdir}/libpcl_recognition.so
313 %attr(755,root,root) %{_libdir}/libpcl_registration.so
314 %attr(755,root,root) %{_libdir}/libpcl_sample_consensus.so
315 %attr(755,root,root) %{_libdir}/libpcl_search.so
316 %attr(755,root,root) %{_libdir}/libpcl_segmentation.so
317 %attr(755,root,root) %{_libdir}/libpcl_surface.so
318 %attr(755,root,root) %{_libdir}/libpcl_tracking.so
319 %if %{with vtk}
320 %attr(755,root,root) %{_libdir}/libpcl_people.so
321 %attr(755,root,root) %{_libdir}/libpcl_visualization.so
322 %endif
323 %{_includedir}/pcl-1.7
324 %{_pkgconfigdir}/pcl_common-1.7.pc
325 %{_pkgconfigdir}/pcl_features-1.7.pc
326 %{_pkgconfigdir}/pcl_filters-1.7.pc
327 %{_pkgconfigdir}/pcl_geometry-1.7.pc
328 %{_pkgconfigdir}/pcl_io-1.7.pc
329 %{_pkgconfigdir}/pcl_kdtree-1.7.pc
330 %{_pkgconfigdir}/pcl_keypoints-1.7.pc
331 %{_pkgconfigdir}/pcl_octree-1.7.pc
332 %{_pkgconfigdir}/pcl_outofcore-1.7.pc
333 %{_pkgconfigdir}/pcl_recognition-1.7.pc
334 %{_pkgconfigdir}/pcl_registration-1.7.pc
335 %{_pkgconfigdir}/pcl_sample_consensus-1.7.pc
336 %{_pkgconfigdir}/pcl_search-1.7.pc
337 %{_pkgconfigdir}/pcl_segmentation-1.7.pc
338 %{_pkgconfigdir}/pcl_surface-1.7.pc
339 %{_pkgconfigdir}/pcl_tracking-1.7.pc
340 %if %{with vtk}
341 %{_pkgconfigdir}/pcl_people-1.7.pc
342 %{_pkgconfigdir}/pcl_visualization-1.7.pc
343 %endif
344 %dir %{_datadir}/pcl-1.7
345 %{_datadir}/pcl-1.7/PCLConfig*.cmake
346
347 %if %{with apidocs}
348 %files apidocs
349 %defattr(644,root,root,755)
350 %dir %{_docdir}/pcl-1.7
351 %{_docdir}/pcl-1.7/advanced
352 %{_docdir}/pcl-1.7/html
353 %{_docdir}/pcl-1.7/tutorials
354 %endif
This page took 0.133357 seconds and 3 git commands to generate.