use cmake build system, autotools one being deprecated by upstream
This commit is contained in:
parent
dd077b1001
commit
ad88918fc1
163
opencv-cmake-libdir.patch
Normal file
163
opencv-cmake-libdir.patch
Normal file
@ -0,0 +1,163 @@
|
||||
diff -Naur OpenCV-2.0.0.orig/3rdparty/flann/CMakeLists.txt OpenCV-2.0.0/3rdparty/flann/CMakeLists.txt
|
||||
--- OpenCV-2.0.0.orig/3rdparty/flann/CMakeLists.txt 2009-10-01 01:21:00.000000000 +0100
|
||||
+++ OpenCV-2.0.0/3rdparty/flann/CMakeLists.txt 2010-02-25 23:10:44.000000000 +0100
|
||||
@@ -86,8 +86,8 @@
|
||||
INSTALL (
|
||||
TARGETS flann flann_s
|
||||
RUNTIME DESTINATION bin
|
||||
- LIBRARY DESTINATION lib
|
||||
- ARCHIVE DESTINATION lib
|
||||
+ LIBRARY DESTINATION lib${LIB_SUFFIX}
|
||||
+ ARCHIVE DESTINATION lib${LIB_SUFFIX}
|
||||
)
|
||||
|
||||
# INSTALL (
|
||||
diff -Naur OpenCV-2.0.0.orig/CMakeLists.txt OpenCV-2.0.0/CMakeLists.txt
|
||||
--- OpenCV-2.0.0.orig/CMakeLists.txt 2009-10-01 01:21:05.000000000 +0100
|
||||
+++ OpenCV-2.0.0/CMakeLists.txt 2010-02-25 23:10:44.000000000 +0100
|
||||
@@ -405,8 +405,8 @@
|
||||
|
||||
string(REGEX MATCH "[0-9].[0-9]" PYTHON_VERSION_MAJOR_MINOR "${PYTHON_VERSION_FULL}")
|
||||
if(UNIX)
|
||||
- set(PYTHON_PLUGIN_INSTALL_PATH lib/python${PYTHON_VERSION_MAJOR_MINOR}/site-packages/opencv)
|
||||
- set(PYTHON_PACKAGES_PATH lib/python${PYTHON_VERSION_MAJOR_MINOR}/site-packages)
|
||||
+ set(PYTHON_PLUGIN_INSTALL_PATH lib${LIB_SUFFIX}/python${PYTHON_VERSION_MAJOR_MINOR}/site-packages/opencv)
|
||||
+ set(PYTHON_PACKAGES_PATH lib${LIB_SUFFIX}/python${PYTHON_VERSION_MAJOR_MINOR}/site-packages)
|
||||
endif()
|
||||
if(WIN32)
|
||||
get_filename_component(PYTHON_PATH "[HKEY_LOCAL_MACHINE\\SOFTWARE\\Python\\PythonCore\\${PYTHON_VERSION_MAJOR_MINOR}\\InstallPath]" ABSOLUTE CACHE)
|
||||
@@ -731,7 +731,7 @@
|
||||
# Set CMAKE_INCLUDE_DIRS_CONFIGCMAKE to the list of include directories:
|
||||
|
||||
set(CMAKE_INCLUDE_DIRS_CONFIGCMAKE "${CMAKE_INSTALL_PREFIX}/include/opencv")
|
||||
-set(CMAKE_LIB_DIRS_CONFIGCMAKE "${CMAKE_INSTALL_PREFIX}/lib")
|
||||
+set(CMAKE_LIB_DIRS_CONFIGCMAKE "${CMAKE_INSTALL_PREFIX}/lib${LIB_SUFFIX}")
|
||||
|
||||
#exec_program(${CMAKE_COMMAND} ARGS "-E make_directory \"${CMAKE_BINARY_DIR}/unix-install/\"")
|
||||
exec_program(mkdir ARGS "-p \"${CMAKE_BINARY_DIR}/unix-install/\"")
|
||||
@@ -764,19 +764,19 @@
|
||||
# Part 2/2: ${BIN_DIR}/unix-install/opencv.pc -> For use *with* "make install"
|
||||
# prefix=/usr
|
||||
# exec_prefix=${prefix}
|
||||
-# libdir=${exec_prefix}/lib
|
||||
+# libdir=${exec_prefix}/lib${LIB_SUFFIX}
|
||||
# includedir=${prefix}/include/opencv
|
||||
# -------------------------------------------------------------------------------------------
|
||||
set(prefix ${CMAKE_INSTALL_PREFIX})
|
||||
set(exec_prefix "\${prefix}")
|
||||
-set(libdir "\${exec_prefix}/lib")
|
||||
+set(libdir "\${exec_prefix}/lib${LIB_SUFFIX}")
|
||||
set(includedir "\${prefix}/include")
|
||||
set(VERSION ${OPENCV_VERSION})
|
||||
|
||||
configure_file("${CMAKE_CURRENT_SOURCE_DIR}/opencv.pc.cmake.in" "${CMAKE_BINARY_DIR}/unix-install/opencv.pc" @ONLY IMMEDIATE)
|
||||
|
||||
if(UNIX)
|
||||
- install(FILES ${CMAKE_BINARY_DIR}/unix-install/opencv.pc DESTINATION lib/pkgconfig)
|
||||
+ install(FILES ${CMAKE_BINARY_DIR}/unix-install/opencv.pc DESTINATION lib${LIB_SUFFIX}/pkgconfig)
|
||||
endif()
|
||||
|
||||
|
||||
diff -Naur OpenCV-2.0.0.orig/interfaces/ffopencv/CMakeLists.txt OpenCV-2.0.0/interfaces/ffopencv/CMakeLists.txt
|
||||
--- OpenCV-2.0.0.orig/interfaces/ffopencv/CMakeLists.txt 2009-10-01 01:20:57.000000000 +0100
|
||||
+++ OpenCV-2.0.0/interfaces/ffopencv/CMakeLists.txt 2010-02-25 23:10:44.000000000 +0100
|
||||
@@ -33,5 +33,5 @@
|
||||
|
||||
install(TARGETS ${the_target}
|
||||
RUNTIME DESTINATION bin COMPONENT main
|
||||
- LIBRARY DESTINATION lib COMPONENT main
|
||||
+ LIBRARY DESTINATION lib${LIB_SUFFIX} COMPONENT main
|
||||
)
|
||||
diff -Naur OpenCV-2.0.0.orig/src/cv/CMakeLists.txt OpenCV-2.0.0/src/cv/CMakeLists.txt
|
||||
--- OpenCV-2.0.0.orig/src/cv/CMakeLists.txt 2009-10-01 01:20:58.000000000 +0100
|
||||
+++ OpenCV-2.0.0/src/cv/CMakeLists.txt 2010-02-25 23:10:44.000000000 +0100
|
||||
@@ -66,8 +66,8 @@
|
||||
|
||||
install(TARGETS ${the_target}
|
||||
RUNTIME DESTINATION bin COMPONENT main
|
||||
- LIBRARY DESTINATION lib COMPONENT main
|
||||
- ARCHIVE DESTINATION lib COMPONENT main)
|
||||
+ LIBRARY DESTINATION lib${LIB_SUFFIX} COMPONENT main
|
||||
+ ARCHIVE DESTINATION lib${LIB_SUFFIX} COMPONENT main)
|
||||
|
||||
install(FILES ${lib_hdrs}
|
||||
DESTINATION include/opencv
|
||||
diff -Naur OpenCV-2.0.0.orig/src/cvaux/CMakeLists.txt OpenCV-2.0.0/src/cvaux/CMakeLists.txt
|
||||
--- OpenCV-2.0.0.orig/src/cvaux/CMakeLists.txt 2009-10-01 01:20:59.000000000 +0100
|
||||
+++ OpenCV-2.0.0/src/cvaux/CMakeLists.txt 2010-02-25 23:10:44.000000000 +0100
|
||||
@@ -76,8 +76,8 @@
|
||||
|
||||
install(TARGETS ${the_target}
|
||||
RUNTIME DESTINATION bin COMPONENT main
|
||||
- LIBRARY DESTINATION lib COMPONENT main
|
||||
- ARCHIVE DESTINATION lib COMPONENT main)
|
||||
+ LIBRARY DESTINATION lib${LIB_SUFFIX} COMPONENT main
|
||||
+ ARCHIVE DESTINATION lib${LIB_SUFFIX} COMPONENT main)
|
||||
|
||||
install(FILES ${aux_hdrs_ext}
|
||||
DESTINATION include/opencv
|
||||
diff -Naur OpenCV-2.0.0.orig/src/cxcore/CMakeLists.txt OpenCV-2.0.0/src/cxcore/CMakeLists.txt
|
||||
--- OpenCV-2.0.0.orig/src/cxcore/CMakeLists.txt 2009-10-01 01:20:59.000000000 +0100
|
||||
+++ OpenCV-2.0.0/src/cxcore/CMakeLists.txt 2010-02-25 23:10:44.000000000 +0100
|
||||
@@ -66,8 +66,8 @@
|
||||
|
||||
install(TARGETS ${the_target}
|
||||
RUNTIME DESTINATION bin COMPONENT main
|
||||
- LIBRARY DESTINATION lib COMPONENT main
|
||||
- ARCHIVE DESTINATION lib COMPONENT main)
|
||||
+ LIBRARY DESTINATION lib${LIB_SUFFIX} COMPONENT main
|
||||
+ ARCHIVE DESTINATION lib${LIB_SUFFIX} COMPONENT main)
|
||||
|
||||
# install each module headers separately
|
||||
install(FILES ${lib_hdrs}
|
||||
diff -Naur OpenCV-2.0.0.orig/src/highgui/CMakeLists.txt OpenCV-2.0.0/src/highgui/CMakeLists.txt
|
||||
--- OpenCV-2.0.0.orig/src/highgui/CMakeLists.txt 2009-10-01 01:20:58.000000000 +0100
|
||||
+++ OpenCV-2.0.0/src/highgui/CMakeLists.txt 2010-02-25 23:10:44.000000000 +0100
|
||||
@@ -191,8 +191,8 @@
|
||||
if(WIN32)
|
||||
target_link_libraries(${the_target} comctl32 gdi32 ole32)
|
||||
|
||||
- if (MSVC)
|
||||
- target_link_libraries(${the_target} vfw32)
|
||||
+ if (MSVC)
|
||||
+ target_link_libraries(${the_target} vfw32)
|
||||
endif()
|
||||
|
||||
if(MINGW)
|
||||
@@ -206,8 +206,8 @@
|
||||
|
||||
install(TARGETS ${the_target}
|
||||
RUNTIME DESTINATION bin COMPONENT main
|
||||
- LIBRARY DESTINATION lib COMPONENT main
|
||||
- ARCHIVE DESTINATION lib COMPONENT main)
|
||||
+ LIBRARY DESTINATION lib${LIB_SUFFIX} COMPONENT main
|
||||
+ ARCHIVE DESTINATION lib${LIB_SUFFIX} COMPONENT main)
|
||||
|
||||
install(FILES ${highgui_ext_hdrs}
|
||||
DESTINATION include/opencv
|
||||
diff -Naur OpenCV-2.0.0.orig/src/ml/CMakeLists.txt OpenCV-2.0.0/src/ml/CMakeLists.txt
|
||||
--- OpenCV-2.0.0.orig/src/ml/CMakeLists.txt 2009-10-01 01:20:59.000000000 +0100
|
||||
+++ OpenCV-2.0.0/src/ml/CMakeLists.txt 2010-02-25 23:10:44.000000000 +0100
|
||||
@@ -61,8 +61,8 @@
|
||||
|
||||
install(TARGETS ${the_target}
|
||||
RUNTIME DESTINATION bin COMPONENT main
|
||||
- LIBRARY DESTINATION lib COMPONENT main
|
||||
- ARCHIVE DESTINATION lib COMPONENT main)
|
||||
+ LIBRARY DESTINATION lib${LIB_SUFFIX} COMPONENT main
|
||||
+ ARCHIVE DESTINATION lib${LIB_SUFFIX} COMPONENT main)
|
||||
|
||||
install(FILES ${lib_hdrs}
|
||||
DESTINATION include/opencv
|
||||
diff -Naur OpenCV-2.0.0.orig/tests/cxts/CMakeLists.txt OpenCV-2.0.0/tests/cxts/CMakeLists.txt
|
||||
--- OpenCV-2.0.0.orig/tests/cxts/CMakeLists.txt 2009-10-01 01:20:56.000000000 +0100
|
||||
+++ OpenCV-2.0.0/tests/cxts/CMakeLists.txt 2010-02-25 23:10:44.000000000 +0100
|
||||
@@ -63,6 +63,6 @@
|
||||
if(WIN32)
|
||||
install(TARGETS ${the_target}
|
||||
RUNTIME DESTINATION bin COMPONENT main
|
||||
- LIBRARY DESTINATION lib COMPONENT main
|
||||
- ARCHIVE DESTINATION lib COMPONENT main)
|
||||
+ LIBRARY DESTINATION lib${LIB_SUFFIX} COMPONENT main
|
||||
+ ARCHIVE DESTINATION lib${LIB_SUFFIX} COMPONENT main)
|
||||
endif()
|
99
opencv.spec
99
opencv.spec
@ -1,10 +1,10 @@
|
||||
%{!?python_sitelib: %define python_sitelib %(%{__python} -c "from distutils.sysconfig import get_python_lib; print get_python_lib()")}
|
||||
%{!?python_sitearch: %define python_sitearch %(%{__python} -c "from distutils.sysconfig import get_python_lib; print get_python_lib(1)")}
|
||||
%define tar_name OpenCV
|
||||
%global tar_name OpenCV
|
||||
|
||||
Name: opencv
|
||||
Version: 2.0.0
|
||||
Release: 5%{?dist}
|
||||
Release: 6%{?dist}
|
||||
Summary: Collection of algorithms for computer vision
|
||||
|
||||
Group: Development/Libraries
|
||||
@ -13,11 +13,12 @@ License: BSD
|
||||
URL: http://opencv.willowgarage.com/wiki/
|
||||
Source0: http://prdownloads.sourceforge.net/opencvlibrary/%{tar_name}-%{version}.tar.bz2
|
||||
Source1: opencv-samples-Makefile
|
||||
Patch0: opencv-2.0.0-data-automake.patch
|
||||
Patch1: opencv-2.0.0-apps-automake.patch
|
||||
# Fedora cmake macros define -DLIB_SUFFIX=64 on 64 bits platforms
|
||||
Patch0: opencv-cmake-libdir.patch
|
||||
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
|
||||
|
||||
BuildRequires: libtool
|
||||
BuildRequires: cmake >= 2.4
|
||||
|
||||
BuildRequires: gtk2-devel
|
||||
BuildRequires: unicap-devel
|
||||
@ -32,9 +33,9 @@ BuildRequires: libpng-devel
|
||||
BuildRequires: libjpeg-devel
|
||||
BuildRequires: libtiff-devel
|
||||
BuildRequires: libtool
|
||||
BuildRequires: swig >= 1.3.24, zlib-devel, pkgconfig
|
||||
BuildRequires: zlib-devel, pkgconfig
|
||||
BuildRequires: python-devel
|
||||
BuildRequires: python-imaging, numpy
|
||||
BuildRequires: python-imaging, numpy, swig >= 1.3.24
|
||||
%{?_with_ffmpeg:BuildRequires: ffmpeg-devel >= 0.4.9}
|
||||
%{!?_without_gstreamer:BuildRequires: gstreamer-devel}
|
||||
%{?_with_xine:BuildRequires: xine-lib-devel}
|
||||
@ -54,8 +55,18 @@ Requires: pkgconfig
|
||||
%description devel
|
||||
This package contains the OpenCV C/C++ library and header files, as well as
|
||||
documentation. It should be installed if you want to develop programs that
|
||||
will use the OpenCV library.
|
||||
will use the OpenCV library. You should consider installing opencv-devel-docs
|
||||
package.
|
||||
|
||||
%package devel-docs
|
||||
Summary: Development files for using the OpenCV library
|
||||
Group: Development/Libraries
|
||||
Requires: opencv-devel = %{version}-%{release}
|
||||
Requires: pkgconfig
|
||||
BuildArch: noarch
|
||||
|
||||
%description devel-docs
|
||||
This package contains the OpenCV documentation and examples programs.
|
||||
|
||||
%package python
|
||||
Summary: Python bindings for apps which use OpenCV
|
||||
@ -70,10 +81,7 @@ This package contains Python bindings for the OpenCV library.
|
||||
|
||||
%prep
|
||||
%setup -q -n %{tar_name}-%{version}
|
||||
%patch0 -p1 -b .automake
|
||||
%patch1 -p1 -b .automake
|
||||
#Renew the autotools (and remove rpath).
|
||||
autoreconf -vif
|
||||
%patch0 -p1
|
||||
|
||||
%build
|
||||
|
||||
@ -81,18 +89,20 @@ autoreconf -vif
|
||||
export CXXFLAGS="%{__global_cflags} -m32 -fasynchronous-unwind-tables"
|
||||
%endif
|
||||
|
||||
export SWIG_PYTHON_LIBS=%{_libdir}
|
||||
%configure --disable-static --enable-apps \
|
||||
%{?_with_ffmpeg:--with-ffmpeg}%{!?_with_ffmpeg:--without-ffmpeg} \
|
||||
%{!?_without_gstreamer:--with-gstreamer} \
|
||||
%{?_with_xine:--with-xine --without-quicktime} \
|
||||
--with-unicap \
|
||||
--with-1394libs --without-quicktime \
|
||||
%ifarch i386 i586
|
||||
--disable-sse2 \
|
||||
%endif
|
||||
|
||||
make %{?_smp_mflags}
|
||||
# enabled by default if libraries are presents at build time:
|
||||
# GTK, GSTREAMER, UNICAP, 1394, V4L
|
||||
# non available on Fedora: FFMPEG, XINE
|
||||
%cmake -DENABLE_OPENMP=1\
|
||||
%{?_without_gstreamer:-DWITH_GSTREAMER=0} \
|
||||
%{!?_with_ffmpeg:-DWITH_FFMPEG=0} \
|
||||
%{!?_with_xine:-DWITH_XINE=0} \
|
||||
-DBUILD_SWIG_PYTHON_SUPPORT=1 \
|
||||
-DINSTALL_C_EXAMPLES=1 \
|
||||
-DINSTALL_PYTHON_EXAMPLES=1 \
|
||||
.
|
||||
make VERBOSE=1 %{?_smp_mflags}
|
||||
|
||||
|
||||
|
||||
%install
|
||||
@ -106,16 +116,19 @@ rm -f $RPM_BUILD_ROOT%{_datadir}/%{name}/samples/c/build_all.sh \
|
||||
$RPM_BUILD_ROOT%{_datadir}/%{name}/samples/c/facedetect.cmd
|
||||
install -m644 %{SOURCE1} $RPM_BUILD_ROOT%{_datadir}/%{name}/samples/c/GNUmakefile
|
||||
install -m644 cvconfig.h $RPM_BUILD_ROOT%{_includedir}/%{name}/cvconfig.h
|
||||
mkdir -p $RPM_BUILD_ROOT%{_docdir}/%{name}-doc-%{version}/
|
||||
# install documentation
|
||||
install -m644 doc/%{name}.pdf $RPM_BUILD_ROOT%{_docdir}/%{name}-doc-%{version}/%{name}.pdf
|
||||
install -m644 doc/*.{htm,png,jpg} $RPM_BUILD_ROOT%{_docdir}/%{name}-doc-%{version}/
|
||||
|
||||
#Remove unversioned documentation
|
||||
rm -rf $RPM_BUILD_ROOT%{_docdir}/opencv
|
||||
#And Octave since we don't build against it yet
|
||||
rm -rf $RPM_BUILD_ROOT%{_datadir}/opencv/{samples/octave/,ChangeLog,THANKS}
|
||||
|
||||
# fix dos end of lines
|
||||
sed -i 's|\r||g' $RPM_BUILD_ROOT/%{_datadir}/%{name}/samples/c/adaptiveskindetector.cpp
|
||||
# remove unnecessary documentation
|
||||
rm -rf $RPM_BUILD_ROOT%{_datadir}/opencv/{doc/,samples/octave/}
|
||||
|
||||
%check
|
||||
#Check fails since we don't support most video
|
||||
#read/write capability and we don't provide a display
|
||||
# Check fails since we don't support most video
|
||||
# read/write capability and we don't provide a display
|
||||
%ifnarch ppc64
|
||||
make check || :
|
||||
%endif
|
||||
@ -132,12 +145,11 @@ rm -rf $RPM_BUILD_ROOT
|
||||
%files
|
||||
%defattr(-,root,root,-)
|
||||
%doc AUTHORS ChangeLog COPYING THANKS TODO
|
||||
%{_bindir}/opencv-*
|
||||
%{_bindir}/opencv_*
|
||||
%{_libdir}/lib*.so.*
|
||||
%dir %{_datadir}/opencv
|
||||
%{_datadir}/opencv/haarcascades
|
||||
%{_datadir}/opencv/lbpcascades
|
||||
%{_datadir}/opencv/readme.txt
|
||||
|
||||
|
||||
%files devel
|
||||
@ -145,20 +157,37 @@ rm -rf $RPM_BUILD_ROOT
|
||||
%{_includedir}/opencv
|
||||
%{_libdir}/lib*.so
|
||||
%{_libdir}/pkgconfig/opencv.pc
|
||||
%{_datadir}/opencv/OpenCVConfig.cmake
|
||||
|
||||
%files devel-docs
|
||||
%defattr(-,root,root,-)
|
||||
%doc %{_datadir}/doc/opencv-2.0.0/
|
||||
%doc %dir %{_datadir}/opencv/samples
|
||||
%doc %{_datadir}/opencv/samples/c
|
||||
%doc %{_datadir}/opencv/samples/CMake
|
||||
|
||||
%doc %{_docdir}/%{name}-doc-%{version}/%{name}.pdf
|
||||
%doc %{_docdir}/%{name}-doc-%{version}/*.htm
|
||||
%doc %{_docdir}/%{name}-doc-%{version}/%{name}.jpg
|
||||
%doc %{_docdir}/%{name}-doc-%{version}/%{name}-logo*.png
|
||||
|
||||
%files python
|
||||
%defattr(-,root,root,-)
|
||||
%{python_sitearch}/opencv
|
||||
%{python_sitearch}/cv.so
|
||||
%doc %dir %{_datadir}/opencv/samples
|
||||
%doc %{_datadir}/opencv/samples/python
|
||||
# old SWIG wrappers
|
||||
%{python_sitearch}/opencv
|
||||
|
||||
|
||||
%changelog
|
||||
* Thu Feb 25 2010 Haïkel Guémar <karlthered@gmail.com> - 2.0.0-6
|
||||
- use cmake build system
|
||||
- applications renamed to opencv_xxx instead of opencv-xxx
|
||||
- add devel-docs subpackage #546605
|
||||
- add OpenCVConfig.cmake
|
||||
- enable openmp build
|
||||
- enable old SWIG based python wrappers
|
||||
- opencv package is a good boy and use global instead of define
|
||||
|
||||
* Tue Feb 16 2010 Karel Klic <kklic@redhat.com> - 2.0.0-5
|
||||
- Set CXXFLAXS without -match=i386 for i386 architecture #565074
|
||||
|
||||
@ -169,7 +198,7 @@ rm -rf $RPM_BUILD_ROOT
|
||||
- Fixed spec file issues detected by rpmlint
|
||||
|
||||
* Sun Dec 06 2009 Haïkel Guémar <karlthered@gmail.com> - 2.0.0-2
|
||||
- Fix autotools scripts (missing LBP features) - #544167
|
||||
- Fix autotools scripts (missing LBP features) - #544167
|
||||
|
||||
* Fri Nov 27 2009 Haïkel Guémar <karlthered@gmail.com> - 2.0.0-1
|
||||
- Updated to 2.0.0
|
||||
|
Loading…
Reference in New Issue
Block a user