diff options
Diffstat (limited to 'sci-libs/ViSP')
-rw-r--r-- | sci-libs/ViSP/Manifest | 7 | ||||
-rw-r--r-- | sci-libs/ViSP/ViSP-3.0.1.ebuild | 106 | ||||
-rw-r--r-- | sci-libs/ViSP/files/ViSP-3.0.0-ffmpeg3.patch | 78 | ||||
-rw-r--r-- | sci-libs/ViSP/files/ViSP-3.0.1-opencv.patch | 12 | ||||
-rw-r--r-- | sci-libs/ViSP/metadata.xml | 26 |
5 files changed, 229 insertions, 0 deletions
diff --git a/sci-libs/ViSP/Manifest b/sci-libs/ViSP/Manifest new file mode 100644 index 000000000000..df59675033bb --- /dev/null +++ b/sci-libs/ViSP/Manifest @@ -0,0 +1,7 @@ +AUX ViSP-3.0.0-ffmpeg3.patch 4291 SHA256 9afb4a33dd65a3cd07638ed0a7284f14c4bb9478cf72a4c29592ea5f629bc3dd SHA512 fed1699ccaba5baa67e0fde19abc5ae828c51c88bf761a9d6784b8ad858230cca7e11bfbc1fb7661bca0a666c49ff9915e0a771909bf42493229165d1131b3a9 WHIRLPOOL adb38559b836ee2996c8de9988a3a658149ec116c1b5352da4c2eede3a5aff27722ce4b8f8b9fecb010167ee7dd8e6bed8c78df5891d4f1435d87188bf7a7579 +AUX ViSP-3.0.1-opencv.patch 403 SHA256 9ed7bbb2b757ffbda87697802b44aed2d437bb46120b30f9c331c677b39e0ac0 SHA512 3a6a84ac6ad2bce4fdf7228b4a296589239c2b4b019b3ad8e4654af71b00eca6102444f38c32604013ec62d60d067deb2902ea8cffffff6d97e0762602a013f4 WHIRLPOOL ed6edeab7f0dfd61ca237be5460dba90fffee952dfae2632f0750fa435264b11c7593028dc00e7fa824f6ade26d6f080d0b5eb042c63df541ab2aa4165940872 +DIST visp-3.0.1.tar.gz 26029005 SHA256 8aefd21f30dd4f6d210c59c28704f9e3adf874e3337571a3ae65a65946c94326 SHA512 558e9acbd7ac5ef2193dca026062b75e0a30a7efbcae7d1e7d392b0855e643ee96ab9f60c19465f6bfa861374e30d9e91faf2f860e0442fa48ea5ea384b4e3fa WHIRLPOOL ae3bbdbf580826fe392d372014d1e53db0bbdf53bdc4d2a631a2fa53b4991bc8f715eb428e1f8ba3c44574b5e81d2b3893da1b6bfc2084e538d656d073955348 +EBUILD ViSP-3.0.1.ebuild 3154 SHA256 1aecd969356f0e3dd1eaffca404b636fcec824eb27bd13bed75ffa87640d46e6 SHA512 a47e3d09ebcf9d27349fd9f568168efe56b503479e887a4e4f4b308293e4d65db2a10a2a1727245c3d7bd84124473f1dc5cd248dc5bf9fc091dbf1e8675dedb6 WHIRLPOOL d371d4dd084e34488ba5fdeaff812f16772be534919e4d7cdebde1d120fb0ce964e681a7c02e61afb383b181e8cf5792fd2c5c02752b70eb87fc1eac3f2b9d78 +MISC ChangeLog 3870 SHA256 fc10538840344796527d38e8f3996f4f67e9111df6ddde26e2dbafbdb2d4350d SHA512 16ec980eb40a76dd576654babe408733a3e82521f5487d3b97cbdbd011c1307036d10eb6f411bfb94165c8bf35ed3a67dbdcfb164d32892bf9b0439680ff210d WHIRLPOOL 0b644b43ebb2f5d9711a6c70948755467fa7d05e26769087ae390acaaccec955606a850155d7ccb5153937cd32488a520895507565f112e145ed4bd82c306974 +MISC ChangeLog-2015 712 SHA256 06f16b06376a8809501b369a8a46fc7753743d59a346b7da7750a25be668f54f SHA512 6e655228d267f3dc90a34bf5f53edf5d1e17f98dc3bf425963f249317c219c0dcb2252ad624ff4cd1fd33fcf89f96ec0d878253cdd4523d5910e2304783ab8bc WHIRLPOOL 8fe255d3f578eaa72bd9a3abe5996e763ff24554c42270b17a0b6e4ed31bd3107a384072799d98616823355ef0a4f994dc534bde7b621fab48b7b754241e1cd2 +MISC metadata.xml 1377 SHA256 6fc75621bf9f3f4802008433b73046ce83505c431528d87256aaff49cc435c06 SHA512 a830ac98ca671d7ffedc8d891b3ab5aadfc6da9251fa1b45fa5df6076add1c8d4cf03eca3581c7dca83c97fb3b8d871559d409cdf2d1267adf1e4a5132ae83a7 WHIRLPOOL a091127ecfa1fee0865b1457b8f75fec176c662fdbd594c5849c4c4d5f9b5fbc1347964b0ea4454a78eaf8319bc747918e0bd4a10d8793779e5dca6b84314a4e diff --git a/sci-libs/ViSP/ViSP-3.0.1.ebuild b/sci-libs/ViSP/ViSP-3.0.1.ebuild new file mode 100644 index 000000000000..390e20cb18a2 --- /dev/null +++ b/sci-libs/ViSP/ViSP-3.0.1.ebuild @@ -0,0 +1,106 @@ +# Copyright 1999-2017 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +EAPI=5 + +inherit cmake-utils + +DESCRIPTION="Visual Servoing Platform: visual tracking and visual servoing library" +HOMEPAGE="http://www.irisa.fr/lagadic/visp/visp.html" +SRC_URI="http://gforge.inria.fr/frs/download.php/latestfile/475/visp-${PV}.tar.gz" + +LICENSE="GPL-2" +SLOT="0/3" +KEYWORDS="~amd64 ~arm" +IUSE=" + +coin demos +dmtx doc examples ffmpeg gsl ieee1394 jpeg lapack motif ogre + ois opencv png qt4 test tutorials usb v4l X xml +zbar zlib + cpu_flags_x86_sse2 cpu_flags_x86_sse3 cpu_flags_x86_ssse3 +" + +RDEPEND=" + coin? ( media-libs/coin virtual/opengl ) + dmtx? ( media-libs/libdmtx ) + ffmpeg? ( virtual/ffmpeg ) + gsl? ( sci-libs/gsl ) + ieee1394? ( media-libs/libdc1394 ) + jpeg? ( virtual/jpeg:0 ) + lapack? ( virtual/lapack ) + !qt4? ( motif? ( media-libs/SoXt ) ) + ogre? ( dev-games/ogre[ois?] dev-libs/boost:=[threads] ) + opencv? ( media-libs/opencv:= qt4? ( media-libs/opencv[-qt5(-)] ) ) + png? ( media-libs/libpng:0= ) + qt4? ( media-libs/SoQt dev-qt/qtgui:4 ) + usb? ( virtual/libusb:1 ) + v4l? ( media-libs/libv4l ) + X? ( x11-libs/libX11 ) + xml? ( dev-libs/libxml2 ) + zbar? ( media-gfx/zbar ) + zlib? ( sys-libs/zlib ) +" +DEPEND="${RDEPEND} + doc? ( app-doc/doxygen virtual/latex-base media-gfx/graphviz ) + virtual/pkgconfig + test? ( sci-misc/ViSP-images ) + v4l? ( virtual/os-headers )" +RDEPEND="${RDEPEND} + demos? ( sci-misc/ViSP-images )" +REQUIRED_USE=" + ffmpeg? ( opencv ) + ois? ( ogre ) + qt4? ( coin ) + motif? ( coin ) +" + +S="${WORKDIR}/visp-${PV}" +PATCHES=( "${FILESDIR}/${PN}-3.0.1-opencv.patch" "${FILESDIR}/${PN}-3.0.0-ffmpeg3.patch" ) + +src_configure() { + local mycmakeargs=( + "-DBUILD_EXAMPLES=$(usex examples ON OFF)" + "-DBUILD_TESTS=$(usex test ON OFF)" + "-DBUILD_DEMOS=$(usex demos ON OFF)" + "-DBUILD_TUTORIALS=$(usex tutorials ON OFF)" + "-DUSE_COIN3D=$(usex coin ON OFF)" + "-DUSE_DC1394=$(usex ieee1394 ON OFF)" + "-DUSE_DMTX=$(usex dmtx ON OFF)" + "-DUSE_FFMPEG=$(usex ffmpeg ON OFF)" + "-DUSE_GSL=$(usex gsl ON OFF)" + "-DUSE_LAPACK=$(usex lapack ON OFF)" + "-DUSE_JPEG=$(usex jpeg ON OFF)" + "-DUSE_PNG=$(usex png ON OFF)" + "-DUSE_LIBUSB_1=$(usex usb ON OFF)" + "-DUSE_OGRE=$(usex ogre ON OFF)" + "-DUSE_OIS=$(usex ois ON OFF)" + "-DUSE_OPENCV=$(usex opencv ON OFF)" + "-DUSE_SOQT=$(usex qt4 ON OFF)" + "-DUSE_SOXT=$(usex motif "$(usex qt4 OFF ON)" OFF)" + "-DUSE_V4L2=$(usex v4l ON OFF)" + "-DUSE_X11=$(usex X ON OFF)" + "-DUSE_XML2=$(usex xml ON OFF)" + "-DUSE_ZBAR=$(usex zbar ON OFF)" + "-DUSE_ZLIB=$(usex zlib ON OFF)" + "-DCOIN3D_INCLUDE_DIR=${EPREFIX:-${SYSROOT}}/usr/include/coin" + "-DSOQT_INCLUDE_DIR=${EPREFIX:-${SYSROOT}}/usr/include/coin" + "-DENABLE_SSE2=$(usex cpu_flags_x86_sse2 ON OFF)" + "-DENABLE_SSE3=$(usex cpu_flags_x86_sse3 ON OFF)" + "-DENABLE_SSSE3=$(usex cpu_flags_x86_ssse3 ON OFF)" + ) + cmake-utils_src_configure +} + +src_compile() { + cmake-utils_src_compile + cd "${BUILD_DIR}" + use doc && emake visp_doc +} + +src_install() { + cmake-utils_src_install + if use tutorials ; then + dodoc -r tutorial + docompress -x /usr/share/doc/${PF}/tutorial + fi + cd "${BUILD_DIR}" + use doc && dohtml -r doc/html/* +} diff --git a/sci-libs/ViSP/files/ViSP-3.0.0-ffmpeg3.patch b/sci-libs/ViSP/files/ViSP-3.0.0-ffmpeg3.patch new file mode 100644 index 000000000000..8fd3c8b1edb3 --- /dev/null +++ b/sci-libs/ViSP/files/ViSP-3.0.0-ffmpeg3.patch @@ -0,0 +1,78 @@ +Index: visp-3.0.0/modules/io/src/video/vpFFMPEG.cpp +=================================================================== +--- visp-3.0.0.orig/modules/io/src/video/vpFFMPEG.cpp ++++ visp-3.0.0/modules/io/src/video/vpFFMPEG.cpp +@@ -180,7 +180,7 @@ bool vpFFMPEG::openStream(const char *fi + if (pFrameRGB == NULL) + return false; + +- numBytes = avpicture_get_size (PIX_FMT_RGB24,pCodecCtx->width,pCodecCtx->height); ++ numBytes = avpicture_get_size (AV_PIX_FMT_RGB24,pCodecCtx->width,pCodecCtx->height); + } + + else if (color_type == vpFFMPEG::GRAY_SCALED) +@@ -194,7 +194,7 @@ bool vpFFMPEG::openStream(const char *fi + if (pFrameGRAY == NULL) + return false; + +- numBytes = avpicture_get_size (PIX_FMT_GRAY8,pCodecCtx->width,pCodecCtx->height); ++ numBytes = avpicture_get_size (AV_PIX_FMT_GRAY8,pCodecCtx->width,pCodecCtx->height); + } + + /* +@@ -211,10 +211,10 @@ bool vpFFMPEG::openStream(const char *fi + } + + if (color_type == vpFFMPEG::COLORED) +- avpicture_fill((AVPicture *)pFrameRGB, buffer, PIX_FMT_RGB24, pCodecCtx->width, pCodecCtx->height); ++ avpicture_fill((AVPicture *)pFrameRGB, buffer, AV_PIX_FMT_RGB24, pCodecCtx->width, pCodecCtx->height); + + else if (color_type == vpFFMPEG::GRAY_SCALED) +- avpicture_fill((AVPicture *)pFrameGRAY, buffer, PIX_FMT_GRAY8, pCodecCtx->width, pCodecCtx->height); ++ avpicture_fill((AVPicture *)pFrameGRAY, buffer, AV_PIX_FMT_GRAY8, pCodecCtx->width, pCodecCtx->height); + + streamWasOpen = true; + +@@ -231,10 +231,10 @@ bool vpFFMPEG::openStream(const char *fi + bool vpFFMPEG::initStream() + { + if (color_type == vpFFMPEG::COLORED) +- img_convert_ctx= sws_getContext(pCodecCtx->width, pCodecCtx->height, pCodecCtx->pix_fmt, pCodecCtx->width,pCodecCtx->height,PIX_FMT_RGB24, SWS_BICUBIC, NULL, NULL, NULL); ++ img_convert_ctx= sws_getContext(pCodecCtx->width, pCodecCtx->height, pCodecCtx->pix_fmt, pCodecCtx->width,pCodecCtx->height,AV_PIX_FMT_RGB24, SWS_BICUBIC, NULL, NULL, NULL); + + else if (color_type == vpFFMPEG::GRAY_SCALED) +- img_convert_ctx= sws_getContext(pCodecCtx->width, pCodecCtx->height, pCodecCtx->pix_fmt, pCodecCtx->width,pCodecCtx->height,PIX_FMT_GRAY8, SWS_BICUBIC, NULL, NULL, NULL); ++ img_convert_ctx= sws_getContext(pCodecCtx->width, pCodecCtx->height, pCodecCtx->pix_fmt, pCodecCtx->width,pCodecCtx->height,AV_PIX_FMT_GRAY8, SWS_BICUBIC, NULL, NULL, NULL); + + int ret = av_seek_frame(pFormatCtx, (int)videoStream, 0, AVSEEK_FLAG_ANY) ; + if (ret < 0 ) +@@ -703,7 +703,7 @@ bool vpFFMPEG::openEncoder(const char *f + pCodecCtx->time_base.den = framerate_encoder; + pCodecCtx->gop_size = 10; /* emit one intra frame every ten frames */ + pCodecCtx->max_b_frames=1; +- pCodecCtx->pix_fmt = PIX_FMT_YUV420P; ++ pCodecCtx->pix_fmt = AV_PIX_FMT_YUV420P; + + /* open it */ + #if LIBAVCODEC_VERSION_INT < AV_VERSION_INT(53,35,0) // libavcodec 53.35.0 +@@ -726,15 +726,15 @@ bool vpFFMPEG::openEncoder(const char *f + outbuf_size = 100000; + outbuf = new uint8_t[outbuf_size]; + +- numBytes = avpicture_get_size (PIX_FMT_YUV420P,pCodecCtx->width,pCodecCtx->height); ++ numBytes = avpicture_get_size (AV_PIX_FMT_YUV420P,pCodecCtx->width,pCodecCtx->height); + picture_buf = new uint8_t[numBytes]; +- avpicture_fill((AVPicture *)pFrame, picture_buf, PIX_FMT_YUV420P, pCodecCtx->width, pCodecCtx->height); ++ avpicture_fill((AVPicture *)pFrame, picture_buf, AV_PIX_FMT_YUV420P, pCodecCtx->width, pCodecCtx->height); + +- numBytes = avpicture_get_size (PIX_FMT_RGB24,pCodecCtx->width,pCodecCtx->height); ++ numBytes = avpicture_get_size (AV_PIX_FMT_RGB24,pCodecCtx->width,pCodecCtx->height); + buffer = new uint8_t[numBytes]; +- avpicture_fill((AVPicture *)pFrameRGB, buffer, PIX_FMT_RGB24, pCodecCtx->width, pCodecCtx->height); ++ avpicture_fill((AVPicture *)pFrameRGB, buffer, AV_PIX_FMT_RGB24, pCodecCtx->width, pCodecCtx->height); + +- img_convert_ctx= sws_getContext(pCodecCtx->width, pCodecCtx->height, PIX_FMT_RGB24, pCodecCtx->width,pCodecCtx->height,PIX_FMT_YUV420P, SWS_BICUBIC, NULL, NULL, NULL); ++ img_convert_ctx= sws_getContext(pCodecCtx->width, pCodecCtx->height, AV_PIX_FMT_RGB24, pCodecCtx->width,pCodecCtx->height,AV_PIX_FMT_YUV420P, SWS_BICUBIC, NULL, NULL, NULL); + + encoderWasOpened = true; + diff --git a/sci-libs/ViSP/files/ViSP-3.0.1-opencv.patch b/sci-libs/ViSP/files/ViSP-3.0.1-opencv.patch new file mode 100644 index 000000000000..c50dcb6d182e --- /dev/null +++ b/sci-libs/ViSP/files/ViSP-3.0.1-opencv.patch @@ -0,0 +1,12 @@ +Index: visp-3.0.1/modules/core/CMakeLists.txt +=================================================================== +--- visp-3.0.1.orig/modules/core/CMakeLists.txt ++++ visp-3.0.1/modules/core/CMakeLists.txt +@@ -182,6 +182,7 @@ if(USE_OPENCV) + if(OpenCV_INCLUDE_DIRS) + list(APPEND opt_incs ${OpenCV_INCLUDE_DIRS}) + endif() ++ list(APPEND opt_libs ${OpenCV_LIBS}) + endif(USE_OPENCV) + + if(USE_YARP) diff --git a/sci-libs/ViSP/metadata.xml b/sci-libs/ViSP/metadata.xml new file mode 100644 index 000000000000..abab5bed6646 --- /dev/null +++ b/sci-libs/ViSP/metadata.xml @@ -0,0 +1,26 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd"> +<pkgmetadata> +<maintainer type="person"> +<email>aballier@gentoo.org</email> +<name>Alexis Ballier</name> +</maintainer> +<use> + <flag name="coin">Enables Coin3D support.</flag> + <flag name="dmtx">Enables barcode data matrix support.</flag> + <flag name="demos">Installs demo programs.</flag> + <flag name="ogre">Enables <pkg>dev-games/ogre</pkg> support.</flag> + <flag name="ois">Enables <pkg>dev-games/ois</pkg> support via ogre.</flag> + <flag name="opencv">Enables <pkg>media-libs/opencv</pkg> support.</flag> + <flag name="tutorials">Installs tutorials.</flag> + <flag name="zbar">Enables barcodes reading.</flag> +</use> +<longdescription lang="en"> + ViSP standing for Visual Servoing Platform is a modular cross platform library that allows prototyping and developing applications using visual tracking and visual servoing technics at the heart of the researches done by Inria Lagadic team. + ViSP is able to compute control laws that can be applied to robotic systems. + It provides a set of visual features that can be tracked using real time image processing or computer vision algorithms. + ViSP provides also simulation capabilities. + + ViSP can be useful in robotics, computer vision, augmented reality and computer animation. +</longdescription> +</pkgmetadata> |