]> git.pld-linux.org Git - packages/opencv.git/blame - opencv.spec
Release 10 (by relup.sh)
[packages/opencv.git] / opencv.spec
CommitLineData
8d499a62 1# TODO:
ca2adc08
JB
2# - contrib subpackage(s)
3# - contrib BRs:
4# opencv_contrib-3.1.0/modules/cnn_3dobj/CMakeLists.txt:find_package(Caffe)
5# opencv_contrib-3.1.0/modules/cnn_3dobj/CMakeLists.txt:find_package(Protobuf)
6# opencv_contrib-3.1.0/modules/cnn_3dobj/CMakeLists.txt:find_package(Glog)
7# opencv_contrib-3.1.0/modules/hdf/CMakeLists.txt:find_package(HDF5)
8# opencv_contrib-3.1.0/modules/sfm/CMakeLists.txt:find_package(Ceres QUIET)
9# opencv_contrib-3.1.0/modules/text/CMakeLists.txt:find_package(Tesseract)
09d132a9
ER
10# unpackaged (3.4.0)
11#/usr/share/OpenCV/3rdparty/usr/lib64/libcorrespondence.a
12#/usr/share/OpenCV/3rdparty/usr/lib64/libmultiview.a
13#/usr/share/OpenCV/3rdparty/usr/lib64/libnumeric.a
14#/usr/share/OpenCV/valgrind.supp
15#/usr/share/OpenCV/valgrind_3rdparty.supp
16
ca2adc08 17#
2acd8ac1 18# - Smartek GigEVisionSDK (http://www.smartekvision.com/ but I can't see SDK with Linux library?)
da5d1e09 19# - CUDA, CUFFT, CUBLAS, NVCUVID support (on bcond)
5df3cf1b 20# - ipp (libippi): http://software.intel.com/en-us/articles/intel-ipp/ (proprietary)
a8d52c2e 21#
0c2d6b7d 22# Conditional build:
a55ba198
JB
23# - general options:
24%bcond_with tbb # Threading Building Blocks support (everywhere)
25%bcond_with sse # use SSE instructions
26%bcond_with sse2 # use SSE2 instructions
da5d1e09
JB
27%bcond_with sse3 # use SSE3 instructions
28%bcond_with ssse3 # use SSSE3 instructions
29%bcond_with sse41 # use SSE4.1 instructions
30%bcond_with sse42 # use SSE4.2 instructions
31%bcond_with avx # use AVX instructions
8d5385eb
JB
32%bcond_without opencl # OpenCL support
33%bcond_with opencl_amdblas # AMD OpenCL BLAS routines
34%bcond_with opencl_amdfft # AMD OpenCL FFT routines
35%bcond_without opengl # OpenGL support
4a401ecc 36%bcond_without openmp # OpenMP support (available when not using tbb)
200823d5 37%bcond_without examples # Install examples
b07433c6
JB
38# - bindings
39%bcond_without java # Java binding
a55ba198 40# - highgui options:
b3920a9d 41%bcond_without ffmpeg # FFMpeg support in highgui
1c9fe580
JB
42%bcond_without gstreamer # GStreamer support in highgui
43%bcond_with openni # OpenNI (Natural Interaction) support in highgui
a55ba198 44%bcond_with pvapi # PvAPI (AVT GigE cameras) support in highgui (proprietary)
1c9fe580 45%bcond_with qt # Qt backend instead of GTK+ in highgui
1c9fe580 46%bcond_with unicap # Unicap support in highgui (GPL)
da5d1e09 47%bcond_without v4l # Video4Linux in highgui
a55ba198 48%bcond_with ximea # m3API (XIMEA cameras) support in highgui (proprietary)
1c9fe580 49%bcond_with xine # XINE support in highgui (GPL)
cf32945e
JB
50# - other modules
51%bcond_without vtk # VTK library support (opencv_viz module)
a4737151 52
e36ac029 53%ifarch pentium3 pentium4 %{x8664} x32
1c9fe580
JB
54%define with_sse 1
55%endif
e36ac029 56%ifarch pentium4 %{x8664} x32
1c9fe580
JB
57%define with_sse2 1
58%endif
901927d3 59Summary: A library of programming functions mainly aimed at real time computer vision
0c2d6b7d 60Summary(pl.UTF-8): Biblioteka funkcji do grafiki komputerowej w czasie rzeczywistym
901927d3 61Name: opencv
701be548 62Version: 4.5.1
c1be103e 63Release: 10
901927d3 64Epoch: 1
d5e56e66
JB
65%if %{with unicap} || %{with xine}
66License: GPL (enforced by used libraries), BSD (opencv itself)
67%else
901927d3 68License: BSD
d5e56e66 69%endif
901927d3 70Group: Libraries
200823d5 71Source0: https://github.com/Itseez/opencv/archive/%{version}/%{name}-%{version}.tar.gz
701be548 72# Source0-md5: 2205d3169238ec1f184438a96de68513
b287af3c 73Source1: https://github.com/Itseez/opencv_contrib/archive/%{version}/%{name}_contrib-%{version}.tar.gz
701be548 74# Source1-md5: 19a31bf7271978ab426112dbf5d1b83f
8a121398
JR
75# See opencv_contrib-3.4.1/modules/xfeatures2d/cmake/download_boostdesc.cmake
76Source10: https://raw.githubusercontent.com/opencv/opencv_3rdparty/34e4206aef44d50e6bbcd0ab06354b52e7466d26/boostdesc_bgm.i
77# Source10-md5: 0ea90e7a8f3f7876d450e4149c97c74f
78Source11: https://raw.githubusercontent.com/opencv/opencv_3rdparty/34e4206aef44d50e6bbcd0ab06354b52e7466d26/boostdesc_bgm_bi.i
79# Source11-md5: 232c966b13651bd0e46a1497b0852191
80Source12: https://raw.githubusercontent.com/opencv/opencv_3rdparty/34e4206aef44d50e6bbcd0ab06354b52e7466d26/boostdesc_bgm_hd.i
81# Source12-md5: 324426a24fa56ad9c5b8e3e0b3e5303e
82Source13: https://raw.githubusercontent.com/opencv/opencv_3rdparty/34e4206aef44d50e6bbcd0ab06354b52e7466d26/boostdesc_binboost_064.i
83# Source13-md5: 202e1b3e9fec871b04da31f7f016679f
84Source14: https://raw.githubusercontent.com/opencv/opencv_3rdparty/34e4206aef44d50e6bbcd0ab06354b52e7466d26/boostdesc_binboost_128.i
85# Source14-md5: 98ea99d399965c03d555cef3ea502a0b
86Source15: https://raw.githubusercontent.com/opencv/opencv_3rdparty/34e4206aef44d50e6bbcd0ab06354b52e7466d26/boostdesc_binboost_256.i
87# Source15-md5: e6dcfa9f647779eb1ce446a8d759b6ea
88Source16: https://raw.githubusercontent.com/opencv/opencv_3rdparty/34e4206aef44d50e6bbcd0ab06354b52e7466d26/boostdesc_lbgm.i
89# Source16-md5: 0ae0675534aa318d9668f2a179c2a052
90# See opencv_contrib-3.4.1/modules/xfeatures2d/cmake/download_vgg.cmake
91Source20: https://raw.githubusercontent.com/opencv/opencv_3rdparty/fccf7cd6a4b12079f73bbfb21745f9babcd4eb1d/vgg_generated_48.i
92# Source20-md5: e8d0dcd54d1bcfdc29203d011a797179
93Source21: https://raw.githubusercontent.com/opencv/opencv_3rdparty/fccf7cd6a4b12079f73bbfb21745f9babcd4eb1d/vgg_generated_64.i
94# Source21-md5: 7126a5d9a8884ebca5aea5d63d677225
95Source22: https://raw.githubusercontent.com/opencv/opencv_3rdparty/fccf7cd6a4b12079f73bbfb21745f9babcd4eb1d/vgg_generated_80.i
96# Source22-md5: 7cd47228edec52b6d82f46511af325c5
97Source23: https://raw.githubusercontent.com/opencv/opencv_3rdparty/fccf7cd6a4b12079f73bbfb21745f9babcd4eb1d/vgg_generated_120.i
98# Source23-md5: 151805e03568c9f490a5e3a872777b75
454d8108 99# See opencv_contrib-3.4.1/modules/face/CMakeLists.txt
8a121398
JR
100Source30: https://raw.githubusercontent.com/opencv/opencv_3rdparty/8afa57abc8229d611c4937165d20e2a2d9fc5a12/face_landmark_model.dat
101# Source30-md5: 7505c44ca4eb54b4ab1e4777cb96ac05
701be548
JR
102# See opencv-4.5.1/modules/gapi/CMakeLists.txt
103Source40: https://github.com/opencv/ade/archive/v0.1.1f/v0.1.1f.zip
104# Source40-md5: b624b995ec9c439cbc2e9e6ee940d3a2
fe201543
JR
105Patch0: %{name}-ximea.patch
106Patch1: python-install.patch
e652d7a7 107Patch2: pkgconfig-paths.patch
71876184 108Patch3: no-cxx-in-c-header.patch
8a98117d 109Patch4: gcc11.patch
fbba7aaa 110Patch5: ogre2.patch
200823d5 111URL: http://www.opencv.org/
d5e56e66 112%{?with_pvapi:BuildRequires: AVT_GigE_SDK-devel}
8d5385eb 113%{?with_opencl:BuildRequires: OpenCL-devel}
0c2d6b7d 114BuildRequires: OpenEXR-devel
5df3cf1b 115%{?with_opengl:BuildRequires: OpenGL-GLU-devel}
fbba7aaa
JR
116%if %{with opengl}
117BuildRequires: OpenGL-devel
118BuildRequires: libglvnd-libGL-devel
119%endif
5df3cf1b 120# as of OpenCV 2.3.1-2.4.3 there is also check for OpenNI-sensor-PrimeSense, but the result is not used
1c9fe580 121%{?with_openni:BuildRequires: OpenNI-devel}
da5d1e09 122%{?with_ximea:BuildRequires: XIMEA-devel >= 4}
b07433c6 123%{?with_java:BuildRequires: ant}
8a121398 124BuildRequires: boost-devel
ef4af528
JB
125%{?with_opencl_amdblas:BuildRequires: clAmdBlas-devel}
126%{?with_opencl_amdfft:BuildRequires: clAmdFft-devel}
b07433c6 127BuildRequires: cmake >= 2.8
0c2d6b7d 128BuildRequires: doxygen
809ce413 129BuildRequires: eigen3 >= 3
b3920a9d 130%{?with_ffmpeg:BuildRequires: ffmpeg-devel >= 0.7}
4a401ecc 131%{?with_openmp:BuildRequires: gcc-c++ >= 6:4.2}
fb5ded39 132BuildRequires: gflags-devel
74cbdeb2 133BuildRequires: gl2ps-devel
debb38d4 134BuildRequires: glog-devel
0c2d6b7d 135%if %{with gstreamer}
158e0ccc
JB
136BuildRequires: gstreamer-devel >= 1.0
137BuildRequires: gstreamer-plugins-base-devel >= 1.0
0c2d6b7d 138%endif
901927d3 139BuildRequires: jasper-devel
fbba7aaa
JR
140%if %{with java}
141BuildRequires: jdk
142BuildRequires: java-xerces
143%endif
fe32af03 144BuildRequires: khrplatform-devel
158e0ccc 145BuildRequires: libdc1394-devel >= 2
4a401ecc 146%{?with_openmp:BuildRequires: libgomp-devel}
901927d3
AM
147BuildRequires: libjpeg-devel
148BuildRequires: libpng-devel
149BuildRequires: libraw1394-devel
0c2d6b7d 150BuildRequires: libstdc++-devel
901927d3 151BuildRequires: libtiff-devel
148338c5 152BuildRequires: libtool
d5e56e66
JB
153%if %{with unicap}
154BuildRequires: libucil-devel
155BuildRequires: libunicap-devel
156%endif
0c2d6b7d 157BuildRequires: libv4l-devel
4836bff0 158BuildRequires: ogre-devel
af6d2888 159BuildRequires: pkgconfig
77408f59 160BuildRequires: hdf5-devel
701be548 161BuildRequires: protobuf-devel
158e0ccc
JB
162BuildRequires: python >= 2.0
163BuildRequires: python-devel >= 2.0
0c2d6b7d 164BuildRequires: python-numpy-devel
b221500a
JB
165BuildRequires: python3 >= 1:3.2
166BuildRequires: python3-devel >= 1:3.2
167BuildRequires: python3-numpy-devel
901927d3 168BuildRequires: rpm-pythonprov
8d499a62 169BuildRequires: rpmbuild(macros) >= 1.606
1376dffe 170BuildRequires: sed >= 4.0
158e0ccc 171BuildRequires: sphinx-pdg
996927aa 172BuildRequires: swig-python
f8e040cc 173%{?with_tbb:BuildRequires: tbb-devel}
ae3d975d
AM
174%if %{with vtk}
175BuildRequires: vtk-devel >= 5.8.0
fba97d16 176BuildRequires: vtk-java >= 5.8.0
701be548 177BuildRequires: vtk-python3-devel >= 5.8.0
ae3d975d 178%endif
901927d3 179%{?with_xine:BuildRequires: xine-lib-devel}
158e0ccc 180BuildRequires: xorg-lib-libX11-devel
452b38e1 181BuildRequires: zlib-devel
4afb606b 182%if %{with qt}
4afb606b
JB
183BuildRequires: QtCore-devel >= 4
184BuildRequires: QtGui-devel >= 4
5df3cf1b 185%{?with_opengl:BuildRequires: QtOpenGL-devel >= 4}
4afb606b
JB
186BuildRequires: qt4-qmake >= 4
187%else
188BuildRequires: gtk+2-devel >= 2.0
5df3cf1b 189%{?with_opengl:BuildRequires: gtkglext-devel >= 1.0}
4afb606b 190%endif
da5d1e09 191Requires: %{name}-core = %{epoch}:%{version}-%{release}
901927d3
AM
192BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
193
158e0ccc 194%define jver %(echo %{version} | cut -d. -f1-3 | tr -d .)
71c2eb73 195%define sover %(echo %{version} | cut -d. -f1-2)
933de752 196
901927d3
AM
197%description
198OpenCV (Open Source Computer Vision) is a library of programming
199functions mainly aimed at real time computer vision.
200
0c2d6b7d
JB
201Example applications of the OpenCV library are:
202- Human-Computer Interaction (HCI)
203- Object Identification, Segmentation and Recognition
204- Face Recognition
205- Gesture Recognition
206- Motion Tracking
207- Ego Motion, Motion Understanding
208- Structure From Motion (SFM)
209- Stereo and Multi-Camera Calibration and Depth Computation
210- Mobile Robotics.
211
212%description -l pl.UTF-8
213OpenCV (Open Source Computer Vision) to biblioteka funkcji
214przeznaczonych głównie do grafiki komputerowej w czasie rzeczywistym.
215
216Przykładowe zastosowania biblioteki OpenCV to
217- interakcje człowiek-komputer (HCI)
218- identyfikacja, segmentacja i rozpoznawanie obiektów
219- rozpoznawanie twarzy
220- rozpoznawanie gestów
221- śledzenie ruchu
222- rozumienie ruchu
223- SFM (Structure From Motion)
224- kalibracja dwu- i wielokamerowa, obliczanie głębi
225- robotyka ruchu.
901927d3 226
933de752
ER
227%package core
228Summary: OpenCV core libraries
da5d1e09 229Summary(pl.UTF-8): Podstawowe biblioteki OpenCV
933de752 230Group: Libraries
da5d1e09 231Conflicts: opencv < 2.4.6.2-1
933de752
ER
232
233%description core
234This package contains the OpenCV C/C++ core libraries.
235
da5d1e09
JB
236%description core -l pl.UTF-8
237Ten pakiet zawiera podstawowe biblioteki C/C++ OpenCV.
238
cf32945e
JB
239%package viz
240Summary: OpenCV viz library (VTK support)
241Summary(pl.UTF-8): Biblioteka OpenCV viz (obsługa VTK)
242Group: Libraries
243Requires: %{name} = %{epoch}:%{version}-%{release}
244
245%description viz
246OpenCV viz library (VTK support).
247
248%description viz -l pl.UTF-8
249Biblioteka OpenCV viz (obsługa VTK).
250
901927d3 251%package devel
0c2d6b7d
JB
252Summary: Header files for OpenCV library
253Summary(pl.UTF-8): Pliki nagłówkowe biblioteki OpenCV
901927d3
AM
254Group: Development/Libraries
255Requires: %{name} = %{epoch}:%{version}-%{release}
cf32945e
JB
256%if %{with vtk}
257Requires: %{name}-viz = %{epoch}:%{version}-%{release}
258%endif
0c2d6b7d 259Obsoletes: opencv-static
901927d3
AM
260
261%description devel
0c2d6b7d 262Header files for OpenCV library.
901927d3 263
0c2d6b7d
JB
264%description devel -l pl.UTF-8
265Pliki nagłówkowe biblioteki OpenCV.
901927d3 266
9141b1e2
ER
267%package doc
268Summary: Manual for OpenCV
269Summary(fr.UTF-8): Documentation pour OpenCV
270Summary(it.UTF-8): Documentazione di OpenCV
271Summary(pl.UTF-8): Podręcznik dla OpenCV
272Group: Documentation
273# noarch subpackages only when building with rpm5
9141b1e2 274BuildArch: noarch
9141b1e2
ER
275
276%description doc
277Documentation for OpenCV.
278
279%description doc -l fr.UTF-8
280Documentation pour OpenCV.
281
282%description doc -l it.UTF-8
283Documentazione di OpenCV.
284
285%description doc -l pl.UTF-8
286Dokumentacja do OpenCV.
287
200823d5
ER
288%package examples
289Summary: OpenCV code examples
290Group: Documentation
200823d5 291BuildArch: noarch
200823d5
ER
292
293%description examples
294OpenCV code examples.
295
b07433c6
JB
296%package -n java-opencv
297Summary: OpenCV Java bindings
298Summary(pl.UTF-8): Wiązania Javy do OpenCV
299Group: Libraries/Java
300Requires: %{name} = %{epoch}:%{version}-%{release}
301Requires: jre
302
303%description -n java-opencv
304OpenCV Java bindings.
305
306%description -n java-opencv -l pl.UTF-8
307Wiązania Javy do OpenCV.
308
901927d3 309%package -n python-opencv
b221500a
JB
310Summary: OpenCV Python 2 bindings
311Summary(pl.UTF-8): Wiązania Pythona 2 do OpenCV
0c2d6b7d 312Group: Libraries/Python
cd1f0136 313Requires: %{name} = %{epoch}:%{version}-%{release}
9f0b035c 314Requires: python-libs
901927d3
AM
315
316%description -n python-opencv
b221500a 317OpenCV Python 2 bindings.
901927d3 318
0c2d6b7d 319%description -n python-opencv -l pl.UTF-8
b221500a
JB
320Wiązania Pythona 2 do OpenCV.
321
322%package -n python3-opencv
323Summary: OpenCV Python 3 bindings
324Summary(pl.UTF-8): Wiązania Pythona 3 do OpenCV
325Group: Libraries/Python
326Requires: %{name} = %{epoch}:%{version}-%{release}
327Requires: python3-libs
328
329%description -n python3-opencv
330OpenCV Python 3 bindings.
331
332%description -n python3-opencv -l pl.UTF-8
333Wiązania Pythona 3 do OpenCV.
0c2d6b7d 334
901927d3 335%prep
b287af3c 336%setup -q -a1
54551f29 337
da67222a 338%undos CMakeLists.txt
54551f29 339
8a121398 340%patch0 -p1
08b22f18 341%patch1 -p1
e652d7a7 342%patch2 -p1
71876184 343%patch3 -p1
8a98117d 344%patch4 -p1
148338c5 345
701be548
JR
346cache_file() {
347 f="$1"
348 d="$2"
349 md5="$(md5sum "$f" | awk '{print $1}')"
350 file="$(basename "$f")"
351 mkdir -p ".cache/$d"
4e016152 352 ln -s --relative "$f" ".cache/$d/$md5-$file"
701be548
JR
353}
354for f in %{SOURCE10} %{SOURCE11} %{SOURCE12} %{SOURCE13} %{SOURCE14} %{SOURCE15} %{SOURCE16}; do
355 cache_file $f xfeatures2d/boostdesc
356done
357for f in %{SOURCE20} %{SOURCE21} %{SOURCE22} %{SOURCE23}; do
358 cache_file $f xfeatures2d/vgg
359done
360cache_file %{SOURCE30} data
361cache_file %{SOURCE40} ade
362
fbba7aaa
JR
363cd opencv_contrib-%{version}
364%patch5 -p1
365
901927d3 366%build
701be548 367mkdir -p build
95daeb66 368cd build
ea26b025
ER
369
370# handle cmake & ccache
371# http://stackoverflow.com/questions/1815688/how-to-use-ccache-with-cmakec
372if [[ "%{__cc}" = *ccache* ]]; then
373 cc="%{__cc}"
374 cxx="%{__cxx}"
375 ccache="
376 -DCMAKE_C_COMPILER="ccache" -DCMAKE_C_COMPILER_ARG1="${cc#ccache }" \
377 -DCMAKE_CXX_COMPILER="ccache" -DCMAKE_CXX_COMPILER_ARG1="${cxx#ccache }" \
378 "
379fi
380
0c2d6b7d 381%cmake .. \
ea26b025 382 $ccache \
fbba7aaa 383 -DOpenGL_GL_PREFERENCE=GLVND \
08b22f18 384 -DENABLE_PRECOMPILED_HEADERS=OFF \
09d132a9 385 -DOPENCV_LIB_INSTALL_PATH=%{_libdir} \
b287af3c 386 -DOPENCV_EXTRA_MODULES_PATH=../opencv_contrib-%{version}/modules \
da5d1e09 387 -DENABLE_AVX=%{?with_avx:ON}%{!?with_avx:OFF} \
1c9fe580
JB
388 -DENABLE_SSE=%{?with_sse:ON}%{!?with_sse:OFF} \
389 -DENABLE_SSE2=%{?with_sse2:ON}%{!?with_sse2:OFF} \
da5d1e09
JB
390 -DENABLE_SSE3=%{?with_sse3:ON}%{!?with_sse3:OFF} \
391 -DENABLE_SSSE3=%{?with_ssse3:ON}%{!?with_ssse3:OFF} \
392 -DENABLE_SSE41=%{?with_sse41:ON}%{!?with_sse41:OFF} \
393 -DENABLE_SSE42=%{?with_sse42:ON}%{!?with_sse42:OFF} \
95daeb66 394 -DBUILD_NEW_PYTHON_SUPPORT=ON \
701be548 395 -DOPENCV_GENERATE_PKGCONFIG:BOOL=ON \
200823d5
ER
396%if %{with examples}
397 -DINSTALL_C_EXAMPLES=ON \
398 -DINSTALL_PYTHON_EXAMPLES=ON \
399%endif
b3920a9d 400 %{?with_ffmpeg:-DWITH_FFMPEG=ON} \
d5e56e66 401 %{!?with_gstreamer:-DWITH_GSTREAMER=OFF} \
8d5385eb 402 %{?with_opencl:-DWITH_OPENCL=ON} \
faf80a1c
JB
403 %{!?with_opencl_amdblas:-DWITH_OPENCLAMDBLAS=OFF} \
404 %{!?with_opencl_amdfft:-DWITH_OPENCLAMDFFT=OFF} \
5df3cf1b 405 %{?with_opengl:-DWITH_OPENGL=ON} \
4a401ecc 406 %{?with_openmp:-DWITH_OPENMP=ON} \
1c9fe580 407 %{?with_openni:-DWITH_OPENNI=ON} \
809ce413 408 %{?with_pvapi:-DPVAPI_LIBRARY=%{_libdir}/libPvAPI.so}%{!?with_pvapi:-DWITH_PVAPI=OFF} \
5df3cf1b 409 %{?with_qt:-DWITH_QT=ON %{?with_opengl:-DWITH_QT_OPENGL=ON} -DQT_QMAKE_EXECUTABLE=/usr/bin/qmake-qt4} \
f8e040cc 410 %{?with_tbb:-DWITH_TBB=ON} \
d5e56e66 411 %{?with_unicap:-DWITH_UNICAP=ON} \
ed358224 412 %{!?with_v4l:-DWITH_V4L=OFF} \
cf32945e 413 %{?with_vtk:-DWITH_VTK=ON} \
a55ba198 414 %{?with_ximea:-DWITH_XIMEA=ON} \
33a5389a
JR
415 %{?with_xine:-DWITH_XINE=ON} \
416 -DWITH_IPP=OFF
54551f29 417
8b9f61f7 418%{__make}
901927d3
AM
419
420%install
421rm -rf $RPM_BUILD_ROOT
95daeb66 422%{__make} -C build install \
901927d3
AM
423 DESTDIR=$RPM_BUILD_ROOT
424
200823d5
ER
425%if %{with examples}
426install -d $RPM_BUILD_ROOT%{_examplesdir}/%{name}-%{version}
701be548 427mv $RPM_BUILD_ROOT%{_datadir}/opencv4/samples/* $RPM_BUILD_ROOT%{_examplesdir}/%{name}-%{version}
200823d5 428%endif
9141b1e2 429
7545129b 430# disable completeness check incompatible with split packaging
701be548 431%{__sed} -i -e '/^foreach(target .*IMPORT_CHECK_TARGETS/,/^endforeach/d' $RPM_BUILD_ROOT%{_libdir}/cmake/opencv4/OpenCVModules.cmake
7545129b 432
8d499a62
JB
433%py_comp $RPM_BUILD_ROOT%{py_sitedir}
434%py_ocomp $RPM_BUILD_ROOT%{py_sitedir}
435%py_postclean
436
b07433c6
JB
437%if %{with java}
438# move to proper directories, create symlink
439install -d $RPM_BUILD_ROOT%{_javadir}
701be548
JR
440%{__mv} $RPM_BUILD_ROOT%{_javadir}/opencv4/libopencv_java*.so $RPM_BUILD_ROOT%{_libdir}
441sed -i -e 's#/share/java/opencv4/libopencv_java%{jver}\.so#/%{_lib}/libopencv_java%{jver}.so#g' \
442 $RPM_BUILD_ROOT%{_libdir}/cmake/opencv4/OpenCVModules-pld.cmake
443%{__mv} $RPM_BUILD_ROOT%{_javadir}/opencv4/opencv-*.jar $RPM_BUILD_ROOT%{_javadir}
444rmdir $RPM_BUILD_ROOT%{_javadir}/opencv4
b07433c6
JB
445ln -sf $(basename $RPM_BUILD_ROOT%{_javadir}/opencv-*.jar) $RPM_BUILD_ROOT%{_javadir}/opencv.jar
446%endif
447
901927d3
AM
448%clean
449rm -rf $RPM_BUILD_ROOT
450
451%post -p /sbin/ldconfig
452%postun -p /sbin/ldconfig
453
933de752
ER
454%post core -p /sbin/ldconfig
455%postun core -p /sbin/ldconfig
456
485d5dca
JB
457%post viz -p /sbin/ldconfig
458%postun viz -p /sbin/ldconfig
459
b07433c6
JB
460%post -n java-opencv -p /sbin/ldconfig
461%postun -n java-opencv -p /sbin/ldconfig
462
901927d3
AM
463%files
464%defattr(644,root,root,755)
f753ced4 465%attr(755,root,root) %{_bindir}/opencv_annotation
701be548 466#%attr(755,root,root) %{_bindir}/opencv_createsamples
09d132a9 467%attr(755,root,root) %{_bindir}/opencv_interactive-calibration
701be548 468#%attr(755,root,root) %{_bindir}/opencv_traincascade
09d132a9
ER
469%attr(755,root,root) %{_bindir}/opencv_version
470%attr(755,root,root) %{_bindir}/opencv_visualisation
701be548 471%attr(755,root,root) %{_bindir}/setup_vars_opencv4.sh
158e0ccc 472%attr(755,root,root) %{_libdir}/libopencv_calib3d.so.*.*.*
71c2eb73 473%attr(755,root,root) %ghost %{_libdir}/libopencv_calib3d.so.%{sover}
158e0ccc 474%attr(755,root,root) %{_libdir}/libopencv_features2d.so.*.*.*
71c2eb73 475%attr(755,root,root) %ghost %{_libdir}/libopencv_features2d.so.%{sover}
158e0ccc 476%attr(755,root,root) %{_libdir}/libopencv_highgui.so.*.*.*
71c2eb73 477%attr(755,root,root) %ghost %{_libdir}/libopencv_highgui.so.%{sover}
158e0ccc 478%attr(755,root,root) %{_libdir}/libopencv_objdetect.so.*.*.*
71c2eb73 479%attr(755,root,root) %ghost %{_libdir}/libopencv_objdetect.so.%{sover}
158e0ccc 480%attr(755,root,root) %{_libdir}/libopencv_stitching.so.*.*.*
71c2eb73 481%attr(755,root,root) %ghost %{_libdir}/libopencv_stitching.so.%{sover}
158e0ccc 482%attr(755,root,root) %{_libdir}/libopencv_superres.so.*.*.*
71c2eb73 483%attr(755,root,root) %ghost %{_libdir}/libopencv_superres.so.%{sover}
158e0ccc 484%attr(755,root,root) %{_libdir}/libopencv_videostab.so.*.*.*
71c2eb73 485%attr(755,root,root) %ghost %{_libdir}/libopencv_videostab.so.%{sover}
b287af3c
JR
486# contrib modules
487%attr(755,root,root) %{_bindir}/opencv_waldboost_detector
488%attr(755,root,root) %ghost %{_libdir}/libopencv_aruco.so.%{sover}
489%attr(755,root,root) %{_libdir}/libopencv_aruco.so.*.*.*
490%attr(755,root,root) %ghost %{_libdir}/libopencv_bgsegm.so.%{sover}
491%attr(755,root,root) %{_libdir}/libopencv_bgsegm.so.*.*.*
492%attr(755,root,root) %ghost %{_libdir}/libopencv_bioinspired.so.%{sover}
493%attr(755,root,root) %{_libdir}/libopencv_bioinspired.so.*.*.*
494%attr(755,root,root) %ghost %{_libdir}/libopencv_ccalib.so.%{sover}
495%attr(755,root,root) %{_libdir}/libopencv_ccalib.so.*.*.*
496%attr(755,root,root) %ghost %{_libdir}/libopencv_datasets.so.%{sover}
497%attr(755,root,root) %{_libdir}/libopencv_datasets.so.*.*.*
498%attr(755,root,root) %ghost %{_libdir}/libopencv_dnn.so.%{sover}
499%attr(755,root,root) %{_libdir}/libopencv_dnn.so.*.*.*
c9cb1c24
JR
500%attr(755,root,root) %ghost %{_libdir}/libopencv_dnn_objdetect.so.%{sover}
501%attr(755,root,root) %{_libdir}/libopencv_dnn_objdetect.so.*.*.*
b287af3c
JR
502%attr(755,root,root) %ghost %{_libdir}/libopencv_dpm.so.%{sover}
503%attr(755,root,root) %{_libdir}/libopencv_dpm.so.*.*.*
504%attr(755,root,root) %ghost %{_libdir}/libopencv_face.so.%{sover}
505%attr(755,root,root) %{_libdir}/libopencv_face.so.*.*.*
09d132a9
ER
506%attr(755,root,root) %ghost %{_libdir}/libopencv_freetype.so.%{sover}
507%attr(755,root,root) %{_libdir}/libopencv_freetype.so.*.*.*
b287af3c
JR
508%attr(755,root,root) %ghost %{_libdir}/libopencv_fuzzy.so.%{sover}
509%attr(755,root,root) %{_libdir}/libopencv_fuzzy.so.*.*.*
510%attr(755,root,root) %ghost %{_libdir}/libopencv_hdf.so.%{sover}
511%attr(755,root,root) %{_libdir}/libopencv_hdf.so.*.*.*
c9cb1c24
JR
512%attr(755,root,root) %ghost %{_libdir}/libopencv_hfs.so.%{sover}
513%attr(755,root,root) %{_libdir}/libopencv_hfs.so.*.*.*
09d132a9
ER
514%attr(755,root,root) %ghost %{_libdir}/libopencv_img_hash.so.%{sover}
515%attr(755,root,root) %{_libdir}/libopencv_img_hash.so.*.*.*
b287af3c
JR
516%attr(755,root,root) %ghost %{_libdir}/libopencv_line_descriptor.so.%{sover}
517%attr(755,root,root) %{_libdir}/libopencv_line_descriptor.so.*.*.*
3752412b
JR
518%attr(755,root,root) %ghost %{_libdir}/libopencv_ovis.so.%{sover}
519%attr(755,root,root) %{_libdir}/libopencv_ovis.so.*.*.*
b287af3c
JR
520%attr(755,root,root) %ghost %{_libdir}/libopencv_optflow.so.%{sover}
521%attr(755,root,root) %{_libdir}/libopencv_optflow.so.*.*.*
09d132a9
ER
522%attr(755,root,root) %ghost %{_libdir}/libopencv_phase_unwrapping.so.%{sover}
523%attr(755,root,root) %{_libdir}/libopencv_phase_unwrapping.so.*.*.*
b287af3c
JR
524%attr(755,root,root) %ghost %{_libdir}/libopencv_plot.so.%{sover}
525%attr(755,root,root) %{_libdir}/libopencv_plot.so.*.*.*
526%attr(755,root,root) %ghost %{_libdir}/libopencv_reg.so.%{sover}
527%attr(755,root,root) %{_libdir}/libopencv_reg.so.*.*.*
528%attr(755,root,root) %ghost %{_libdir}/libopencv_rgbd.so.%{sover}
529%attr(755,root,root) %{_libdir}/libopencv_rgbd.so.*.*.*
530%attr(755,root,root) %ghost %{_libdir}/libopencv_saliency.so.%{sover}
531%attr(755,root,root) %{_libdir}/libopencv_saliency.so.*.*.*
532%attr(755,root,root) %ghost %{_libdir}/libopencv_sfm.so.%{sover}
533%attr(755,root,root) %{_libdir}/libopencv_sfm.so.*.*.*
534%attr(755,root,root) %ghost %{_libdir}/libopencv_stereo.so.%{sover}
535%attr(755,root,root) %{_libdir}/libopencv_stereo.so.*.*.*
536%attr(755,root,root) %ghost %{_libdir}/libopencv_structured_light.so.%{sover}
537%attr(755,root,root) %{_libdir}/libopencv_structured_light.so.*.*.*
538%attr(755,root,root) %ghost %{_libdir}/libopencv_surface_matching.so.%{sover}
539%attr(755,root,root) %{_libdir}/libopencv_surface_matching.so.*.*.*
540%attr(755,root,root) %ghost %{_libdir}/libopencv_text.so.%{sover}
541%attr(755,root,root) %{_libdir}/libopencv_text.so.*.*.*
542%attr(755,root,root) %ghost %{_libdir}/libopencv_tracking.so.%{sover}
543%attr(755,root,root) %{_libdir}/libopencv_tracking.so.*.*.*
544%attr(755,root,root) %ghost %{_libdir}/libopencv_xfeatures2d.so.%{sover}
545%attr(755,root,root) %{_libdir}/libopencv_xfeatures2d.so.*.*.*
546%attr(755,root,root) %ghost %{_libdir}/libopencv_ximgproc.so.%{sover}
547%attr(755,root,root) %{_libdir}/libopencv_ximgproc.so.*.*.*
548%attr(755,root,root) %ghost %{_libdir}/libopencv_xobjdetect.so.%{sover}
549%attr(755,root,root) %{_libdir}/libopencv_xobjdetect.so.*.*.*
550%attr(755,root,root) %ghost %{_libdir}/libopencv_xphoto.so.%{sover}
551%attr(755,root,root) %{_libdir}/libopencv_xphoto.so.*.*.*
701be548
JR
552%attr(755,root,root) %ghost %{_libdir}/libopencv_alphamat.so.%{sover}
553%attr(755,root,root) %{_libdir}/libopencv_alphamat.so.*.*.*
554%attr(755,root,root) %ghost %{_libdir}/libopencv_dnn_superres.so.%{sover}
555%attr(755,root,root) %{_libdir}/libopencv_dnn_superres.so.*.*.*
556%attr(755,root,root) %ghost %{_libdir}/libopencv_gapi.so.%{sover}
557%attr(755,root,root) %{_libdir}/libopencv_gapi.so.*.*.*
558%attr(755,root,root) %ghost %{_libdir}/libopencv_intensity_transform.so.%{sover}
559%attr(755,root,root) %{_libdir}/libopencv_intensity_transform.so.*.*.*
560%attr(755,root,root) %ghost %{_libdir}/libopencv_mcc.so.%{sover}
561%attr(755,root,root) %{_libdir}/libopencv_mcc.so.*.*.*
562%attr(755,root,root) %ghost %{_libdir}/libopencv_quality.so.%{sover}
563%attr(755,root,root) %{_libdir}/libopencv_quality.so.*.*.*
564%attr(755,root,root) %ghost %{_libdir}/libopencv_rapid.so.%{sover}
565%attr(755,root,root) %{_libdir}/libopencv_rapid.so.*.*.*
566
567%dir %{_datadir}/opencv4
568%{_datadir}/opencv4/haarcascades
569%{_datadir}/opencv4/lbpcascades
570%{_datadir}/opencv4/quality
901927d3 571
933de752
ER
572%files core
573%defattr(644,root,root,755)
158e0ccc 574%attr(755,root,root) %{_libdir}/libopencv_core.so.*.*.*
71c2eb73 575%attr(755,root,root) %ghost %{_libdir}/libopencv_core.so.%{sover}
158e0ccc 576%attr(755,root,root) %{_libdir}/libopencv_flann.so.*.*.*
71c2eb73 577%attr(755,root,root) %ghost %{_libdir}/libopencv_flann.so.%{sover}
158e0ccc 578%attr(755,root,root) %{_libdir}/libopencv_imgproc.so.*.*.*
71c2eb73 579%attr(755,root,root) %ghost %{_libdir}/libopencv_imgproc.so.%{sover}
158e0ccc 580%attr(755,root,root) %{_libdir}/libopencv_ml.so.*.*.*
71c2eb73 581%attr(755,root,root) %ghost %{_libdir}/libopencv_ml.so.%{sover}
158e0ccc 582%attr(755,root,root) %{_libdir}/libopencv_photo.so.*.*.*
71c2eb73 583%attr(755,root,root) %ghost %{_libdir}/libopencv_photo.so.%{sover}
158e0ccc 584%attr(755,root,root) %{_libdir}/libopencv_video.so.*.*.*
71c2eb73 585%attr(755,root,root) %ghost %{_libdir}/libopencv_video.so.%{sover}
33a5389a 586%attr(755,root,root) %{_libdir}/libopencv_imgcodecs.so.*.*.*
71c2eb73 587%attr(755,root,root) %ghost %{_libdir}/libopencv_imgcodecs.so.%{sover}
33a5389a 588%attr(755,root,root) %{_libdir}/libopencv_shape.so.*.*.*
71c2eb73 589%attr(755,root,root) %ghost %{_libdir}/libopencv_shape.so.%{sover}
33a5389a 590%attr(755,root,root) %{_libdir}/libopencv_videoio.so.*.*.*
71c2eb73 591%attr(755,root,root) %ghost %{_libdir}/libopencv_videoio.so.%{sover}
cf32945e
JB
592
593%if %{with vtk}
594%files viz
595%defattr(644,root,root,755)
158e0ccc 596%attr(755,root,root) %{_libdir}/libopencv_viz.so.*.*.*
71c2eb73 597%attr(755,root,root) %ghost %{_libdir}/libopencv_viz.so.%{sover}
cf32945e 598%endif
933de752 599
901927d3
AM
600%files devel
601%defattr(644,root,root,755)
cf32945e 602# core
701be548
JR
603%{_libdir}/libopencv_core.so
604%{_libdir}/libopencv_flann.so
605%{_libdir}/libopencv_imgproc.so
606%{_libdir}/libopencv_ml.so
607%{_libdir}/libopencv_photo.so
608%{_libdir}/libopencv_video.so
cf32945e 609# GUI/extensions (base package)
701be548
JR
610%{_libdir}/libopencv_calib3d.so
611%{_libdir}/libopencv_features2d.so
612%{_libdir}/libopencv_highgui.so
613%{_libdir}/libopencv_objdetect.so
614%{_libdir}/libopencv_stitching.so
615%{_libdir}/libopencv_superres.so
616%{_libdir}/libopencv_videostab.so
617%{_libdir}/libopencv_imgcodecs.so
618%{_libdir}/libopencv_shape.so
619%{_libdir}/libopencv_videoio.so
b287af3c 620# contrib
701be548
JR
621%{_libdir}/libopencv_aruco.so
622%{_libdir}/libopencv_bgsegm.so
623%{_libdir}/libopencv_bioinspired.so
624%{_libdir}/libopencv_ccalib.so
625%{_libdir}/libopencv_datasets.so
626%{_libdir}/libopencv_dnn.so
627%{_libdir}/libopencv_dnn_objdetect.so
628%{_libdir}/libopencv_dpm.so
629%{_libdir}/libopencv_face.so
630%{_libdir}/libopencv_freetype.so
631%{_libdir}/libopencv_fuzzy.so
632%{_libdir}/libopencv_hdf.so
633%{_libdir}/libopencv_hfs.so
634%{_libdir}/libopencv_img_hash.so
635%{_libdir}/libopencv_line_descriptor.so
636%{_libdir}/libopencv_optflow.so
637%{_libdir}/libopencv_ovis.so
638%{_libdir}/libopencv_phase_unwrapping.so
639%{_libdir}/libopencv_plot.so
640%{_libdir}/libopencv_reg.so
641%{_libdir}/libopencv_rgbd.so
642%{_libdir}/libopencv_saliency.so
643%{_libdir}/libopencv_sfm.so
644%{_libdir}/libopencv_stereo.so
645%{_libdir}/libopencv_structured_light.so
646%{_libdir}/libopencv_surface_matching.so
647%{_libdir}/libopencv_text.so
648%{_libdir}/libopencv_tracking.so
649%{_libdir}/libopencv_xfeatures2d.so
650%{_libdir}/libopencv_ximgproc.so
651%{_libdir}/libopencv_xobjdetect.so
652%{_libdir}/libopencv_xphoto.so
653%{_libdir}/libopencv_alphamat.so
654%{_libdir}/libopencv_dnn_superres.so
655%{_libdir}/libopencv_gapi.so
656%{_libdir}/libopencv_intensity_transform.so
657%{_libdir}/libopencv_mcc.so
658%{_libdir}/libopencv_quality.so
659%{_libdir}/libopencv_rapid.so
cf32945e
JB
660# viz
661%if %{with vtk}
701be548 662%{_libdir}/libopencv_viz.so
0e077f8d 663%endif
701be548 664%{_includedir}/opencv4
e652d7a7 665%dir %{_libdir}/cmake/opencv4
701be548
JR
666%{_libdir}/cmake/opencv4/OpenCV*.cmake
667%{_pkgconfigdir}/opencv4.pc
901927d3 668
9141b1e2
ER
669%files doc
670%defattr(644,root,root,755)
671# TODO: probably could rebuild them and package via make install
672%doc doc/*
673
200823d5
ER
674%if %{with examples}
675%files examples
676%defattr(644,root,root,755)
677%{_examplesdir}/%{name}-%{version}
678%endif
679
b07433c6
JB
680%if %{with java}
681%files -n java-opencv
682%defattr(644,root,root,755)
835e0cdd
ER
683%attr(755,root,root) %{_libdir}/libopencv_java%{jver}.so
684%{_javadir}/opencv-%{jver}.jar
b07433c6
JB
685%{_javadir}/opencv.jar
686%endif
687
901927d3
AM
688%files -n python-opencv
689%defattr(644,root,root,755)
fe201543
JR
690%dir %{py_sitedir}/cv2
691%dir %{py_sitedir}/cv2/python-*
692%attr(755,root,root) %{py_sitedir}/cv2/python-*/cv2.so
693%{py_sitedir}/cv2/*.py[co]
b221500a
JB
694
695%files -n python3-opencv
696%defattr(644,root,root,755)
fe201543
JR
697%dir %{py3_sitedir}/cv2
698%dir %{py3_sitedir}/cv2/python-*
699%attr(755,root,root) %{py3_sitedir}/cv2/python-*/cv2.cpython-*.so
700%{py3_sitedir}/cv2/*.py
This page took 0.197095 seconds and 4 git commands to generate.