%{?mingw_package_header} %global tar_name OpenCV Name: mingw-opencv Version: 2.4.2 Release: 1%{?dist} Summary: MinGW Windows port of Computer Vision Library Group: Development/Libraries # This is normal three clause BSD. License: BSD URL: http://opencv.willowgarage.com/wiki/ Source0: http://prdownloads.sourceforge.net/opencvlibrary/%{tar_name}-%{version}%{?indice}.tar.bz2 Patch0: mingw-opencv-2.4.2-systemlibs.patch BuildArch: noarch BuildRequires: mingw32-filesystem >= 95 BuildRequires: mingw32-gcc-c++ BuildRequires: mingw32-jasper BuildRequires: mingw32-libpng BuildRequires: mingw32-libjpeg-turbo BuildRequires: mingw32-libtiff BuildRequires: mingw32-zlib BuildRequires: mingw64-filesystem >= 95 BuildRequires: mingw64-gcc-c++ BuildRequires: mingw64-jasper BuildRequires: mingw64-libpng BuildRequires: mingw64-libjpeg-turbo BuildRequires: mingw64-libtiff BuildRequires: mingw64-zlib BuildRequires: cmake >= 2.6.3 %description OpenCV means Intel® Open Source Computer Vision Library. It is a collection of C functions and a few C++ classes that implement some popular Image Processing and Computer Vision algorithms. # Win32 %package -n mingw32-opencv Summary: MinGW Windows port of Computer Vision Library %description -n mingw32-opencv OpenCV means Intel® Open Source Computer Vision Library. It is a collection of C functions and a few C++ classes that implement some popular Image Processing and Computer Vision algorithms. %package -n mingw32-opencv-static Summary: Static version of the MinGW port of Computer Vision Library Requires: mingw32-opencv = %{version}-%{release} Requires: mingw32-jasper-static Requires: mingw32-libpng-static Requires: mingw32-libjpeg-turbo-static Requires: mingw32-libtiff-static Requires: mingw32-zlib-static Group: Development/Libraries %description -n mingw32-opencv-static Static version of the MinGW port of Computer Vision Library. # Win64 %package -n mingw64-opencv Summary: MinGW Windows port of Computer Vision Library %description -n mingw64-opencv OpenCV means Intel® Open Source Computer Vision Library. It is a collection of C functions and a few C++ classes that implement some popular Image Processing and Computer Vision algorithms. %package -n mingw64-opencv-static Summary: Static version of the MinGW port of Computer Vision Library Requires: mingw64-opencv = %{version}-%{release} Requires: mingw64-jasper-static Requires: mingw64-libpng-static Requires: mingw64-libjpeg-turbo-static Requires: mingw64-libtiff-static Requires: mingw64-zlib-static Group: Development/Libraries %description -n mingw64-opencv-static Static version of the MinGW port of Computer Vision Library. %{?mingw_debug_package} %prep %setup -q -n %{tar_name}-%{version} %patch0 -p1 sed -i '/add_subdirectory(doc)/d' CMakeLists.txt %build suffix=shared %mingw_cmake CMAKE_VERBOSE=1 \ -DCMAKE_SKIP_RPATH=ON \ -DENABLE_SSE=0 \ -DENABLE_SSE2=0 \ -DCMAKE_BUILD_TYPE=Release \ -DBUILD_TESTS=OFF \ -DBUILD_DOCS=OFF \ -DWITH_FFMPEG=OFF \ -DINSTALL_C_EXAMPLES=0 \ -DINSTALL_PYTHON_EXAMPLES=0 \ -DBUILD_ZLIB=OFF \ -DBUILD_TIFF=OFF \ -DBUILD_JASPER=OFF \ -DBUILD_JPEG=OFF \ -DBUILD_PNG=OFF \ -DBUILD_PNG=OFF \ .. suffix=static %mingw_cmake CMAKE_VERBOSE=1 \ -DCMAKE_SKIP_RPATH=ON \ -DENABLE_SSE=0 \ -DENABLE_SSE2=0 \ -DCMAKE_BUILD_TYPE=Release \ -DBUILD_TESTS=OFF \ -DBUILD_DOCS=OFF \ -DWITH_FFMPEG=OFF \ -DINSTALL_C_EXAMPLES=0 \ -DINSTALL_PYTHON_EXAMPLES=0 \ -DBUILD_ZLIB=OFF \ -DBUILD_TIFF=OFF \ -DBUILD_JASPER=OFF \ -DBUILD_JPEG=OFF \ -DBUILD_PNG=OFF \ -DBUILD_SHARED_LIBS=OFF \ .. MINGW_BUILDDIR_SUFFIX=shared %mingw_make VERBOSE=1 %{?_smp_mflags} MINGW_BUILDDIR_SUFFIX=static %mingw_make VERBOSE=1 %{?_smp_mflags} %install MINGW_BUILDDIR_SUFFIX=shared %mingw_make_install DESTDIR=$RPM_BUILD_ROOT INSTALL="install -p" CPPROG="cp -p" MINGW_BUILDDIR_SUFFIX=static %mingw_make_install DESTDIR=$RPM_BUILD_ROOT/build_static INSTALL="install -p" CPPROG="cp -p" # Move the static libraries to the right location mv $RPM_BUILD_ROOT/build_static%{mingw32_libdir}/*.a $RPM_BUILD_ROOT%{mingw32_libdir} mv $RPM_BUILD_ROOT/build_static%{mingw64_libdir}/*.a $RPM_BUILD_ROOT%{mingw64_libdir} # Drop the folder which was temporary used for installing the static bits rm -rf $RPM_BUILD_ROOT/build_static #Cmake mess mkdir -p $RPM_BUILD_ROOT%{mingw32_libdir}/cmake/OpenCV mv $RPM_BUILD_ROOT%{mingw32_prefix}/*.cmake $RPM_BUILD_ROOT%{mingw32_libdir}/cmake/OpenCV mkdir -p $RPM_BUILD_ROOT%{mingw64_libdir}/cmake/OpenCV mv $RPM_BUILD_ROOT%{mingw64_prefix}/*.cmake $RPM_BUILD_ROOT%{mingw64_libdir}/cmake/OpenCV %clean rm -rf $RPM_BUILD_ROOT # Win32 %files -n mingw32-opencv %doc doc/license.txt %{mingw32_bindir}/libopencv*dll %{mingw32_bindir}/opencv*exe %{mingw32_libdir}/libopencv*dll.a %{mingw32_includedir}/opencv/ %{mingw32_includedir}/opencv2/ %{mingw32_libdir}/cmake/OpenCV/ %files -n mingw32-opencv-static %{mingw32_libdir}/libopencv_calib3d242.a %{mingw32_libdir}/libopencv_contrib242.a %{mingw32_libdir}/libopencv_core242.a %{mingw32_libdir}/libopencv_features2d242.a %{mingw32_libdir}/libopencv_flann242.a %{mingw32_libdir}/libopencv_gpu242.a %{mingw32_libdir}/libopencv_highgui242.a %{mingw32_libdir}/libopencv_imgproc242.a %{mingw32_libdir}/libopencv_legacy242.a %{mingw32_libdir}/libopencv_ml242.a %{mingw32_libdir}/libopencv_nonfree242.a %{mingw32_libdir}/libopencv_objdetect242.a %{mingw32_libdir}/libopencv_photo242.a %{mingw32_libdir}/libopencv_stitching242.a %{mingw32_libdir}/libopencv_ts242.a %{mingw32_libdir}/libopencv_video242.a %{mingw32_libdir}/libopencv_videostab242.a # Win64 %files -n mingw64-opencv %doc doc/license.txt %{mingw64_bindir}/libopencv*dll %{mingw64_bindir}/opencv*exe %{mingw64_libdir}/libopencv*dll.a %{mingw64_includedir}/opencv/ %{mingw64_includedir}/opencv2/ %{mingw64_libdir}/cmake/OpenCV/ %files -n mingw64-opencv-static %{mingw64_libdir}/libopencv_calib3d242.a %{mingw64_libdir}/libopencv_contrib242.a %{mingw64_libdir}/libopencv_core242.a %{mingw64_libdir}/libopencv_features2d242.a %{mingw64_libdir}/libopencv_flann242.a %{mingw64_libdir}/libopencv_gpu242.a %{mingw64_libdir}/libopencv_highgui242.a %{mingw64_libdir}/libopencv_imgproc242.a %{mingw64_libdir}/libopencv_legacy242.a %{mingw64_libdir}/libopencv_ml242.a %{mingw64_libdir}/libopencv_nonfree242.a %{mingw64_libdir}/libopencv_objdetect242.a %{mingw64_libdir}/libopencv_photo242.a %{mingw64_libdir}/libopencv_stitching242.a %{mingw64_libdir}/libopencv_ts242.a %{mingw64_libdir}/libopencv_video242.a %{mingw64_libdir}/libopencv_videostab242.a %changelog * Tue Jul 24 2012 Alexey Kurov - 2.4.2-1 - OpenCV-2.4.2