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