From 91a51d895a385905d74798e1646d82f43810e35d Mon Sep 17 00:00:00 2001 From: "Andreas K. Hüttel" Date: Sun, 18 Sep 2011 20:30:22 +0000 Subject: Version bump (Portage version: 2.1.10.18/cvs/Linux x86_64) --- media-libs/opencv/ChangeLog | 10 +- .../opencv-2.3.0-convert_sets_to_options.patch | 330 +++++++++++++++++++++ media-libs/opencv/files/opencv-2.3.0-ffmpeg.patch | 156 ++++++++++ media-libs/opencv/files/opencv-2.3.0-numpy.patch | 12 + media-libs/opencv/files/opencv-2.3.0-symlink.patch | 12 + media-libs/opencv/opencv-2.3.0.ebuild | 166 +++++++++++ 6 files changed, 685 insertions(+), 1 deletion(-) create mode 100644 media-libs/opencv/files/opencv-2.3.0-convert_sets_to_options.patch create mode 100644 media-libs/opencv/files/opencv-2.3.0-ffmpeg.patch create mode 100644 media-libs/opencv/files/opencv-2.3.0-numpy.patch create mode 100644 media-libs/opencv/files/opencv-2.3.0-symlink.patch create mode 100644 media-libs/opencv/opencv-2.3.0.ebuild (limited to 'media-libs/opencv') diff --git a/media-libs/opencv/ChangeLog b/media-libs/opencv/ChangeLog index ed8e704d360e..77d22b6d5caf 100644 --- a/media-libs/opencv/ChangeLog +++ b/media-libs/opencv/ChangeLog @@ -1,6 +1,14 @@ # ChangeLog for media-libs/opencv # Copyright 1999-2011 Gentoo Foundation; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/media-libs/opencv/ChangeLog,v 1.44 2011/09/06 20:56:37 dilfridge Exp $ +# $Header: /var/cvsroot/gentoo-x86/media-libs/opencv/ChangeLog,v 1.45 2011/09/18 20:30:22 dilfridge Exp $ + +*opencv-2.3.0 (18 Sep 2011) + + 18 Sep 2011; Andreas K. Huettel +opencv-2.3.0.ebuild, + +files/opencv-2.3.0-convert_sets_to_options.patch, + +files/opencv-2.3.0-ffmpeg.patch, +files/opencv-2.3.0-numpy.patch, + +files/opencv-2.3.0-symlink.patch: + Version bump 06 Sep 2011; Andreas K. Huettel opencv-2.2.0-r10.ebuild: diff --git a/media-libs/opencv/files/opencv-2.3.0-convert_sets_to_options.patch b/media-libs/opencv/files/opencv-2.3.0-convert_sets_to_options.patch new file mode 100644 index 000000000000..2f768bcd3355 --- /dev/null +++ b/media-libs/opencv/files/opencv-2.3.0-convert_sets_to_options.patch @@ -0,0 +1,330 @@ +diff -ruN OpenCV-2.3.0-0-vanilla/CMakeLists.txt OpenCV-2.3.0/CMakeLists.txt +--- OpenCV-2.3.0-0-vanilla/CMakeLists.txt 2011-07-04 06:21:50.000000000 +0200 ++++ OpenCV-2.3.0/CMakeLists.txt 2011-09-18 19:32:20.000000000 +0200 +@@ -14,7 +14,7 @@ + # Add these standard paths to the search paths for FIND_LIBRARY + # to find libraries from these locations first + if(UNIX) +- set(CMAKE_LIBRARY_PATH ${CMAKE_LIBRARY_PATH} /lib /usr/lib) ++ set(CMAKE_LIBRARY_PATH ${CMAKE_LIBRARY_PATH} /lib${LIB_SUFFIX} /usr/lib${LIB_SUFFIX}) + endif() + + +@@ -77,13 +77,13 @@ + # Build static or dynamic libs? + # Default: dynamic libraries + # ---------------------------------------------------------------------------- +-set(BUILD_SHARED_LIBS ON CACHE BOOL "Build shared libraries (.dll/.so) instead of static ones (.lib/.a)") ++OPTION(BUILD_SHARED_LIBS "Build shared libraries (.dll/.so) instead of static ones (.lib/.a)" ON) + + # ---------------------------------------------------------------------------- + # Include debug info into debug libs? + # Default: yes + # ---------------------------------------------------------------------------- +-set(BUILD_WITH_DEBUG_INFO ON CACHE BOOL "Include debug info into debug libs") ++OPTION(BUILD_WITH_DEBUG_INFO "Include debug info into debug libs" ON) + + # ---------------------------------------------------------------------------- + # Current version number: +@@ -285,20 +285,20 @@ + + # Build/install (or not) some apps: + # =================================================== +-set(BUILD_EXAMPLES OFF CACHE BOOL "Build all examples") +-set(INSTALL_C_EXAMPLES OFF CACHE BOOL "Install C examples") +-set(INSTALL_PYTHON_EXAMPLES OFF CACHE BOOL "Install Python examples") ++option(BUILD_EXAMPLES "Build all examples" OFF) ++option(INSTALL_C_EXAMPLES "Install C examples" OFF) ++option(INSTALL_PYTHON_EXAMPLES "Install Python examples" OFF) + + # Build tests: + # =================================================== +-set(BUILD_TESTS ON CACHE BOOL "Build tests") ++option(BUILD_TESTS "Build tests" ON) + + # Build 3rdparty libraries under unix + # =================================================== + if(WIN32) +- set(OPENCV_BUILD_3RDPARTY_LIBS TRUE CACHE BOOL "Build 3rd party libraries") ++ option(OPENCV_BUILD_3RDPARTY_LIBS "Build 3rd party libraries" TRUE) + else() +- set(OPENCV_BUILD_3RDPARTY_LIBS FALSE CACHE BOOL "Build 3rd party libraries") ++ option(OPENCV_BUILD_3RDPARTY_LIBS "Build 3rd party libraries" FALSE) + endif() + + include(OpenCVPCHSupport.cmake REQUIRED) +@@ -324,8 +324,8 @@ + #set(ENABLE_OPENMP ${DEFAULT_ENABLE_OPENMP} CACHE BOOL "") + + if(CMAKE_COMPILER_IS_GNUCXX) +- set(ENABLE_PROFILING OFF CACHE BOOL "Enable profiling in the GCC compiler (Add flags: -g -pg)") +- set(USE_OMIT_FRAME_POINTER ON CACHE BOOL "Enable -fomit-frame-pointer for GCC") ++ option(ENABLE_PROFILING "Enable profiling in the GCC compiler (Add flags: -g -pg)" OFF) ++ option(USE_OMIT_FRAME_POINTER "Enable -fomit-frame-pointer for GCC" ON) + + if(${CMAKE_SYSTEM_PROCESSOR} MATCHES amd64*|x86_64*) + set(X86_64 1) +@@ -341,58 +341,58 @@ + + if(X86 OR X86_64) + # enable everything, since the available set of instructions is checked at runtime +- set(USE_FAST_MATH ON CACHE BOOL "Enable -ffast-math") +- set(ENABLE_SSE ON CACHE BOOL "Enable SSE instructions") +- set(ENABLE_SSE2 ON CACHE BOOL "Enable SSE2 instructions") +- set(ENABLE_SSE3 OFF CACHE BOOL "Enable SSE3 instructions") +- set(ENABLE_SSSE3 OFF CACHE BOOL "Enable SSSE3 instructions") +- set(ENABLE_SSE41 OFF CACHE BOOL "Enable SSE4.1 instructions") +- set(ENABLE_SSE42 OFF CACHE BOOL "Enable SSE4.2 instructions") ++ option(USE_FAST_MATH "Enable -ffast-math for GCC" ON) ++ option(ENABLE_SSE "Enable SSE instructions" ON) ++ option(ENABLE_SSE2 "Enable SSE2 instructions" ON) ++ option(ENABLE_SSE3 "Enable SSE3 instructions" OFF) ++ option(ENABLE_SSSE3 "Enable SSSE3 instructions" OFF) ++ option(ENABLE_SSE41 "Enable SSE4.1 instructions" OFF) ++ option(ENABLE_SSE42 "Enable SSE4.2 instructions" OFF) + endif() + endif() + + if(MSVC) +- set(ENABLE_SSE ON CACHE BOOL "Enable SSE instructions for MSVC") +- set(ENABLE_SSE2 ON CACHE BOOL "Enable SSE2 instructions for MSVC") ++ option(ENABLE_SSE "Enable SSE instructions for MSVC" ON) ++ option(ENABLE_SSE2 "Enable SSE2 instructions for MSVC" ON) + if(CMAKE_C_COMPILER MATCHES "icc") +- set(ENABLE_SSE3 OFF CACHE BOOL "Enable SSE3 instructions for ICC") +- set(ENABLE_SSE4_1 OFF CACHE BOOL "Enable SSE4.1 instructions for ICC") ++ option(ENABLE_SSE3 "Enable SSE3 instructions for ICC" OFF) ++ option(ENABLE_SSE4_1 "Enable SSE4.1 instructions for ICC" OFF) + endif() + endif() + + # allow fine grained control over which libraries not to link, even if + # they are available on the system + # ==================================================================== +-set(WITH_PNG ON CACHE BOOL "Include PNG support") +-set(WITH_JPEG ON CACHE BOOL "Include JPEG support") +-set(WITH_JASPER ON CACHE BOOL "Include JPEG2K support") +-set(WITH_TIFF ON CACHE BOOL "Include TIFF support") +-set(WITH_OPENEXR ON CACHE BOOL "Include ILM support via OpenEXR") ++option(WITH_PNG "Include PNG support" ON) ++option(WITH_JPEG "Include JPEG support" ON) ++option(WITH_JASPER "Include JPEG2K support" ON) ++option(WITH_TIFF "Include TIFF support" ON) ++option(WITH_OPENEXR "Include ILM support via OpenEXR" ON) + + if(UNIX) +- set(WITH_FFMPEG ON CACHE BOOL "Include FFMPEG support") ++ option(WITH_FFMPEG "Include FFMPEG support" ON) + if(NOT APPLE) +- set(WITH_UNICAP OFF CACHE BOOL "Include Unicap support (GPL)") +- set(WITH_GTK ON CACHE BOOL "Include GTK support") +- set(WITH_GSTREAMER ON CACHE BOOL "Include Gstreamer support") +- set(WITH_V4L ON CACHE BOOL "Include Video 4 Linux support") +- set(WITH_XINE OFF CACHE BOOL "Include Xine support (GPL)") ++ option(WITH_UNICAP "Include Unicap support (GPL)" OFF) ++ option(WITH_GTK "Include GTK support" ON) ++ option(WITH_GSTREAMER "Include Gstreamer support" ON) ++ option(WITH_V4L "Include Video 4 Linux support" ON) ++ option(WITH_XINE "Include Xine support (GPL)" OFF) + endif() +- set(WITH_PVAPI ON CACHE BOOL "Include Prosilica GigE support") +- set(WITH_1394 ON CACHE BOOL "Include IEEE1394 support") ++ option(WITH_PVAPI "Include Prosilica GigE support" ON) ++ option(WITH_1394 "Include IEEE1394 support" ON) + endif() + + if(APPLE) +- set(WITH_CARBON OFF CACHE BOOL "Use Carbon for UI instead of Cocoa") +- set(WITH_QUICKTIME OFF CACHE BOOL "Use QuickTime for Video I/O insted of QTKit") ++ option(WITH_CARBON "Use Carbon for UI instead of Cocoa" OFF) ++ option(WITH_QUICKTIME "Use QuickTime for Video I/O insted of QTKit" OFF) + endif() + +-set(WITH_TBB OFF CACHE BOOL "Include Intel TBB support") +-set(WITH_IPP OFF CACHE BOOL "Include Intel IPP support") +-set(WITH_EIGEN ON CACHE BOOL "Include Eigen2/Eigen3 support") +-set(WITH_CUDA ON CACHE BOOL "Include NVidia Cuda Runtime support") ++option(WITH_TBB "Include TBB support" OFF) ++option(WITH_IPP "Include Intel IPP support" OFF) ++option(WITH_EIGEN "Include Eigen2/Eigen3 support" ON) ++option(WITH_CUDA "Include NVidia Cuda Runtime support" ON) + +-set(WITH_OPENNI OFF CACHE BOOL "Include OpenNI support") ++option(WITH_OPENNI "Include OpenNI support" OFF) + + # =================================================== + # Macros that checks if module have been installed. +@@ -586,13 +586,13 @@ + include(OpenCVFindOpenEXR.cmake) + endif() + +-set(BUILD_DOCS ON CACHE BOOL "Build OpenCV Documentation") ++option(BUILD_DOCS "Build OpenCV Documentation" ON) + + if(BUILD_DOCS) + include(OpenCVFindLATEX.cmake REQUIRED) + endif() + +-set(BUILD_NEW_PYTHON_SUPPORT ON CACHE BOOL "Build with Python support") ++option(BUILD_NEW_PYTHON_SUPPORT "Build with Python support" ON) + + if (WIN32) + if ("${CMAKE_BUILD_TYPE}" STREQUAL "Debug") +@@ -619,11 +619,11 @@ + + 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_PLUGIN_INSTALL_PATH lib${LIB_SUFFIX}/python${PYTHON_VERSION_MAJOR_MINOR}/site-packages/opencv) + if(APPLE) + set(PYTHON_PACKAGES_PATH lib/python${PYTHON_VERSION_MAJOR_MINOR}/site-packages CACHE PATH "Where to install the python packages.") + else() #debian based assumed, install to the dist-packages. +- set(PYTHON_PACKAGES_PATH lib/python${PYTHON_VERSION_MAJOR_MINOR}/dist-packages CACHE PATH "Where to install the python packages.") ++ set(PYTHON_PACKAGES_PATH lib${LIB_SUFFIX}/python${PYTHON_VERSION_MAJOR_MINOR}/site-packages) + endif() + endif() + if(WIN32) +@@ -665,8 +665,8 @@ + #YV + ############################### QT ################################ + +-set(WITH_QT OFF CACHE BOOL "Build with Qt Backend support") +-set(WITH_QT_OPENGL OFF CACHE BOOL "Add OpenGL extension to Qt") ++option(WITH_QT "Build with Qt Backend support" OFF) ++option(WITH_QT_OPENGL "Add OpenGL extension to Qt" OFF) + + set(HAVE_QT 0) + set(HAVE_QT_OPENGL 0) +@@ -876,8 +876,8 @@ + ################## Extra HighGUI libs on Windows ################### + + if(WIN32) +- set(WITH_VIDEOINPUT ON CACHE BOOL "Build HighGUI with DirectShow support") +- ++ option(WITH_VIDEOINPUT "Build HighGUI with DirectShow support" ON) ++ + set(HIGHGUI_LIBRARIES ${HIGHGUI_LIBRARIES} comctl32 gdi32 ole32) + + if(WITH_VIDEOINPUT) +@@ -956,7 +956,7 @@ + # Set the maximum level of warnings: + # ---------------------------------------------------------------------------- + # Should be set to true for development +-set(OPENCV_WARNINGS_ARE_ERRORS OFF CACHE BOOL "Treat warnings as errors") ++option(OPENCV_WARNINGS_ARE_ERRORS "Treat warnings as errors" OFF) + + set(EXTRA_C_FLAGS "") + set(EXTRA_C_FLAGS_RELEASE "") +@@ -1197,7 +1197,7 @@ + if(WIN32) + set(OPENCV_DOC_INSTALL_PATH doc) + else() +-set(OPENCV_DOC_INSTALL_PATH share/opencv/doc) ++set(OPENCV_DOC_INSTALL_PATH share/doc/opencv-${OPENCV_VERSION}/ CACHE PATH "Directory for documentation to install (without prefix)") + endif() + + +@@ -1232,7 +1232,7 @@ + set(CMAKE_INCLUDE_DIRS_CONFIGCMAKE "\"\${THIS_OPENCV_CONFIG_PATH}/../../include/opencv" "\${THIS_OPENCV_CONFIG_PATH}/../../include\"") + set(CMAKE_BASE_INCLUDE_DIRS_CONFIGCMAKE "\"\"") + +-set(CMAKE_LIB_DIRS_CONFIGCMAKE "\"\${THIS_OPENCV_CONFIG_PATH}/../../lib\"") ++set(CMAKE_LIB_DIRS_CONFIGCMAKE "\"\${THIS_OPENCV_CONFIG_PATH}/../../lib${LIB_SUFFIX}\"") + + exec_program(mkdir ARGS "-p \"${CMAKE_BINARY_DIR}/unix-install/\"" OUTPUT_VARIABLE RET_VAL) + configure_file("${CMAKE_CURRENT_SOURCE_DIR}/OpenCVConfig.cmake.in" "${CMAKE_BINARY_DIR}/unix-install/OpenCVConfig.cmake" IMMEDIATE @ONLY) +@@ -1327,14 +1327,14 @@ + # ------------------------------------------------------------------------------------------- + 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() + + +@@ -1354,7 +1354,7 @@ + # CPack target + # ---------------------------------------------------------------------------- + +-set(BUILD_PACKAGE ON CACHE BOOL "Enables 'make package_source' command") ++option(BUILD_PACKAGE "Build a installer with the SDK" ON) + + if(BUILD_PACKAGE) + +diff -ruN OpenCV-2.3.0-0-vanilla/OpenCVModule.cmake OpenCV-2.3.0/OpenCVModule.cmake +--- OpenCV-2.3.0-0-vanilla/OpenCVModule.cmake 2011-07-04 06:21:59.000000000 +0200 ++++ OpenCV-2.3.0/OpenCVModule.cmake 2011-09-18 19:32:20.000000000 +0200 +@@ -63,7 +63,7 @@ + DEBUG_POSTFIX "${OPENCV_DEBUG_POSTFIX}" + ARCHIVE_OUTPUT_DIRECTORY ${LIBRARY_OUTPUT_PATH} + RUNTIME_OUTPUT_DIRECTORY ${EXECUTABLE_OUTPUT_PATH} +- INSTALL_NAME_DIR lib ++ INSTALL_NAME_DIR lib${LIB_SUFFIX} + ) + + if(PCHSupport_FOUND AND USE_PRECOMPILED_HEADERS) +@@ -97,8 +97,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/opencv2/${name} +diff -ruN OpenCV-2.3.0-0-vanilla/modules/gpu/CMakeLists.txt OpenCV-2.3.0/modules/gpu/CMakeLists.txt +--- OpenCV-2.3.0-0-vanilla/modules/gpu/CMakeLists.txt 2011-07-04 06:21:58.000000000 +0200 ++++ OpenCV-2.3.0/modules/gpu/CMakeLists.txt 2011-09-18 19:32:20.000000000 +0200 +@@ -121,7 +121,7 @@ + DEBUG_POSTFIX "${OPENCV_DEBUG_POSTFIX}" + ARCHIVE_OUTPUT_DIRECTORY ${LIBRARY_OUTPUT_PATH} + RUNTIME_OUTPUT_DIRECTORY ${EXECUTABLE_OUTPUT_PATH} +- INSTALL_NAME_DIR lib ++ INSTALL_NAME_DIR lib${LIB_SUFFIX} + ) + + # Add the required libraries for linking: +@@ -149,8 +149,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/opencv2/${name} +diff -ruN OpenCV-2.3.0-0-vanilla/modules/highgui/CMakeLists.txt OpenCV-2.3.0/modules/highgui/CMakeLists.txt +--- OpenCV-2.3.0-0-vanilla/modules/highgui/CMakeLists.txt 2011-07-04 06:21:58.000000000 +0200 ++++ OpenCV-2.3.0/modules/highgui/CMakeLists.txt 2011-09-18 19:32:20.000000000 +0200 +@@ -295,7 +295,7 @@ + DEBUG_POSTFIX "${OPENCV_DEBUG_POSTFIX}" + ARCHIVE_OUTPUT_DIRECTORY ${LIBRARY_OUTPUT_PATH} + RUNTIME_OUTPUT_DIRECTORY ${EXECUTABLE_OUTPUT_PATH} +- INSTALL_NAME_DIR lib ++ INSTALL_NAME_DIR lib${LIB_SUFFIX} + LINK_INTERFACE_LIBRARIES "" + ) + +@@ -362,8 +362,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/opencv2/highgui diff --git a/media-libs/opencv/files/opencv-2.3.0-ffmpeg.patch b/media-libs/opencv/files/opencv-2.3.0-ffmpeg.patch new file mode 100644 index 000000000000..4f93d4eed425 --- /dev/null +++ b/media-libs/opencv/files/opencv-2.3.0-ffmpeg.patch @@ -0,0 +1,156 @@ +diff -ruN OpenCV-2.3.0-0-vanilla/modules/highgui/src/cap_ffmpeg_impl.hpp OpenCV-2.3.0/modules/highgui/src/cap_ffmpeg_impl.hpp +--- OpenCV-2.3.0-0-vanilla/modules/highgui/src/cap_ffmpeg_impl.hpp 2011-07-04 06:21:58.000000000 +0200 ++++ OpenCV-2.3.0/modules/highgui/src/cap_ffmpeg_impl.hpp 2011-09-18 20:27:05.000000000 +0200 +@@ -489,7 +489,7 @@ + AVCodecContext *enc = &ic->streams[i]->codec; + #endif + +- if( CODEC_TYPE_VIDEO == enc->codec_type && video_stream < 0) { ++ if( AVMEDIA_TYPE_VIDEO == enc->codec_type && video_stream < 0) { + AVCodec *codec = avcodec_find_decoder(enc->codec_id); + if (!codec || + avcodec_open(enc, codec) < 0) +@@ -576,15 +576,27 @@ + continue; + } + +-#if LIBAVFORMAT_BUILD > 4628 +- avcodec_decode_video(video_st->codec, +- picture, &got_picture, +- packet.data, packet.size); +-#else +- avcodec_decode_video(&video_st->codec, +- picture, &got_picture, +- packet.data, packet.size); +-#endif ++ ++ AVPacket avpkt; ++ av_init_packet(&avpkt); ++ avpkt.data = packet.data; ++ avpkt.size = packet.size; ++ // ++ // HACK for CorePNG to decode as normal PNG by default ++ // same method used by ffmpeg ++ avpkt.flags = AV_PKT_FLAG_KEY; ++ avcodec_decode_video2(video_st->codec, ++ picture, &got_picture, &avpkt); ++//Functions Removed from ffmpeg on 4/19/11 ++//#if LIBAVFORMAT_BUILD > 4628 ++// avcodec_decode_video(video_st->codec, ++// picture, &got_picture, ++// packet.data, packet.size); ++//#else ++// avcodec_decode_video(&video_st->codec, ++// picture, &got_picture, ++// packet.data, packet.size); ++//#endif + + if (got_picture) { + // we have a new picture, so memorize it +@@ -822,24 +834,25 @@ + #endif + }; + +-static const char * icvFFMPEGErrStr(int err) +-{ +- switch(err) { +- case AVERROR_NUMEXPECTED: +- return "Incorrect filename syntax"; +- case AVERROR_INVALIDDATA: +- return "Invalid data in header"; +- case AVERROR_NOFMT: +- return "Unknown format"; +- case AVERROR_IO: +- return "I/O error occurred"; +- case AVERROR_NOMEM: +- return "Memory allocation error"; +- default: +- break; +- } +- return "Unspecified error"; +-} ++//Deprecated Errors, should be using AVERROR(EINVAL) to return error strings ++//static const char * icvFFMPEGErrStr(int err) ++//{ ++// switch(err) { ++// case AVERROR_NUMEXPECTED: ++// return "Incorrect filename syntax"; ++// case AVERROR_INVALIDDATA: ++// return "Invalid data in header"; ++// case AVERROR_NOFMT: ++// return "Unknown format"; ++// case AVERROR_IO: ++// return "I/O error occurred"; ++// case AVERROR_NOMEM: ++// return "Memory allocation error"; ++// default: ++// break; ++// } ++// return "Unspecified error"; ++//} + + /* function internal to FFMPEG (libavformat/riff.c) to lookup codec id by fourcc tag*/ + extern "C" { +@@ -918,7 +931,7 @@ + #endif + + #if LIBAVFORMAT_BUILD > 4621 +- c->codec_id = av_guess_codec(oc->oformat, NULL, oc->filename, NULL, CODEC_TYPE_VIDEO); ++ c->codec_id = av_guess_codec(oc->oformat, NULL, oc->filename, NULL, AVMEDIA_TYPE_VIDEO); + #else + c->codec_id = oc->oformat->video_codec; + #endif +@@ -930,7 +943,7 @@ + //if(codec_tag) c->codec_tag=codec_tag; + codec = avcodec_find_encoder(c->codec_id); + +- c->codec_type = CODEC_TYPE_VIDEO; ++ c->codec_type = AVMEDIA_TYPE_VIDEO; + + /* put sample parameters */ + c->bit_rate = bitrate; +@@ -1015,7 +1028,7 @@ + AVPacket pkt; + av_init_packet(&pkt); + +- pkt.flags |= PKT_FLAG_KEY; ++ pkt.flags |= AV_PKT_FLAG_KEY; + pkt.stream_index= video_st->index; + pkt.data= (uint8_t *)picture; + pkt.size= sizeof(AVPicture); +@@ -1035,7 +1048,7 @@ + pkt.pts = c->coded_frame->pts; + #endif + if(c->coded_frame->key_frame) +- pkt.flags |= PKT_FLAG_KEY; ++ pkt.flags |= AV_PKT_FLAG_KEY; + pkt.stream_index= video_st->index; + pkt.data= outbuf; + pkt.size= out_size; +@@ -1237,7 +1250,7 @@ + av_register_all (); + + /* auto detect the output format from the name and fourcc code. */ +- fmt = guess_format(NULL, filename, NULL); ++ fmt = av_guess_format(NULL, filename, NULL); + if (!fmt) + return false; + +@@ -1260,7 +1273,7 @@ + #endif + + // alloc memory for context +- oc = av_alloc_format_context(); ++ oc = avformat_alloc_context(); + assert (oc); + + /* set file name */ +@@ -1336,7 +1349,7 @@ + /* open the codec */ + if ( (err=avcodec_open(c, codec)) < 0) { + char errtext[256]; +- sprintf(errtext, "Could not open codec '%s': %s", codec->name, icvFFMPEGErrStr(err)); ++ sprintf(errtext, "Could not open codec '%s': %s", codec->name, AVERROR(EINVAL)); + return false; + } + diff --git a/media-libs/opencv/files/opencv-2.3.0-numpy.patch b/media-libs/opencv/files/opencv-2.3.0-numpy.patch new file mode 100644 index 000000000000..e0706d21674f --- /dev/null +++ b/media-libs/opencv/files/opencv-2.3.0-numpy.patch @@ -0,0 +1,12 @@ +diff -ruN OpenCV-2.3.0-1-ol1/CMakeLists.txt OpenCV-2.3.0-2-numpy/CMakeLists.txt +--- OpenCV-2.3.0-1-ol1/CMakeLists.txt 2011-08-28 14:53:46.000000000 +0200 ++++ OpenCV-2.3.0-2-numpy/CMakeLists.txt 2011-08-28 15:26:37.000000000 +0200 +@@ -640,7 +640,7 @@ + + if(PYTHON_NUMPY_PROCESS EQUAL 0) + set(PYTHON_USE_NUMPY 1) +- add_definitions(-D PYTHON_USE_NUMPY=1) ++ add_definitions(-DPYTHON_USE_NUMPY=1) + include_directories(AFTER ${PYTHON_NUMPY_INCLUDE_DIRS}) + message(STATUS " Use NumPy headers from: ${PYTHON_NUMPY_INCLUDE_DIRS}") + else() diff --git a/media-libs/opencv/files/opencv-2.3.0-symlink.patch b/media-libs/opencv/files/opencv-2.3.0-symlink.patch new file mode 100644 index 000000000000..d6f5efb249d2 --- /dev/null +++ b/media-libs/opencv/files/opencv-2.3.0-symlink.patch @@ -0,0 +1,12 @@ +diff -ruN OpenCV-2.3.0-1-s2o/CMakeLists.txt OpenCV-2.3.0/CMakeLists.txt +--- OpenCV-2.3.0-1-s2o/CMakeLists.txt 2011-09-18 18:40:04.000000000 +0200 ++++ OpenCV-2.3.0/CMakeLists.txt 2011-09-18 18:55:47.000000000 +0200 +@@ -1240,7 +1240,7 @@ + if(UNIX) + # For a command "FIND_PACKAGE(FOO)", CMake will look at the directory /usr/share|lib/cmake/FOO/FOOConfig.cmake, so: + install(FILES ${CMAKE_BINARY_DIR}/unix-install/OpenCVConfig.cmake DESTINATION share/opencv/) +- install(CODE "exec_program(ln ARGS -sf \"${CMAKE_INSTALL_PREFIX}/share/opencv\" \"${CMAKE_INSTALL_PREFIX}/share/OpenCV\")") ++ install(CODE "exec_program(ln ARGS -sf \"${CMAKE_INSTALL_PREFIX}/share/opencv\" \"$ENV{D}/${CMAKE_INSTALL_PREFIX}/share/OpenCV\")") + endif() + + # -------------------------------------------------------------------------------------------- diff --git a/media-libs/opencv/opencv-2.3.0.ebuild b/media-libs/opencv/opencv-2.3.0.ebuild new file mode 100644 index 000000000000..e75a33066dcb --- /dev/null +++ b/media-libs/opencv/opencv-2.3.0.ebuild @@ -0,0 +1,166 @@ +# Copyright 1999-2011 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/media-libs/opencv/opencv-2.3.0.ebuild,v 1.1 2011/09/18 20:30:22 dilfridge Exp $ + +EAPI=3 + +PYTHON_DEPEND="python? 2:2.6" + +inherit base cmake-utils fortran-2 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" +IUSE="cuda doc eigen examples ffmpeg gstreamer gtk ieee1394 ipp jpeg jpeg2k openexr opengl png python qt4 sse sse2 sse3 ssse3 test tiff v4l xine" + +# all tests fail, needs further investigation, bug 296681 - dilfridge +RESTRICT=test + +RDEPEND=" + app-arch/bzip2 + sys-libs/zlib + sci-libs/flann + 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 + opengl? ( x11-libs/qt-opengl:4 ) + ) + tiff? ( media-libs/tiff ) + v4l? ( >=media-libs/libv4l-0.8.3 ) + xine? ( media-libs/xine-lib ) +" +DEPEND="${RDEPEND} + doc? ( virtual/latex-base ) + dev-util/pkgconfig +" + +# REQUIRED_USE="opengl? ( qt )" + +PATCHES=( + "${FILESDIR}/${PN}-2.3.0-convert_sets_to_options.patch" + "${FILESDIR}/${PN}-2.3.0-ffmpeg.patch" + "${FILESDIR}/${PN}-2.3.0-numpy.patch" + "${FILESDIR}/${PN}-2.3.0-symlink.patch" +) + +CMAKE_BUILD_TYPE="Release" + +S=${WORKDIR}/${MY_P} + +pkg_setup() { + fortran-2_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() { + local mycmakeargs=( + $(cmake-utils_use_build doc DOCS) + $(cmake-utils_use_build examples) + $(cmake-utils_use examples INSTALL_C_EXAMPLES) + $(cmake-utils_use_build python NEW_PYTHON_SUPPORT) + $(cmake-utils_use_build test TESTS) + $(cmake-utils_use_enable sse SSE) + $(cmake-utils_use_enable sse2 SSE2) + $(cmake-utils_use_enable sse3 SSE3) + $(cmake-utils_use_enable ssse3 SSSE3) + $(cmake-utils_use_with ipp) + $(cmake-utils_use_with ieee1394 1394) + $(cmake-utils_use_with cuda) + $(cmake-utils_use_with eigen) + $(cmake-utils_use_with ffmpeg) + $(cmake-utils_use_with gstreamer) + $(cmake-utils_use_with gtk) + $(cmake-utils_use_with jpeg) + $(cmake-utils_use_with jpeg2k JASPER) + $(cmake-utils_use_with openexr) + $(cmake-utils_use_with png) + $(cmake-utils_use_with qt4 QT) + $(cmake-utils_use_with opengl QT_OPENGL) + $(cmake-utils_use_with tiff) + $(cmake-utils_use_with v4l V4L) + $(cmake-utils_use_with xine) + ) + + 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 + # unicap: https://bugs.gentoo.org/show_bug.cgi?id=175881 + # openni: ??? + mycmakeargs+=( + "-DUSE_OMIT_FRAME_POINTER=OFF" + "-DOPENCV_BUILD_3RDPARTY_LIBS=OFF" + "-DOPENCV_WARNINGS_ARE_ERRORS=OFF" + "-DBUILD_LATEX_DOCS=OFF" + "-DENABLE_POWERPC=OFF" + "-DBUILD_PACKAGE=OFF" + "-DENABLE_PROFILING=OFF" + "-DUSE_O2=OFF" + "-DUSE_O3=OFF" + "-DUSE_FAST_MATH=OFF" + "-DENABLE_SSE41=OFF" + "-DENABLE_SSE42=OFF" + "-DWITH_PVAPI=OFF" + "-DWITH_UNICAP=OFF" + "-DWITH_TBB=OFF" + "-DWITH_OPENNI=OFF" + ) + + # things we want to be hard enabled not worth useflag + mycmakeargs+=( + "-DCMAKE_SKIP_RPATH=ON" + "-DBUILD_SHARED_LIBS=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 +} + +src_test() { + export LD_LIBRARY_PATH="${LD_LIBRARY_PATH}:${CMAKE_BUILD_DIR}/lib" + cmake-utils_src_test +} -- cgit v1.2.3-65-gdbad