# 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.62 2011/11/29 23:43:45 dilfridge Exp $
+# $Header: /var/cvsroot/gentoo-x86/media-libs/opencv/ChangeLog,v 1.63 2011/12/31 22:17:19 dilfridge Exp $
+
+*opencv-2.3.1a-r1 (31 Dec 2011)
+
+ 31 Dec 2011; Andreas K. Huettel <dilfridge@gentoo.org>
+ +opencv-2.3.1a-r1.ebuild, +files/opencv-2.3.1a-True-False.patch:
+ Added the True/False patch, kinda makes sense. Let's hope upstream follows.
+ Bug 393685.
29 Nov 2011; Andreas K. Huettel <dilfridge@gentoo.org> opencv-2.3.1a.ebuild:
Does not need fortran anymore, bug 392297
AUX opencv-2.3.0-libpng15.patch 214 RMD160 ec21b397068516716749a0550baa262c5acb22e9 SHA1 6543c741b1cf79b2ceb0a9c681aa3e93661c97b5 SHA256 03cd546c755d4be88b14d5ad2f5987c5abc78633a3e608f4a471db85b21fa22c
AUX opencv-2.3.0-numpy.patch 551 RMD160 d777f008d8b569076a78f91b6f06a25c4d08bb0f SHA1 766e8c14f4e407a5e252f3a9228f260be8f50e28 SHA256 5b835add26f1a20601126a8cde89b2ee7bb26211e426f35c11b85798d8de2378
AUX opencv-2.3.0-symlink.patch 838 RMD160 787ef6c6ae59a4d614701fbafe48c8803cf29807 SHA1 08059632d29f08069c8abbc294e501487d97d201 SHA256 286f946ca13760406c8afcf71358758df0051fd51a74578058f263610c05c448
+AUX opencv-2.3.1a-True-False.patch 5120 RMD160 a8b22fa625dab6a6aa589226bab3169594bab2bb SHA1 f0e8e393c57ea70a4e1b78b7a56413e04eb3ebfd SHA256 8076260c01e8ec22d30ced74be64b158e96408b81990a7d14f031170e3165f7f
AUX opencv-2.3.1a-convert_sets_to_options.patch 9798 RMD160 6265ae4e223def1b5e199f665c740951bdabc78e SHA1 64142f43079ef5d5a4cf91f8ad58f9a744ea6de9 SHA256 fef051756bac47ec68fed3468a5d7d339ab21ae325a21482554f34f9b19f1e08
AUX opencv-2.3.1a-libav-0.7.patch 415 RMD160 cc9ae832bb72e0ecb09ad25356cb6bcc9ee5e084 SHA1 b1021d451c0949edd0da8dd05c88e2a433c33bbb SHA256 3186998b7b9eaae061d538633276c7de47b2388b639106e190d80dcf09fb9099
AUX opencv-2.3.1a-libsuffix.patch 1949 RMD160 55ef74fec3ec29aa9b7c7af98b6a2a3be186141e SHA1 7dc609754bbf0de85e0b48ff4622b80b9a70f4c7 SHA256 442c5e7fab7cf28f806c8fc2057d17705b71d95da8ba0792828dab91c6742f44
DIST OpenCV-2.3.0.tar.bz2 42849210 RMD160 79184b56236e3669fccbd2fb0ea0f30008ee81e9 SHA1 53b5d5aab835eb63d4546489b1c1246eeba1da29 SHA256 bcbfff0ff767f0cf2523707a307a5fd0db4853c19c3498f322c8c5839429940b
DIST OpenCV-2.3.1a.tar.bz2 32669613 RMD160 f2f459bf7c163acb90427db2b0b425ab8008cde5 SHA1 9784e6824c5f677fac82ae83a2f366743adb3299 SHA256 a9a2f529101c04eb2b606eee8c80f3ad93190b36f91ac09ee0ec5aa1eed1450c
EBUILD opencv-2.3.0.ebuild 4166 RMD160 505fa5edf33e9035b341c6e9629a0e6eb79222a5 SHA1 adf050ca2678d21d4f354612edab4f014903e324 SHA256 9efe9a986c378f0e9fa826fa0bd5c91f891e0a82b161e5e4949d31137f9c6983
+EBUILD opencv-2.3.1a-r1.ebuild 4208 RMD160 aeb14ca73bd0d14519125ba297c198e4cb0b3716 SHA1 3a24483b95a6426298b03a9b96d1732b2a6d8787 SHA256 2823e5dfe41d7346604314bde8b45158ca1e428f8709ec8edd138080a66abb31
EBUILD opencv-2.3.1a.ebuild 4168 RMD160 b01928a220ed028fb983b675c714e1d7f4fdb68f SHA1 6491a5cab7d2cfb1b3c465053bb9b42fbe372fa8 SHA256 57ce4152e4dbb3f0dc501745d8bd4784499889d9f147b5aadec928ad2dbc42bf
-MISC ChangeLog 11036 RMD160 7eeae591813cfcb498764e32619e00646fe26c69 SHA1 a1c83a29ca81809594ba9b1a888a325f8e61d3a0 SHA256 f4caa4a8307cb4f5e7609ea51848c52af8bc6919b8aacb6b6f55d9681eb501c4
+MISC ChangeLog 11286 RMD160 61a7ae1fd9a79473afc58e5a8398007f04d14922 SHA1 750d46c9f44585f67933b615ac1f1f5bdcade8e0 SHA256 c1e01c1878fc282795787a7c392730186db48a85b62ce426570ade4bffad3e02
MISC metadata.xml 1099 RMD160 beba86d77f6e837750d5d8a92d0a2f94b4527ccc SHA1 b41e5330b2ef6a31db843e997a4ed88c01529321 SHA256 174e8c3a8340c15f8fb92100e489f9b2bed0a4558c3ef3352c68252ef0fab201
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v2.0.17 (GNU/Linux)
-iQIcBAEBCgAGBQJO1W49AAoJENwGBM22xffedYAQAJcIWiZdB7I/2pgKKToYH5is
-4KTjXjKVUkHCeBWoBPphL+HXG1kMLSopN3HE/vFltI8+i/SPRDPQRFHoQ1hO/pwR
-ls5b3VpMOFWtK97sm9Lboqk+O4eJITAZjZ75xhXQozPf5rGV81pc4xoLd2j487HV
-Lu5JZFbD/YpO137PCmQDdr2Km8xvtIqYtNsiBPxsWq7xmeh5SKzlpBEcvZtR3qp8
-mVTVfKF76qVfCRjUZi/ryKVGzmraSPZoFXE9UlQuaT/9QdWUDsv7tFyj7rPkV10S
-Pmxx37cXzqqi2D4pJl6hW0tDiC/lBT3rCrrqF2s+29YDNV+69ztxxKfQPdo9iSII
-2Sl8PHGogdLl386PFgn989yfbeuY8kLE0BH+GNLQNVks5ukb71TtqCMte+C45Hvv
-D5oxZM68w2LKcbHeACsWVHSxuYUSHM95Sp9czDAVOlZxazLuh99SnOC2FO/5bTOm
-BzDvvPafbOMoKqd5oLKcel8AjHCCku/W/tKNv+FRXl25w5hr9U1t23c7p82UoqvI
-gCR0AuP8wda7fJDdJjHqtBo43xfG9p+z8KqfrXhfwzRZe1fwK3DENGocCWNC3rnK
-mpOwMQEupDrWLWtRqHVHIe+CAsM/gVAdPlcaY2ch9JrGB/8OjXnYXKkm9v+srkR4
-Y97F8txX+CcopE0eZzVb
-=5eea
+iQIcBAEBCgAGBQJO/4pwAAoJEEb+UGWnxTyH4fAQAI8Vv8Z/I19H7lz4aWj8gIQz
+I63l7r4U7He/8P/0G8OAEJZJLuGXRRb6Km4RJRXkeocNZoPcRJS+dZtbvbbkkYVk
+q9pc7IPEr9YP2NjvTQkqt3ZbpUIMqtt0mY2dJ7KMSXgw462SY2zGDzKb+jWy/ohT
+39HnoEXzUi+pw8jRqIDmLKxmj1lWzjoHyd7kZHGvidmNoZvSpU+bCI0Z4wtJ+h9R
+hS/iwy59ZkDCVnopBMSEF1uzHT3Pz49eMQPbAt8WmdVmqM/Uc4ysj9uZB9+aaOoU
+ihfphUcx84YpolX2LD+1AKeqVQG0xRQjkuoPAJm8KOiHkVYb0WPTOj7SIoo+2TpM
+laD6dtqI//ewdtohV6DhNJ16kqaPXzzHQTc6FmG+uhJi6HnyiqA1LxeH+N+5WrQ3
+W2v88CIjhjvyCNHwF9ATKKymiz++tfwaGtWKAbV92z932q+eqv9c0gPmyRTHQFfW
+zOiIRADD69jzRZ0yKywgPcSw8BheiKwoLNirWMfJQEvuPEsQnm/ga+uw8bG2Lf7m
+b5hWjtCuUc7eG47vUgAVBQv0E6vpyQDdfQZ/G5YiIa+1+J7hL0fB7R4UXXrnaDAD
+uMYvZGG7HhPtk+lSnzlRfbGgxVaJt9M2HTCyieSNgj4U11hWDeVVBMO8hNGmq79f
+p7shNh4YbpiZpuudVAEX
+=08Xb
-----END PGP SIGNATURE-----
--- /dev/null
+diff -ur OpenCV-2.3.1.orig/modules/flann/include/opencv2/flann/all_indices.h OpenCV-2.3.1/modules/flann/include/opencv2/flann/all_indices.h
+--- OpenCV-2.3.1.orig/modules/flann/include/opencv2/flann/all_indices.h 2011-09-12 13:42:27.000000000 -0500
++++ OpenCV-2.3.1/modules/flann/include/opencv2/flann/all_indices.h 2011-12-08 15:54:23.000000000 -0600
+@@ -88,7 +88,7 @@
+ };
+
+ template<typename VectorSpace, typename Distance>
+-struct index_creator<False,VectorSpace,Distance>
++struct index_creator<XFalse,VectorSpace,Distance>
+ {
+ static NNIndex<Distance>* create(const Matrix<typename Distance::ElementType>& dataset, const IndexParams& params, const Distance& distance)
+ {
+@@ -117,7 +117,7 @@
+ };
+
+ template<typename Distance>
+-struct index_creator<False,False,Distance>
++struct index_creator<XFalse,XFalse,Distance>
+ {
+ static NNIndex<Distance>* create(const Matrix<typename Distance::ElementType>& dataset, const IndexParams& params, const Distance& distance)
+ {
+diff -ur OpenCV-2.3.1.orig/modules/flann/include/opencv2/flann/dist.h OpenCV-2.3.1/modules/flann/include/opencv2/flann/dist.h
+--- OpenCV-2.3.1.orig/modules/flann/include/opencv2/flann/dist.h 2011-09-12 13:42:27.000000000 -0500
++++ OpenCV-2.3.1/modules/flann/include/opencv2/flann/dist.h 2011-12-08 15:54:11.000000000 -0600
+@@ -79,11 +79,11 @@
+ struct Accumulator<int> { typedef float Type; };
+
+
+-class True
++class XTrue
+ {
+ };
+
+-class False
++class XFalse
+ {
+ };
+
+@@ -97,8 +97,8 @@
+ template<class T>
+ struct L2_Simple
+ {
+- typedef True is_kdtree_distance;
+- typedef True is_vector_space_distance;
++ typedef XTrue is_kdtree_distance;
++ typedef XTrue is_vector_space_distance;
+
+ typedef T ElementType;
+ typedef typename Accumulator<T>::Type ResultType;
+@@ -130,8 +130,8 @@
+ template<class T>
+ struct L2
+ {
+- typedef True is_kdtree_distance;
+- typedef True is_vector_space_distance;
++ typedef XTrue is_kdtree_distance;
++ typedef XTrue is_vector_space_distance;
+
+ typedef T ElementType;
+ typedef typename Accumulator<T>::Type ResultType;
+@@ -195,8 +195,8 @@
+ template<class T>
+ struct L1
+ {
+- typedef True is_kdtree_distance;
+- typedef True is_vector_space_distance;
++ typedef XTrue is_kdtree_distance;
++ typedef XTrue is_vector_space_distance;
+
+ typedef T ElementType;
+ typedef typename Accumulator<T>::Type ResultType;
+@@ -252,8 +252,8 @@
+ template<class T>
+ struct MinkowskiDistance
+ {
+- typedef True is_kdtree_distance;
+- typedef True is_vector_space_distance;
++ typedef XTrue is_kdtree_distance;
++ typedef XTrue is_vector_space_distance;
+
+ typedef T ElementType;
+ typedef typename Accumulator<T>::Type ResultType;
+@@ -316,8 +316,8 @@
+ template<class T>
+ struct MaxDistance
+ {
+- typedef False is_kdtree_distance;
+- typedef True is_vector_space_distance;
++ typedef XFalse is_kdtree_distance;
++ typedef XTrue is_vector_space_distance;
+
+ typedef T ElementType;
+ typedef typename Accumulator<T>::Type ResultType;
+@@ -373,8 +373,8 @@
+ */
+ struct HammingLUT
+ {
+- typedef False is_kdtree_distance;
+- typedef False is_vector_space_distance;
++ typedef XFalse is_kdtree_distance;
++ typedef XFalse is_vector_space_distance;
+
+ typedef unsigned char ElementType;
+ typedef int ResultType;
+@@ -475,8 +475,8 @@
+ template<class T>
+ struct Hamming
+ {
+- typedef False is_kdtree_distance;
+- typedef False is_vector_space_distance;
++ typedef XFalse is_kdtree_distance;
++ typedef XFalse is_vector_space_distance;
+
+
+ typedef T ElementType;
+@@ -537,8 +537,8 @@
+ template<typename T>
+ struct Hamming2
+ {
+- typedef False is_kdtree_distance;
+- typedef False is_vector_space_distance;
++ typedef XFalse is_kdtree_distance;
++ typedef XFalse is_vector_space_distance;
+
+ typedef T ElementType;
+ typedef int ResultType;
+@@ -596,8 +596,8 @@
+ template<class T>
+ struct HistIntersectionDistance
+ {
+- typedef True is_kdtree_distance;
+- typedef True is_vector_space_distance;
++ typedef XTrue is_kdtree_distance;
++ typedef XTrue is_vector_space_distance;
+
+ typedef T ElementType;
+ typedef typename Accumulator<T>::Type ResultType;
+@@ -649,8 +649,8 @@
+ template<class T>
+ struct HellingerDistance
+ {
+- typedef True is_kdtree_distance;
+- typedef True is_vector_space_distance;
++ typedef XTrue is_kdtree_distance;
++ typedef XTrue is_vector_space_distance;
+
+ typedef T ElementType;
+ typedef typename Accumulator<T>::Type ResultType;
+@@ -697,8 +697,8 @@
+ template<class T>
+ struct ChiSquareDistance
+ {
+- typedef True is_kdtree_distance;
+- typedef True is_vector_space_distance;
++ typedef XTrue is_kdtree_distance;
++ typedef XTrue is_vector_space_distance;
+
+ typedef T ElementType;
+ typedef typename Accumulator<T>::Type ResultType;
+@@ -751,8 +751,8 @@
+ template<class T>
+ struct KL_Divergence
+ {
+- typedef True is_kdtree_distance;
+- typedef True is_vector_space_distance;
++ typedef XTrue is_kdtree_distance;
++ typedef XTrue is_vector_space_distance;
+
+ typedef T ElementType;
+ typedef typename Accumulator<T>::Type ResultType;
--- /dev/null
+# 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.1a-r1.ebuild,v 1.1 2011/12/31 22:17:19 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"
+IUSE="cuda doc eigen examples ffmpeg gstreamer gtk ieee1394 ipp jpeg jpeg2k openexr opengl png python qt4 sse sse2 sse3 ssse3 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 )
+ )
+ 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-numpy.patch"
+ "${FILESDIR}/${P}-convert_sets_to_options.patch"
+ "${FILESDIR}/${P}-libsuffix.patch"
+ "${FILESDIR}/${P}-nocaps.patch"
+ "${FILESDIR}/${P}-libav-0.7.patch"
+ "${FILESDIR}/${P}-True-False.patch"
+)
+
+CMAKE_BUILD_TYPE="Release"
+
+S=${WORKDIR}/${MY_P/2.3.1a/2.3.1}
+
+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_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 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 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" )
+ else
+ mycmakeargs+=( "-DWITH_CUDA=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
+ # 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
+}