-Source0: http://dl.sourceforge.net/opencvlibrary/%{name}-%{version}%{snap}.tar.gz
-# Source0-md5: b147b7cd3c059831c415c5a2bcecdf95
-Patch0: %{name}-ffmpeg.patch
-Patch1: %{name}-am.patch
-URL: http://opencv.willowgarage.com
-BuildRequires: autoconf >= 2.53
-BuildRequires: automake
-BuildRequires: ffmpeg-devel
+Source0: http://downloads.sourceforge.net/opencvlibrary/OpenCV-%{version}.tar.bz2
+# Source0-md5: c0a5af4ff9d0d540684c0bf00ef35dbe
+Patch0: %{name}-cflags.patch
+Patch1: %{name}-link.patch
+Patch2: %{name}-unicap-c++.patch
+Patch3: %{name}-c.patch
+Patch4: %{name}-gcc.patch
+Patch5: %{name}-ximea.patch
+URL: http://opencv.willowgarage.com/
+%{?with_pvapi:BuildRequires: AVT_GigE_SDK-devel}
+BuildRequires: OpenEXR-devel
+%{?with_opengl:BuildRequires: OpenGL-devel}
+%{?with_opengl:BuildRequires: OpenGL-GLU-devel}
+# as of OpenCV 2.3.1-2.4.3 there is also check for OpenNI-sensor-PrimeSense, but the result is not used
+%{?with_openni:BuildRequires: OpenNI-devel}
+%{?with_ximea:BuildRequires: XIMEA-devel}
+BuildRequires: cmake >= 2.4
+BuildRequires: doxygen
+BuildRequires: eigen3 >= 3
+BuildRequires: ffmpeg-devel >= 0.7
+%if %{with gstreamer}
+BuildRequires: gstreamer-devel >= 0.10
+BuildRequires: gstreamer-plugins-base-devel >= 0.10
+%endif