diff options
Diffstat (limited to 'media-libs/opencv/opencv-2.4.0.ebuild')
-rw-r--r-- | media-libs/opencv/opencv-2.4.0.ebuild | 179 |
1 files changed, 179 insertions, 0 deletions
diff --git a/media-libs/opencv/opencv-2.4.0.ebuild b/media-libs/opencv/opencv-2.4.0.ebuild new file mode 100644 index 000000000000..63e3c6f7ed54 --- /dev/null +++ b/media-libs/opencv/opencv-2.4.0.ebuild @@ -0,0 +1,179 @@ +# Copyright 1999-2012 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/media-libs/opencv/opencv-2.4.0.ebuild,v 1.1 2012/05/28 20:13:58 dilfridge Exp $ + +EAPI=3 + +PYTHON_DEPEND="python? 2:2.6" + +inherit base toolchain-funcs cmake-utils python + +MY_P=OpenCV-${PV} + +DESCRIPTION="A collection of algorithms and sample code for various computer vision problems" +HOMEPAGE="http://opencv.willowgarage.com" +SRC_URI="mirror://sourceforge/${PN}library/${MY_P}.tar.bz2" + +LICENSE="BSD" +SLOT="0" +KEYWORDS="~amd64 ~ppc ~x86 ~amd64-linux" +IUSE="cuda doc eigen examples ffmpeg gstreamer gtk ieee1394 ipp jpeg jpeg2k openexr opengl png python qt4 sse sse2 sse3 ssse3 sse41 sse42 tbb test tiff v4l xine" + +RDEPEND=" + app-arch/bzip2 + sys-libs/zlib + cuda? ( >=dev-util/nvidia-cuda-toolkit-4 ) + eigen? ( dev-cpp/eigen:2 ) + ffmpeg? ( virtual/ffmpeg ) + gstreamer? ( + media-libs/gstreamer + media-libs/gst-plugins-base + ) + gtk? ( + dev-libs/glib:2 + x11-libs/gtk+:2 + ) + jpeg? ( virtual/jpeg ) + jpeg2k? ( media-libs/jasper ) + ieee1394? ( media-libs/libdc1394 sys-libs/libraw1394 ) + ipp? ( sci-libs/ipp ) + openexr? ( media-libs/openexr ) + png? ( media-libs/libpng ) + python? ( dev-python/numpy ) + qt4? ( + x11-libs/qt-gui:4 + x11-libs/qt-test:4 + opengl? ( x11-libs/qt-opengl:4 ) + ) + tbb? ( dev-cpp/tbb ) + tiff? ( media-libs/tiff ) + v4l? ( >=media-libs/libv4l-0.8.3 ) + xine? ( media-libs/xine-lib ) +" +DEPEND="${RDEPEND} + doc? ( virtual/latex-base ) + virtual/pkgconfig +" + +# REQUIRED_USE="opengl? ( qt )" + +PATCHES=( + "${FILESDIR}/${PN}-2.3.1a-libav-0.7.patch" + "${FILESDIR}/${PN}-2.3.1a-True-False.patch" + "${FILESDIR}/${PN}-2.3.1a-gcc47.patch" + "${FILESDIR}/${PN}-2.4.0-cflags.patch" +) + +CMAKE_BUILD_TYPE="Release" + +S=${WORKDIR}/${MY_P} + +pkg_setup() { + if use python; then + python_set_active_version 2 + python_pkg_setup + fi +} + +src_prepare() { + base_src_prepare + + # remove bundled stuff + rm -rf 3rdparty + sed -i \ + -e '/add_subdirectory(3rdparty)/ d' \ + CMakeLists.txt || die +} + +src_configure() { + # please dont sort here, order is the same as in CMakeLists.txt + local mycmakeargs=( + # the optinal dependency libraries + $(cmake-utils_use_with ieee1394 1394) + -DWITH_AVFOUNDATION=OFF + -DWITH_CARBON=OFF + $(cmake-utils_use_with eigen) + $(cmake-utils_use_with ffmpeg) + $(cmake-utils_use_with gstreamer) + $(cmake-utils_use_with gtk) + $(cmake-utils_use_with ipp) + $(cmake-utils_use_with jpeg2k JASPER) + $(cmake-utils_use_with jpeg) + $(cmake-utils_use_with openexr) + $(cmake-utils_use_with opengl) + -DWITH_OPENNI=OFF # not packaged + $(cmake-utils_use_with png) + -DWITH_PVAPI=OFF # not packaged + $(cmake-utils_use_with qt4 QT) + -DWITH_QUICKTIME=OFF + $(cmake-utils_use_with tbb) + $(cmake-utils_use_with tiff) + -DWITH_UNICAP=OFF # not packaged + $(cmake-utils_use_with v4l V4L) + -DWITH_VIDEOINPUT=OFF # windows only + -DWITH_XIMEA=OFF # windows only + $(cmake-utils_use_with xine) + # the build components + -DBUILD_SHARED_LIBS=ON + -DBUILD_ANDROID_EXAMPLES=OFF + $(cmake-utils_use_build doc DOCS) + $(cmake-utils_use_build examples) + -DBUILD_PERF_TESTS=ON + $(cmake-utils_use_build test TESTS) + # install examples + $(cmake-utils_use examples INSTALL_C_EXAMPLES) + # build options + -DENABLE_PRECOMPILED_HEADERS=OFF # for my sanity + -DENABLE_OMIT_FRAME_POINTER=OFF # dito + -DENABLE_FAST_MATH=OFF # dito + $(cmake-utils_use_enable sse) + $(cmake-utils_use_enable sse2) + $(cmake-utils_use_enable sse3) + $(cmake-utils_use_enable ssse3) + $(cmake-utils_use_enable sse41) + $(cmake-utils_use_enable sse42) + -DOPENCV_EXTRA_C_FLAGS_RELEASE="" # black magic + ) + + if use cuda; then + if [[ "$(gcc-version)" > "4.4" ]]; then + ewarn "CUDA and >=sys-devel/gcc-4.5 do not play well together. Disabling CUDA support." + mycmakeargs+=( "-DWITH_CUDA=OFF" ) + mycmakeargs+=( "-DWITH_CUBLAS=OFF" ) + mycmakeargs+=( "-DWITH_CUFFT=OFF" ) + else + mycmakeargs+=( "-DWITH_CUDA=ON" ) + mycmakeargs+=( "-DWITH_CUBLAS=ON" ) + mycmakeargs+=( "-DWITH_CUFFT=ON" ) + fi + else + mycmakeargs+=( "-DWITH_CUDA=OFF" ) + fi + + if use python && use examples; then + mycmakeargs+=( "-DINSTALL_PYTHON_EXAMPLES=ON" ) + else + mycmakeargs+=( "-DINSTALL_PYTHON_EXAMPLES=OFF" ) + fi + + # things we want to be hard off or not yet figured out + mycmakeargs+=( + "-DOPENCV_BUILD_3RDPARTY_LIBS=OFF" + "-DBUILD_LATEX_DOCS=OFF" + "-DBUILD_PACKAGE=OFF" + "-DENABLE_PROFILING=OFF" + ) + + # things we want to be hard enabled not worth useflag + mycmakeargs+=( + "-DCMAKE_SKIP_RPATH=ON" + "-DOPENCV_DOC_INSTALL_PATH=${EPREFIX}/usr/share/doc/${PF}" + ) + + # hardcode cuda paths + mycmakeargs+=( + "-DCUDA_NPP_LIBRARY_ROOT_DIR=/opt/cuda" + ) + + cmake-utils_src_configure +} |