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