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