summaryrefslogtreecommitdiff
path: root/media-libs/opencv
diff options
context:
space:
mode:
authorV3n3RiX <venerix@redcorelinux.org>2019-12-15 18:09:03 +0000
committerV3n3RiX <venerix@redcorelinux.org>2019-12-15 18:09:03 +0000
commit7bc9c63c9da678a7e6fceb095d56c634afd22c56 (patch)
tree4a67d50a439e9af63947e5f8b6ba3719af98b6c9 /media-libs/opencv
parentb284a3168fa91a038925d2ecf5e4791011ea5e7d (diff)
gentoo resync : 15.12.2019
Diffstat (limited to 'media-libs/opencv')
-rw-r--r--media-libs/opencv/Manifest11
-rw-r--r--media-libs/opencv/files/opencv-4.1.2-opencl-license.patch10
-rw-r--r--media-libs/opencv/files/opencv-4.1.2-pkg-config-file.patch11
-rw-r--r--media-libs/opencv/metadata.xml15
-rw-r--r--media-libs/opencv/opencv-3.4.1-r7.ebuild (renamed from media-libs/opencv/opencv-3.4.1-r6.ebuild)41
-rw-r--r--media-libs/opencv/opencv-4.1.2-r1.ebuild (renamed from media-libs/opencv/opencv-3.4.1-r5.ebuild)95
-rw-r--r--media-libs/opencv/opencv-4.1.2-r2.ebuild498
7 files changed, 600 insertions, 81 deletions
diff --git a/media-libs/opencv/Manifest b/media-libs/opencv/Manifest
index 34992ca6258f..2bade290b159 100644
--- a/media-libs/opencv/Manifest
+++ b/media-libs/opencv/Manifest
@@ -16,14 +16,19 @@ AUX opencv-3.4.1-popcnt.patch 890 BLAKE2B 553352472eaf2a2c97f148f97856a103e8a190
AUX opencv-3.4.1-python-lib-suffix-hack.patch 723 BLAKE2B bc4b1c68f2c73b40d20372ce4e3232b2db3b414ce2da16a8d84710fc53902211f17585c7ce6daf2d54025b53c04aa74f0c3eb3a30f26bfbc9af24e246f56b71a SHA512 54d2c8189fc1ff06ee1cacf5f375ea976faf339563ee804085feb0ec1f55cdbe10eea7335a786706b6a6152b6f9145156b3e74ce802c3d15b5a23014b25044b8
AUX opencv-3.4.1-python37.patch 452 BLAKE2B c4a2850c17a0f9e01f537df6123e7c4262862ec0cd1dd43f8cebd21d4d6e8903205813b2a200eb6b60efdc43e74b0c9222d0b6bba504bacb84f87cfcf7d80d1a SHA512 c7fac2a6425c4afbef3b3cae5307e6035e3f4ef77ba0006c4dfd3a1cfc15c4648e978cc305ce598ec70c049e2cdc36f5f85cf24a75a4d3f3dc025091993e66e2
AUX opencv-3.4.1-remove-git-autodetect.patch 1549 BLAKE2B 0ed44deddea20d5a57dded6a51d40645e5376411d9c055995fdbdbfbf4252817eaa9158925276661e4958f894898122ec273a352491be53511207345a481db52 SHA512 8496677542981c64ba9763f0d494885f71747884ae3e02de0bc8f96c1802356d917dcc7aed84ddfc2af093456c250bf2fafbdd06f7789aae8c720f5a412c07a0
+AUX opencv-4.1.2-opencl-license.patch 519 BLAKE2B 6dcdf809c3c75a39d0e44f02e157a0c0ee074fd15144565ed51ade7e7849cb313c084100f499cc1240424f4647a2ff73c8d5e61cbdf6d0499846db61b8a30729 SHA512 2874a5140ef5028eb6c64f36325904000edd722560cf876fc49d63b040633bcfea01cae27c156b18191564805cafd2986f26eea322b1376af4f2982d66ed7653
+AUX opencv-4.1.2-pkg-config-file.patch 345 BLAKE2B ba3968a5dbdcc981cc513055ca99b8726ba2fe993cb8c128d574688a748dbd6fc287089bc0c04af89f6b9b62b37cae9663a81c329b6a2dab4919470450b9f6c7 SHA512 0fa66ca24c0fa72dc9e13c0c40592cf5ca5aa5856d1747613f9c4528f0b00f05dd224662c022563db994f7e43879b97d1ba1f0afa2703c30e4a3efc520dc332d
DIST opencv-2.4.13.tar.gz 91669572 BLAKE2B 7f6be39e29c0db5d005cb14215fdf5955fa69c34d72c4f1e1fa8bf8de1e748a0d2fe5febb43296ef529c57e4dec8d1b6739c0c4df9e64657b9550ed382fbc4b9 SHA512 efdc4340fdf557dae44ac604c8c20f61ced89f99274264b61c2640f28741504462c6b57076e207040ca2513e3921275bdfbe6c22fc123bd50df78745e6b7bcd6
DIST opencv-3.4.0-face_landmark_model.tar.gz 63299830 BLAKE2B 58f08cd8c030ee1c8b66e76a561fd625e112face427d001185f8d7c0eaace55adbd8474663021841a1382bfe393a210e64c51223441713cdb9156fac866a845c SHA512 2cd29ce42c08b2966db3ef4a2bc217ab3d07051819757ec6de8f3deea29e28f60abab39f101dba03f766f17018598e411bd687a7eaab0c681c113e10a2de2b23
DIST opencv-3.4.0-res10_300x300-caffeemodel.tar.gz 10036604 BLAKE2B 2a2de48fc420f13e7be146ac88f311901c5b4e409c30e466152e33cae1f8afd87dcb6d758af447c268d90bd67989c8798cd80cab172b10499a6ad5224509dbdf SHA512 96fee9f447d5739bc01a5cab37c453cf7237457dfb5d2bf93ac37f8e5aa557ac222316f449cd58e37e856abe4d8e9d4a7820daaba32f0b22cbcde8e340287d4b
DIST opencv-3.4.1.tar.gz 87051748 BLAKE2B 87c83ab9b3d7fb048263f047aa5d6e95b153e1a28f3e34cc885eff7eb080a2258cfa1aa494cd56b32f1098ab158c17c23fc8464fcbe70642a3a1842f2fd1b4ac SHA512 e1fc14285090c6fe9e26e721f2d67d7096650c523147e925567426ef76aa7f4c6f12035d6f6ce3ec7991a75a6828a810fd4f9b75f78ed5fcccecefbadd79944b
DIST opencv-3.4.1_contrib.tar.gz 57126844 BLAKE2B 63d9d5cb088371754eb132607789c8f1d4820f3e0e486593d6f64ee8f918ea4362152f050baec16f17904c03a6cdc0abc6e5fb2510308dcbabebe97b29285fbc SHA512 431dfba0f413071d7faa18bc6e6f5e4f015285e2cc730c5dd69b2a4d6aa4250b7e0bcb1814ac6f06f5c76f103aea1f93f72f32aee6bc0cd7ddacdaf1f40075c1
+DIST opencv-4.1.2.tar.gz 87468598 BLAKE2B 9e0fbd8499f783cd1a2b5ffddf557aef424b0a446f71f826522ffd4526d04742e0c408b99810fe6b39753d40c475922d2e273732fdc0a0b4ee0bc56052a7a26c SHA512 d18d2cc35dc1c95c8870d35feb14459db27ebf6d09ff89a185918b1faff1b36dedacc18f268a6483570c404aca19b83ba627ce7af2265af7195a029cb766c09f
+DIST opencv-4.1.2_contrib.tar.gz 60881937 BLAKE2B c461aaa62306b226bde9211e2d611dcf705510e32c8598458737eb09c510cfdb49c33e11f1a7c591090d8243590e915b779fdb55955550fe44dab7545e4cc308 SHA512 1e14f94f9228c5d6a598493eed265aab1d8a740d5bfa00639afb05287732220eb71f88bb374de47dcd440f4376486f9db0e8b338e90e5dc4f6af8d355340b622
DIST tiny-dnn-1.0.0a3.tar.gz 12885646 BLAKE2B 85c0715ab6c692b77522487775e70b0db645528baed1830c83c9f44d2b67a5207e4f7ea1709b35c6a4217d287199549304e9be19f4a5cec9a1183b0b5dccc562 SHA512 5f2c1a161771efa67e85b1fea395953b7744e29f61187ac5a6c54c912fb195b3aef9a5827135c3668bd0eeea5ae04a33cc433e1f6683e2b7955010a2632d168b
DIST vgg_boostdesc-3.2.0.tar.gz 1867770 BLAKE2B 1fa5b58e73b6fa56ecf8d19af22298f729942ee1369082e173445d09d3de767bf844bad3d2b462efc1199c392f37c88ba49a9996ba8bfd84b4abeba7de94db63 SHA512 4a046aedd639c8eb4b295b0f499e756deb66210ca083f0124c75531e540663367cb58f6d175f66c4713324177036cd89a8869bdab2de8d1736dafc7f00ef9f44
EBUILD opencv-2.4.13-r3.ebuild 5918 BLAKE2B 3ffd92b751e983cddd74e26d48e532973110a8fcd715641ead732bf4a1ed4802ac2c0385769d061f6632e33dfc1bf26758815bf1a896d020ef628de7df28c8d2 SHA512 0fae932f9326429f7c37a698c89b9cbf4da0c2e73640992211d9a8b7a5ce8b61d5e75d30f4f376345a992285fe40395b117c968daaf9e7db9b4cc52ff621bee8
-EBUILD opencv-3.4.1-r5.ebuild 18644 BLAKE2B 51d5bdf871fb91c0b89db7dd33e52d357c26fceb575631abc63d9bbaed98a583d8731c0deb1e0e5d39745d01ab9a32a78aaa6922d231b1ec7b1cff0ec6976557 SHA512 512add3c726f89329d3fda55d541d68ca8099aa537ebed6833d0667bd8304c8f3af7d45bac23991be5b99e6559b771546a6b69e4c6a9a72a108b695d0f93ef36
-EBUILD opencv-3.4.1-r6.ebuild 18717 BLAKE2B 419a8c987559d22076ddd3154172c2ae11c4986dcded798c46da3569f46c3cc78f9a1e602ef5d91c3760ea4ba8ae6e2240bf20d007d77af7d1226794e2da77ef SHA512 510a0a6d6266961d88097c39146fe19488fad8c2539c2ae02440dee8623d17d36c010b5e6305a04e52c68c421e6d2942534d7aa1e652fe7ea09b3a5a5735089c
-MISC metadata.xml 2458 BLAKE2B 3102d768cb8308fa243ab9388110312ddf1a2adfd6aa31d8261192530bdb13e222338eb424c2102c12af129494d3025097b79e1cb34770238c8ef90d10b0a535 SHA512 e364a0811b3eab96adc83e800d6fad7ceb51d56b5c78ba1d363af19fe27c17bf644bb99a30e6235a6154971caeec389dcced8ba1cdca9586d8cfead8927617a0
+EBUILD opencv-3.4.1-r7.ebuild 18656 BLAKE2B 72a9b18ac85f3d627175c29b8070f300223f6976d2dcfbdd772b0206c6991e46fa3e88327ed1c57608d33f26881dc41eaa4361addc23f33f1176257580341558 SHA512 80b39a5636dab7b4b2a552530fb1c92697ac7cdf43e3570fe4b9df2f7dad8c0e93845aa2e665b2c82442ff577870324eb316d144efe1a49f428cb80ab6d46579
+EBUILD opencv-4.1.2-r1.ebuild 18341 BLAKE2B 34f53688a7455de79067fa64539fcd407e0728defa630896cf7b4a8cb48e33dc03a29329bb9d59840a3b84a15aff9ea23f00caadb7f98e0ca8744032c15f8d57 SHA512 b4978f9fea42ab88d9556a9a79a1132911cadf093ce075f28c00b3bb95c853c52a37a989c6d71e1ebcf79ae4b0f77f86902522dac4752a4619a111798978b664
+EBUILD opencv-4.1.2-r2.ebuild 18382 BLAKE2B 4ffa8be3cf757ede27a22a996fea11f6dfaf322370d57fb86547a517407c88a1c3be791147645d42b065a002e3f75cdc789ddc3bef6ac8b6d31a0bb2deb3e41d SHA512 2bfb067b584bec7272874a53a4a21a62767a927ee35254f27cf3f5898fbf230daba5caa39298f3f6a24aba07f56ed37b0db3bccb3097ccc4e52ca80877a58b1f
+MISC metadata.xml 2728 BLAKE2B aff1160741e363d0bfd7b7d6c96a28025f885a785c6d106e5fb2dd5704883d2542ad627cdaf0d8c612522720006a1df18104fa225cf47eb0e5aff029b8ebc6fb SHA512 924e3f9c58cee3e00ed7f3690444637f0889cc9140cd5ca14fcff8fd35d84724703516f07c803c79c242e209f50edf24b7156ca4ad79fffbc19e1166d4e730bd
diff --git a/media-libs/opencv/files/opencv-4.1.2-opencl-license.patch b/media-libs/opencv/files/opencv-4.1.2-opencl-license.patch
new file mode 100644
index 000000000000..f69a88db0a49
--- /dev/null
+++ b/media-libs/opencv/files/opencv-4.1.2-opencl-license.patch
@@ -0,0 +1,10 @@
+--- a/cmake/OpenCVDetectOpenCL.cmake.ORIG 2019-11-29 11:29:00.642852106 +0100
++++ b/cmake/OpenCVDetectOpenCL.cmake 2019-11-29 11:37:57.088822546 +0100
+@@ -5,7 +5,6 @@
+ else()
+ set(OPENCL_LIBRARY "" CACHE STRING "OpenCL library")
+ set(OPENCL_INCLUDE_DIR "${OpenCV_SOURCE_DIR}/3rdparty/include/opencl/1.2" CACHE PATH "OpenCL include directory")
+- ocv_install_3rdparty_licenses(opencl-headers "${OpenCV_SOURCE_DIR}/3rdparty/include/opencl/LICENSE.txt")
+ endif()
+ mark_as_advanced(OPENCL_INCLUDE_DIR OPENCL_LIBRARY)
+
diff --git a/media-libs/opencv/files/opencv-4.1.2-pkg-config-file.patch b/media-libs/opencv/files/opencv-4.1.2-pkg-config-file.patch
new file mode 100644
index 000000000000..496216186af3
--- /dev/null
+++ b/media-libs/opencv/files/opencv-4.1.2-pkg-config-file.patch
@@ -0,0 +1,11 @@
+--- a/cmake/templates/opencv-XXX.pc.in 2019-12-04 21:28:09.686525699 +0100
++++ b/cmake/templates/opencv-XXX.pc.in 2019-12-04 21:29:21.319265154 +0100
+@@ -3,7 +3,7 @@
+ prefix=@prefix@
+ exec_prefix=@exec_prefix@
+ libdir=@libdir@
+-includedir_old=@includedir@/opencv
++includedir_old=@includedir@/opencv2
+ includedir_new=@includedir@
+
+ Name: OpenCV
diff --git a/media-libs/opencv/metadata.xml b/media-libs/opencv/metadata.xml
index e9ef881716dc..f7bccfa408e7 100644
--- a/media-libs/opencv/metadata.xml
+++ b/media-libs/opencv/metadata.xml
@@ -13,16 +13,19 @@ Face Recognition; Gesture Recognition; Motion Tracking, Ego Motion, Motion Under
<use>
<flag name="contrib">Install user contributed scripts from opencv_contrib (Experimental!)</flag>
<flag name="cuda">Enable NVIDIA Cuda computations support (Experimental!)</flag>
+ <flag restrict="&gt;=media-libs/opencv-4.1.2" name="download">Enable download during cmake configure</flag>
<flag name="eigen">Enable usage of <pkg>dev-cpp/eigen</pkg> for computations</flag>
+ <flag name="features2d">Enable features2d module</flag>
<flag name="gdal">Enable support for sci-libs/gdal library</flag>
+ <flag restrict="&gt;=media-libs/opencv-4.1.2" name="opencvapps">Enable compilation with opencvapps</flag>
<flag restrict="&gt;=media-libs/opencv-3.1.0" name="gflags">Use Google's C++ argument parsing library</flag>
<flag restrict="&gt;=media-libs/opencv-3.1.0" name="glog">Use Google's C++ loggin library</flag>
- <flag restrict="&gt;=media-libs/opencv-3.1.0" name="contrib_xfeatures2d">Enables xfeatures2d and autodownload of samples in contrib</flag>
- <flag restrict="&gt;=media-libs/opencv-3.1.0" name="contrib_cvv">CVV module requires Qt5</flag>
- <flag restrict="&gt;=media-libs/opencv-3.3.0" name="contrib_dnn">DNN module contrib requires tiny dnn</flag>
- <flag restrict="&gt;=media-libs/opencv-3.1.0" name="contrib_hdf">HDF module requires <pkg>sci-libs/hdf5</pkg></flag>
- <flag restrict="&gt;=media-libs/opencv-3.1.0" name="contrib_sfm">SFM module requires eigen, gflags, and glog</flag>
- <flag restrict="&gt;=media-libs/opencv-3.4.0" name="dnn_samples">Download dnn caffeemodel samples</flag>
+ <flag restrict="&gt;=media-libs/opencv-3.1.0" name="contribxfeatures2d">Enables xfeatures2d and autodownload of samples in contrib</flag>
+ <flag restrict="&gt;=media-libs/opencv-3.1.0" name="contribcvv">CVV module requires Qt5</flag>
+ <flag restrict="&gt;=media-libs/opencv-3.3.0" name="contribdnn">DNN module contrib requires tiny dnn</flag>
+ <flag restrict="&gt;=media-libs/opencv-3.1.0" name="contribhdf">HDF module requires <pkg>sci-libs/hdf5</pkg></flag>
+ <flag restrict="&gt;=media-libs/opencv-3.1.0" name="contribsfm">SFM module requires eigen, gflags, and glog</flag>
+ <flag restrict="&gt;=media-libs/opencv-3.4.0" name="dnnsamples">Download dnn caffeemodel samples</flag>
<flag name="opencl">Add support for OpenCL</flag>
<flag restrict="&gt;=media-libs/opencv-3.1.0" name="tesseract">Use Google's OCR Engine</flag>
<flag name="testprograms">Build and install programs for testing OpenCV (performance)</flag>
diff --git a/media-libs/opencv/opencv-3.4.1-r6.ebuild b/media-libs/opencv/opencv-3.4.1-r7.ebuild
index 92376a497c45..12cd224b4001 100644
--- a/media-libs/opencv/opencv-3.4.1-r6.ebuild
+++ b/media-libs/opencv/opencv-3.4.1-r7.ebuild
@@ -12,33 +12,33 @@ DESCRIPTION="A collection of algorithms and sample code for various computer vis
HOMEPAGE="https://opencv.org"
TINY_DNN_PV="1.0.0a3"
SRC_URI="https://github.com/${PN}/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz
- dnn_samples? ( https://dev.gentoo.org/~amynka/snap/${PN}-3.4.0-res10_300x300-caffeemodel.tar.gz )
+ dnnsamples? ( https://dev.gentoo.org/~amynka/snap/${PN}-3.4.0-res10_300x300-caffeemodel.tar.gz )
contrib? (
https://github.com/${PN}/${PN}_contrib/archive/${PV}.tar.gz -> ${P}_contrib.tar.gz
- contrib_dnn? (
+ contribdnn? (
https://github.com/tiny-dnn/tiny-dnn/archive/v${TINY_DNN_PV}.tar.gz -> tiny-dnn-${TINY_DNN_PV}.tar.gz
https://dev.gentoo.org/~amynka/snap/${PN}-3.4.0-face_landmark_model.tar.gz
)
- contrib_xfeatures2d? ( https://dev.gentoo.org/~amynka/snap/vgg_boostdesc-3.2.0.tar.gz )
+ contribxfeatures2d? ( https://dev.gentoo.org/~amynka/snap/vgg_boostdesc-3.2.0.tar.gz )
)"
LICENSE="BSD"
SLOT="0/3.4.1" # subslot = libopencv* soname version
-KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~x86 ~amd64-linux"
-IUSE="contrib contrib_cvv contrib_dnn contrib_hdf contrib_sfm contrib_xfeatures2d cpu_flags_x86_sse cpu_flags_x86_sse2 cpu_flags_x86_sse3 cpu_flags_x86_ssse3 cpu_flags_x86_sse4_1 cpu_flags_x86_sse4_2 cpu_flags_x86_popcnt cpu_flags_x86_avx cpu_flags_x86_avx2 cpu_flags_x86_fma3 cuda debug dnn_samples +eigen examples ffmpeg gdal gflags glog gphoto2 gstreamer gtk ieee1394 jpeg lapack libav opencl openexr opengl openmp pch png +python qt5 tesseract testprograms threads tiff vaapi v4l vtk webp xine"
+KEYWORDS="amd64 ~arm arm64 ~ppc ~ppc64 x86 ~amd64-linux"
+IUSE="contrib contribcvv contribdnn contribhdf contribsfm contribxfeatures2d cpu_flags_x86_sse cpu_flags_x86_sse2 cpu_flags_x86_sse3 cpu_flags_x86_ssse3 cpu_flags_x86_sse4_1 cpu_flags_x86_sse4_2 cpu_flags_x86_popcnt cpu_flags_x86_avx cpu_flags_x86_avx2 cpu_flags_x86_fma3 cuda debug dnnsamples +eigen examples ffmpeg gdal gflags glog gphoto2 gstreamer gtk ieee1394 jpeg lapack libav opencl openexr opengl openmp pch png +python qt5 tesseract testprograms threads tiff vaapi v4l vtk webp xine"
# OpenGL needs gtk or Qt installed to activate, otherwise build system
# will silently disable it Wwithout the user knowing, which defeats the
# purpose of the opengl use flag.
REQUIRED_USE="
cuda? ( tesseract? ( opencl ) )
- dnn_samples? ( examples )
+ dnnsamples? ( examples )
gflags? ( contrib )
glog? ( contrib )
- contrib_cvv? ( contrib qt5 )
- contrib_dnn? ( contrib )
- contrib_hdf? ( contrib )
- contrib_sfm? ( contrib eigen gflags glog )
- contrib_xfeatures2d? ( contrib cuda )
+ contribcvv? ( contrib qt5 )
+ contribdnn? ( contrib )
+ contribhdf? ( contrib )
+ contribsfm? ( contrib eigen gflags glog )
+ contribxfeatures2d? ( contrib cuda )
java? ( python )
opengl? ( || ( gtk qt5 ) )
python? ( ${PYTHON_REQUIRED_USE} )
@@ -54,7 +54,7 @@ RDEPEND="
dev-libs/protobuf:=[${MULTILIB_USEDEP}]
sys-libs/zlib[${MULTILIB_USEDEP}]
cuda? ( dev-util/nvidia-cuda-toolkit:0= )
- contrib_hdf? ( sci-libs/hdf5 )
+ contribhdf? ( sci-libs/hdf5 )
ffmpeg? (
libav? ( media-video/libav:0=[${MULTILIB_USEDEP}] )
!libav? ( media-video/ffmpeg:0=[${MULTILIB_USEDEP}] )
@@ -103,7 +103,6 @@ RDEPEND="
xine? ( media-libs/xine-lib )"
DEPEND="${RDEPEND}
virtual/pkgconfig[${MULTILIB_USEDEP}]
- contrib_dnn? ( dev-libs/cereal )
eigen? ( dev-cpp/eigen:3 )
java? ( >=virtual/jdk-1.6 )
vaapi? ( x11-libs/libva )"
@@ -255,7 +254,7 @@ src_prepare() {
sed -e '/add_subdirectory(.*3rdparty.*)/ d' \
-i CMakeLists.txt cmake/*cmake || die
- if use dnn_samples; then
+ if use dnnsamples; then
mv "${WORKDIR}/res10_300x300_ssd_iter_140000.caffemodel" "${WORKDIR}/${P}/samples/dnn/" || die
fi
@@ -263,7 +262,7 @@ src_prepare() {
cd "${WORKDIR}/${PN}_contrib-${PV}" || die
eapply "${FILESDIR}/${PN}-3.3.0-remove-tiny-dnn-autodownload.patch"
- if use contrib_xfeatures2d; then
+ if use contribxfeatures2d; then
mv "${WORKDIR}"/*.i "${WORKDIR}/${PN}_contrib-${PV}"/modules/xfeatures2d/src/ || die
fi
fi
@@ -429,13 +428,13 @@ multilib_src_configure() {
# ===================================================
if use contrib; then
GLOBALCMAKEARGS+=(
- -DBUILD_opencv_dnn=$(usex contrib_dnn ON OFF)
+ -DBUILD_opencv_dnn=$(usex contribdnn ON OFF)
-DTINYDNN_ROOT="${WORKDIR}/tiny-dnn-${TINY_DNN_PV}"
-DBUILD_opencv_dnns_easily_fooled=OFF
- -DBUILD_opencv_xfeatures2d=$(usex contrib_xfeatures2d ON OFF)
- -DBUILD_opencv_cvv=$(usex contrib_cvv ON OFF)
- -DBUILD_opencv_hdf=$(multilib_native_usex contrib_hdf ON OFF)
- -DBUILD_opencv_sfm=$(usex contrib_sfm ON OFF)
+ -DBUILD_opencv_xfeatures2d=$(usex contribxfeatures2d ON OFF)
+ -DBUILD_opencv_cvv=$(usex contribcvv ON OFF)
+ -DBUILD_opencv_hdf=$(multilib_native_usex contribhdf ON OFF)
+ -DBUILD_opencv_sfm=$(usex contribsfm ON OFF)
)
if multilib_is_native_abi; then
@@ -461,7 +460,7 @@ multilib_src_configure() {
# Copy face_land_model to ${CMAKE_BINARY_DIR}/${OPENCV_TEST_DATA_INSTALL_PATH}
# TODO patch ocv_download to copy files into destination dirs
- if use contrib_dnn; then
+ if use contribdnn; then
mkdir -p "${BUILD_DIR}"/share/OpenCV/testdata/cv/face/ || die
cp "${WORKDIR}"/face_landmark_model.dat "${BUILD_DIR}"/share/OpenCV/testdata/cv/face/ || die
fi
diff --git a/media-libs/opencv/opencv-3.4.1-r5.ebuild b/media-libs/opencv/opencv-4.1.2-r1.ebuild
index 662a0e1a266e..02fb2d8d7340 100644
--- a/media-libs/opencv/opencv-3.4.1-r5.ebuild
+++ b/media-libs/opencv/opencv-4.1.2-r1.ebuild
@@ -1,43 +1,40 @@
# Copyright 1999-2019 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=6
+EAPI=7
-PYTHON_COMPAT=( python{2_7,3_5,3_6} )
+PYTHON_COMPAT=( python2_7 python3_{5,6,7} )
-: ${CMAKE_MAKEFILE_GENERATOR:=ninja}
inherit java-pkg-opt-2 java-ant-2 python-r1 toolchain-funcs cmake-multilib
DESCRIPTION="A collection of algorithms and sample code for various computer vision problems"
HOMEPAGE="https://opencv.org"
TINY_DNN_PV="1.0.0a3"
SRC_URI="https://github.com/${PN}/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz
- dnn_samples? ( https://dev.gentoo.org/~amynka/snap/${PN}-3.4.0-res10_300x300-caffeemodel.tar.gz )
+ dnnsamples? ( https://dev.gentoo.org/~amynka/snap/${PN}-3.4.0-res10_300x300-caffeemodel.tar.gz )
contrib? (
https://github.com/${PN}/${PN}_contrib/archive/${PV}.tar.gz -> ${P}_contrib.tar.gz
- contrib_dnn? ( https://github.com/tiny-dnn/tiny-dnn/archive/v${TINY_DNN_PV}.tar.gz -> tiny-dnn-${TINY_DNN_PV}.tar.gz
- https://dev.gentoo.org/~amynka/snap/${PN}-3.4.0-face_landmark_model.tar.gz
- )
- contrib_xfeatures2d? ( https://dev.gentoo.org/~amynka/snap/vgg_boostdesc-3.2.0.tar.gz )
+ contribdnn? ( https://dev.gentoo.org/~amynka/snap/${PN}-3.4.0-face_landmark_model.tar.gz )
+ contribxfeatures2d? ( https://dev.gentoo.org/~amynka/snap/vgg_boostdesc-3.2.0.tar.gz )
)"
LICENSE="BSD"
-SLOT="0/3.4.1" # subslot = libopencv* soname version
-KEYWORDS="amd64 ~arm arm64 ~ppc ~ppc64 x86 ~amd64-linux"
-IUSE="contrib contrib_cvv contrib_dnn contrib_hdf contrib_sfm contrib_xfeatures2d cpu_flags_x86_sse cpu_flags_x86_sse2 cpu_flags_x86_sse3 cpu_flags_x86_ssse3 cpu_flags_x86_sse4_1 cpu_flags_x86_sse4_2 cpu_flags_x86_popcnt cpu_flags_x86_avx cpu_flags_x86_avx2 cpu_flags_x86_fma3 cuda debug dnn_samples +eigen examples ffmpeg gdal gflags glog gphoto2 gstreamer gtk ieee1394 jpeg lapack libav opencl openexr opengl openmp pch png +python qt5 tesseract testprograms threads tiff vaapi v4l vtk webp xine"
+SLOT="0/4.1.2" # subslot = libopencv* soname version
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~x86 ~amd64-linux"
+IUSE="contrib contribcvv contribdnn contribhdf contribsfm contribxfeatures2d cpu_flags_x86_sse cpu_flags_x86_sse2 cpu_flags_x86_sse3 cpu_flags_x86_ssse3 cpu_flags_x86_sse4_1 cpu_flags_x86_sse4_2 cpu_flags_x86_popcnt cpu_flags_x86_avx cpu_flags_x86_avx2 cpu_flags_x86_fma3 cuda debug dnnsamples -download +eigen examples +features2d ffmpeg gdal gflags glog gphoto2 gstreamer gtk ieee1394 jpeg jpeg2k lapack libav opencl openexr opengl openmp opencvapps pch png +python qt5 tesseract testprograms threads tiff vaapi v4l vtk webp xine"
# OpenGL needs gtk or Qt installed to activate, otherwise build system
# will silently disable it Wwithout the user knowing, which defeats the
# purpose of the opengl use flag.
REQUIRED_USE="
cuda? ( tesseract? ( opencl ) )
- dnn_samples? ( examples )
+ dnnsamples? ( examples )
gflags? ( contrib )
glog? ( contrib )
- contrib_cvv? ( contrib qt5 )
- contrib_dnn? ( contrib )
- contrib_hdf? ( contrib )
- contrib_sfm? ( contrib eigen gflags glog )
- contrib_xfeatures2d? ( contrib cuda )
+ contribcvv? ( contrib qt5 )
+ contribdnn? ( contrib )
+ contribhdf? ( contrib )
+ contribsfm? ( contrib eigen gflags glog )
+ contribxfeatures2d? ( contrib download )
java? ( python )
opengl? ( || ( gtk qt5 ) )
python? ( ${PYTHON_REQUIRED_USE} )
@@ -53,7 +50,7 @@ RDEPEND="
dev-libs/protobuf:=[${MULTILIB_USEDEP}]
sys-libs/zlib[${MULTILIB_USEDEP}]
cuda? ( dev-util/nvidia-cuda-toolkit:0= )
- contrib_hdf? ( sci-libs/hdf5 )
+ contribhdf? ( sci-libs/hdf5:= )
ffmpeg? (
libav? ( media-video/libav:0=[${MULTILIB_USEDEP}] )
!libav? ( media-video/ffmpeg:0=[${MULTILIB_USEDEP}] )
@@ -102,7 +99,6 @@ RDEPEND="
xine? ( media-libs/xine-lib )"
DEPEND="${RDEPEND}
virtual/pkgconfig[${MULTILIB_USEDEP}]
- contrib_dnn? ( dev-libs/cereal )
eigen? ( dev-cpp/eigen:3 )
java? ( >=virtual/jdk-1.6 )
vaapi? ( x11-libs/libva )"
@@ -222,18 +218,22 @@ MULTILIB_WRAPPED_HEADERS=(
/usr/include/opencv2/cudev/warp/scan.hpp
/usr/include/opencv2/cudev/warp/shuffle.hpp
/usr/include/opencv2/cudev/warp/warp.hpp
+ # [opencv4]
+ /usr/include/opencv4/opencv2/core/cv_cpu_dispatch.h
+ /usr/include/opencv4/opencv2/core/cvdef.h
+ /usr/include/opencv4/opencv2/dnn.hpp
+ /usr/include/opencv4/opencv2/core/cuda/transform.hpp
+ /usr/include/opencv4/opencv2/core/opencl/runtime/opencl_core.hpp
+ /usr/include/opencv4/opencv2/cvconfig.h
+ /usr/include/opencv4/opencv2/core/utils/allocator_stats.impl.hpp
+ /usr/include/opencv4/opencv2/video/tracking.hpp
+ /usr/include/opencv4/opencv2/objdetect.hpp
)
PATCHES=(
"${FILESDIR}/${PN}-3.0.0-gles.patch"
"${FILESDIR}/${PN}-3.4.0-disable-download.patch"
- "${FILESDIR}/${P}-compilation-C-mode.patch" # https://bugs.gentoo.org/656530
- "${FILESDIR}/${P}-python-lib-suffix-hack.patch"
- "${FILESDIR}/${P}-cuda-add-relaxed-constexpr.patch"
- "${FILESDIR}/${P}-remove-git-autodetect.patch"
- "${FILESDIR}/${P}-fix-build-with-va.patch" # bug https://bugs.gentoo.org/656576
- "${FILESDIR}/${P}-popcnt.patch" # https://bugs.gentoo.org/633900
- "${FILESDIR}/${P}-fix-on-x86.patch" # https://bugs.gentoo.org/682104
+ "${FILESDIR}/${PN}-3.4.1-cuda-add-relaxed-constexpr.patch"
)
pkg_pretend() {
@@ -253,15 +253,13 @@ src_prepare() {
sed -e '/add_subdirectory(.*3rdparty.*)/ d' \
-i CMakeLists.txt cmake/*cmake || die
- if use dnn_samples; then
+ if use dnnsamples; then
mv "${WORKDIR}/res10_300x300_ssd_iter_140000.caffemodel" "${WORKDIR}/${P}/samples/dnn/" || die
fi
if use contrib; then
cd "${WORKDIR}/${PN}_contrib-${PV}" || die
- eapply "${FILESDIR}/${PN}-3.3.0-remove-tiny-dnn-autodownload.patch"
-
- if use contrib_xfeatures2d; then
+ if use contribxfeatures2d; then
mv "${WORKDIR}"/*.i "${WORKDIR}/${PN}_contrib-${PV}"/modules/xfeatures2d/src/ || die
fi
fi
@@ -280,7 +278,8 @@ multilib_src_configure() {
GLOBALCMAKEARGS=(
# Optional 3rd party components
# ===================================================
- -DENABLE_DOWNLOAD=OFF
+ -DENABLE_DOWNLOAD=$(usex download)
+ -DWITH_QUIRC=OFF # Do not have dependencies
-DWITH_1394=$(usex ieee1394)
# -DWITH_AVFOUNDATION=OFF # IOS
-DWITH_VTK=$(multilib_native_usex vtk)
@@ -317,7 +316,7 @@ multilib_src_configure() {
-DWITH_UNICAP=OFF # Not packaged
-DWITH_V4L=$(usex v4l)
-DWITH_LIBV4L=$(usex v4l)
- -DWITH_DSHOW=ON # direct show supp
+ #-DWITH_DSHOW=ON # direct show supp
-DWITH_MSMF=OFF
-DWITH_XIMEA=OFF # Windows only
-DWITH_XINE=$(multilib_native_usex xine)
@@ -348,10 +347,10 @@ multilib_src_configure() {
# ===================================================
# OpenCV build components
# ===================================================
- -DBUILD_SHARED_LIBS=ON
+ -DBUILD_SHARED_LIBS=$(usex java OFF ON)
-DBUILD_JAVA=$(multilib_native_usex java) # Ant needed, no compile flag
-DBUILD_ANDROID_EXAMPLES=OFF
- -DBUILD_opencv_apps=
+ -DBUILD_opencv_apps=$(usex opencvapps ON OFF)
-DBUILD_DOCS=OFF # Doesn't install anyways.
-DBUILD_EXAMPLES=$(multilib_native_usex examples)
-DBUILD_PERF_TESTS=OFF
@@ -372,6 +371,7 @@ multilib_src_configure() {
-DINSTALL_PYTHON_EXAMPLES=$(multilib_native_usex examples)
# -DINSTALL_ANDROID_EXAMPLES=OFF
-DINSTALL_TO_MANGLED_PATHS=OFF
+ -DOPENCV_GENERATE_PKGCONFIG=ON
# opencv uses both ${CMAKE_INSTALL_LIBDIR} and ${LIB_SUFFIX}
# to set its destination libdir
-DLIB_SUFFIX=
@@ -409,17 +409,9 @@ multilib_src_configure() {
# cpu flags, should solve 633900
#===================================================
-DOPENCV_CPU_OPT_IMPLIES_IGNORE=ON
+ -DCPU_BASELINE=$(printf "%s," "${cpu_flags[@]}")
-DCPU_DISPATCH=
- -DENABLE_SSE=$(usex cpu_flags_x86_sse)
- -DENABLE_SSE2=$(usex cpu_flags_x86_sse2)
- -DENABLE_SSE3=$(usex cpu_flags_x86_sse3)
- -DENABLE_SSSE3=$(usex cpu_flags_x86_ssse3)
- -DENABLE_SSE41=$(usex cpu_flags_x86_sse4_1)
- -DENABLE_SSE42=$(usex cpu_flags_x86_sse4_2)
- -DENABLE_POPCNT=$(usex cpu_flags_x86_popcnt)
- -DENABLE_AVX=$(usex cpu_flags_x86_avx)
- -DENABLE_AVX2=$(usex cpu_flags_x86_avx2)
- -DENABLE_FMA3=$(usex cpu_flags_x86_fma3)
+ -DBUILD_opencv_features2d=$(usex features2d ON OFF)
)
# ===================================================
@@ -427,13 +419,13 @@ multilib_src_configure() {
# ===================================================
if use contrib; then
GLOBALCMAKEARGS+=(
- -DBUILD_opencv_dnn=$(usex contrib_dnn ON OFF)
+ -DBUILD_opencv_dnn=$(usex contribdnn ON OFF)
-DTINYDNN_ROOT="${WORKDIR}/tiny-dnn-${TINY_DNN_PV}"
-DBUILD_opencv_dnns_easily_fooled=OFF
- -DBUILD_opencv_xfeatures2d=$(usex contrib_xfeatures2d ON OFF)
- -DBUILD_opencv_cvv=$(usex contrib_cvv ON OFF)
- -DBUILD_opencv_hdf=$(multilib_native_usex contrib_hdf ON OFF)
- -DBUILD_opencv_sfm=$(usex contrib_sfm ON OFF)
+ -DBUILD_opencv_xfeatures2d=$(usex contribxfeatures2d ON OFF)
+ -DBUILD_opencv_cvv=$(usex contribcvv ON OFF)
+ -DBUILD_opencv_hdf=$(multilib_native_usex contribhdf ON OFF)
+ -DBUILD_opencv_sfm=$(usex contribsfm ON OFF)
)
if multilib_is_native_abi; then
@@ -453,13 +445,15 @@ multilib_src_configure() {
local mycmakeargs=( ${GLOBALCMAKEARGS[@]}
-DPYTHON_EXECUTABLE=OFF
-DINSTALL_PYTHON_EXAMPLES=OFF
+ -DBUILD_opencv_python2=OFF
+ -DBUILD_opencv_python3=OFF
)
cmake-utils_src_configure
# Copy face_land_model to ${CMAKE_BINARY_DIR}/${OPENCV_TEST_DATA_INSTALL_PATH}
# TODO patch ocv_download to copy files into destination dirs
- if use contrib_dnn; then
+ if use contribdnn; then
mkdir -p "${BUILD_DIR}"/share/OpenCV/testdata/cv/face/ || die
cp "${WORKDIR}"/face_landmark_model.dat "${BUILD_DIR}"/share/OpenCV/testdata/cv/face/ || die
fi
@@ -476,7 +470,6 @@ python_module_compile() {
# to the correct interpreter we are building for
-DPYTHON_DEFAULT_EXECUTABLE=python
-DINSTALL_PYTHON_EXAMPLES=$(usex examples)
- -DLIBPY_SUFFIX=64
)
# Regenerate cache file. Can't use rebuild_cache as it won't
diff --git a/media-libs/opencv/opencv-4.1.2-r2.ebuild b/media-libs/opencv/opencv-4.1.2-r2.ebuild
new file mode 100644
index 000000000000..c97e2fcb3f48
--- /dev/null
+++ b/media-libs/opencv/opencv-4.1.2-r2.ebuild
@@ -0,0 +1,498 @@
+# Copyright 1999-2019 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+PYTHON_COMPAT=( python2_7 python3_{5,6,7} )
+
+inherit java-pkg-opt-2 java-ant-2 python-r1 toolchain-funcs cmake-multilib
+
+DESCRIPTION="A collection of algorithms and sample code for various computer vision problems"
+HOMEPAGE="https://opencv.org"
+TINY_DNN_PV="1.0.0a3"
+SRC_URI="https://github.com/${PN}/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz
+ dnnsamples? ( https://dev.gentoo.org/~amynka/snap/${PN}-3.4.0-res10_300x300-caffeemodel.tar.gz )
+ contrib? (
+ https://github.com/${PN}/${PN}_contrib/archive/${PV}.tar.gz -> ${P}_contrib.tar.gz
+ contribdnn? ( https://dev.gentoo.org/~amynka/snap/${PN}-3.4.0-face_landmark_model.tar.gz )
+ contribxfeatures2d? ( https://dev.gentoo.org/~amynka/snap/vgg_boostdesc-3.2.0.tar.gz )
+ )"
+
+LICENSE="BSD"
+SLOT="0/4.1.2" # subslot = libopencv* soname version
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~x86 ~amd64-linux"
+IUSE="contrib contribcvv contribdnn contribhdf contribsfm contribxfeatures2d cpu_flags_x86_sse cpu_flags_x86_sse2 cpu_flags_x86_sse3 cpu_flags_x86_ssse3 cpu_flags_x86_sse4_1 cpu_flags_x86_sse4_2 cpu_flags_x86_popcnt cpu_flags_x86_avx cpu_flags_x86_avx2 cpu_flags_x86_fma3 cuda debug dnnsamples -download +eigen examples +features2d ffmpeg gdal gflags glog gphoto2 gstreamer gtk ieee1394 jpeg jpeg2k lapack libav opencl openexr opengl openmp opencvapps pch png +python qt5 tesseract testprograms threads tiff vaapi v4l vtk webp xine"
+# OpenGL needs gtk or Qt installed to activate, otherwise build system
+# will silently disable it Wwithout the user knowing, which defeats the
+# purpose of the opengl use flag.
+REQUIRED_USE="
+ cuda? ( tesseract? ( opencl ) )
+ dnnsamples? ( examples )
+ gflags? ( contrib )
+ glog? ( contrib )
+ contribcvv? ( contrib qt5 )
+ contribdnn? ( contrib )
+ contribhdf? ( contrib )
+ contribsfm? ( contrib eigen gflags glog )
+ contribxfeatures2d? ( contrib download )
+ java? ( python )
+ opengl? ( || ( gtk qt5 ) )
+ python? ( ${PYTHON_REQUIRED_USE} )
+ tesseract? ( contrib )"
+
+# The following logic is intrinsic in the build system, but we do not enforce
+# it on the useflags since this just blocks emerging pointlessly:
+# gtk? ( !qt5 )
+# openmp? ( !threads )
+
+RDEPEND="
+ app-arch/bzip2[${MULTILIB_USEDEP}]
+ dev-libs/protobuf:=[${MULTILIB_USEDEP}]
+ sys-libs/zlib[${MULTILIB_USEDEP}]
+ cuda? ( dev-util/nvidia-cuda-toolkit:0= )
+ contribhdf? ( sci-libs/hdf5:= )
+ ffmpeg? (
+ libav? ( media-video/libav:0=[${MULTILIB_USEDEP}] )
+ !libav? ( media-video/ffmpeg:0=[${MULTILIB_USEDEP}] )
+ )
+ gdal? ( sci-libs/gdal:= )
+ gflags? ( dev-cpp/gflags[${MULTILIB_USEDEP}] )
+ glog? ( dev-cpp/glog[${MULTILIB_USEDEP}] )
+ gphoto2? ( media-libs/libgphoto2[${MULTILIB_USEDEP}] )
+ gstreamer? (
+ media-libs/gstreamer:1.0[${MULTILIB_USEDEP}]
+ media-libs/gst-plugins-base:1.0[${MULTILIB_USEDEP}]
+ )
+ gtk? (
+ dev-libs/glib:2[${MULTILIB_USEDEP}]
+ x11-libs/gtk+:2[${MULTILIB_USEDEP}]
+ opengl? ( x11-libs/gtkglext[${MULTILIB_USEDEP}] )
+ )
+ ieee1394? (
+ media-libs/libdc1394[${MULTILIB_USEDEP}]
+ sys-libs/libraw1394[${MULTILIB_USEDEP}]
+ )
+ java? ( >=virtual/jre-1.6:* )
+ jpeg? ( virtual/jpeg:0[${MULTILIB_USEDEP}] )
+ lapack? ( virtual/lapack )
+ opencl? ( virtual/opencl[${MULTILIB_USEDEP}] )
+ openexr? ( media-libs/openexr[${MULTILIB_USEDEP}] )
+ opengl? (
+ virtual/opengl[${MULTILIB_USEDEP}]
+ virtual/glu[${MULTILIB_USEDEP}]
+ )
+ png? ( media-libs/libpng:0=[${MULTILIB_USEDEP}] )
+ python? ( ${PYTHON_DEPS} dev-python/numpy[${PYTHON_USEDEP}] )
+ qt5? (
+ dev-qt/qtgui:5
+ dev-qt/qtwidgets:5
+ dev-qt/qttest:5
+ dev-qt/qtconcurrent:5
+ opengl? ( dev-qt/qtopengl:5 )
+ )
+ tesseract? ( app-text/tesseract[opencl=] )
+ threads? ( dev-cpp/tbb[${MULTILIB_USEDEP}] )
+ tiff? ( media-libs/tiff:0[${MULTILIB_USEDEP}] )
+ v4l? ( >=media-libs/libv4l-0.8.3[${MULTILIB_USEDEP}] )
+ vtk? ( sci-libs/vtk[rendering] )
+ webp? ( media-libs/libwebp[${MULTILIB_USEDEP}] )
+ xine? ( media-libs/xine-lib )"
+DEPEND="${RDEPEND}
+ virtual/pkgconfig[${MULTILIB_USEDEP}]
+ eigen? ( dev-cpp/eigen:3 )
+ java? ( >=virtual/jdk-1.6 )
+ vaapi? ( x11-libs/libva )"
+
+MULTILIB_WRAPPED_HEADERS=(
+ /usr/include/opencv2/cvconfig.h
+ /usr/include/opencv2/opencv_modules.hpp
+ # [contrib_cvv]
+ /usr/include/opencv2/cvv.hpp
+ /usr/include/opencv2/cvv/call_meta_data.hpp
+ /usr/include/opencv2/cvv/cvv.hpp
+ /usr/include/opencv2/cvv/debug_mode.hpp
+ /usr/include/opencv2/cvv/dmatch.hpp
+ /usr/include/opencv2/cvv/filter.hpp
+ /usr/include/opencv2/cvv/final_show.hpp
+ /usr/include/opencv2/cvv/show_image.hpp
+ # [contrib_hdf]
+ /usr/include/opencv2/hdf.hpp
+ /usr/include/opencv2/hdf/hdf5.hpp
+ # [vtk]
+ /usr/include/opencv2/viz.hpp
+ /usr/include/opencv2/viz/types.hpp
+ /usr/include/opencv2/viz/viz3d.hpp
+ /usr/include/opencv2/viz/vizcore.hpp
+ /usr/include/opencv2/viz/widget_accessor.hpp
+ /usr/include/opencv2/viz/widgets.hpp
+ # [cudev]
+ /usr/include/opencv2/cudaarithm.hpp
+ /usr/include/opencv2/cudabgsegm.hpp
+ /usr/include/opencv2/cudacodec.hpp
+ /usr/include/opencv2/cudafeatures2d.hpp
+ /usr/include/opencv2/cudafilters.hpp
+ /usr/include/opencv2/cudaimgproc.hpp
+ /usr/include/opencv2/cudalegacy.hpp
+ /usr/include/opencv2/cudalegacy/NCVBroxOpticalFlow.hpp
+ /usr/include/opencv2/cudalegacy/NCVHaarObjectDetection.hpp
+ /usr/include/opencv2/cudalegacy/NCV.hpp
+ /usr/include/opencv2/cudalegacy/NCVPyramid.hpp
+ /usr/include/opencv2/cudalegacy/NPP_staging.hpp
+ /usr/include/opencv2/cudaobjdetect.hpp
+ /usr/include/opencv2/cudaoptflow.hpp
+ /usr/include/opencv2/cudastereo.hpp
+ /usr/include/opencv2/cudawarping.hpp
+ /usr/include/opencv2/cudev/block/block.hpp
+ /usr/include/opencv2/cudev/block/detail/reduce.hpp
+ /usr/include/opencv2/cudev/block/detail/reduce_key_val.hpp
+ /usr/include/opencv2/cudev/block/dynamic_smem.hpp
+ /usr/include/opencv2/cudev/block/reduce.hpp
+ /usr/include/opencv2/cudev/block/scan.hpp
+ /usr/include/opencv2/cudev/block/vec_distance.hpp
+ /usr/include/opencv2/cudev/common.hpp
+ /usr/include/opencv2/cudev/expr/binary_func.hpp
+ /usr/include/opencv2/cudev/expr/binary_op.hpp
+ /usr/include/opencv2/cudev/expr/color.hpp
+ /usr/include/opencv2/cudev/expr/deriv.hpp
+ /usr/include/opencv2/cudev/expr/expr.hpp
+ /usr/include/opencv2/cudev/expr/per_element_func.hpp
+ /usr/include/opencv2/cudev/expr/reduction.hpp
+ /usr/include/opencv2/cudev/expr/unary_func.hpp
+ /usr/include/opencv2/cudev/expr/unary_op.hpp
+ /usr/include/opencv2/cudev/expr/warping.hpp
+ /usr/include/opencv2/cudev/functional/color_cvt.hpp
+ /usr/include/opencv2/cudev/functional/detail/color_cvt.hpp
+ /usr/include/opencv2/cudev/functional/functional.hpp
+ /usr/include/opencv2/cudev/functional/tuple_adapter.hpp
+ /usr/include/opencv2/cudev/grid/copy.hpp
+ /usr/include/opencv2/cudev/grid/detail/copy.hpp
+ /usr/include/opencv2/cudev/grid/detail/histogram.hpp
+ /usr/include/opencv2/cudev/grid/detail/integral.hpp
+ /usr/include/opencv2/cudev/grid/detail/minmaxloc.hpp
+ /usr/include/opencv2/cudev/grid/detail/pyr_down.hpp
+ /usr/include/opencv2/cudev/grid/detail/pyr_up.hpp
+ /usr/include/opencv2/cudev/grid/detail/reduce.hpp
+ /usr/include/opencv2/cudev/grid/detail/reduce_to_column.hpp
+ /usr/include/opencv2/cudev/grid/detail/reduce_to_row.hpp
+ /usr/include/opencv2/cudev/grid/detail/split_merge.hpp
+ /usr/include/opencv2/cudev/grid/detail/transform.hpp
+ /usr/include/opencv2/cudev/grid/detail/transpose.hpp
+ /usr/include/opencv2/cudev/grid/histogram.hpp
+ /usr/include/opencv2/cudev/grid/integral.hpp
+ /usr/include/opencv2/cudev/grid/pyramids.hpp
+ /usr/include/opencv2/cudev/grid/reduce.hpp
+ /usr/include/opencv2/cudev/grid/reduce_to_vec.hpp
+ /usr/include/opencv2/cudev/grid/split_merge.hpp
+ /usr/include/opencv2/cudev/grid/transform.hpp
+ /usr/include/opencv2/cudev/grid/transpose.hpp
+ /usr/include/opencv2/cudev.hpp
+ /usr/include/opencv2/cudev/ptr2d/constant.hpp
+ /usr/include/opencv2/cudev/ptr2d/deriv.hpp
+ /usr/include/opencv2/cudev/ptr2d/detail/gpumat.hpp
+ /usr/include/opencv2/cudev/ptr2d/extrapolation.hpp
+ /usr/include/opencv2/cudev/ptr2d/glob.hpp
+ /usr/include/opencv2/cudev/ptr2d/gpumat.hpp
+ /usr/include/opencv2/cudev/ptr2d/interpolation.hpp
+ /usr/include/opencv2/cudev/ptr2d/lut.hpp
+ /usr/include/opencv2/cudev/ptr2d/mask.hpp
+ /usr/include/opencv2/cudev/ptr2d/remap.hpp
+ /usr/include/opencv2/cudev/ptr2d/resize.hpp
+ /usr/include/opencv2/cudev/ptr2d/texture.hpp
+ /usr/include/opencv2/cudev/ptr2d/traits.hpp
+ /usr/include/opencv2/cudev/ptr2d/transform.hpp
+ /usr/include/opencv2/cudev/ptr2d/warping.hpp
+ /usr/include/opencv2/cudev/ptr2d/zip.hpp
+ /usr/include/opencv2/cudev/util/atomic.hpp
+ /usr/include/opencv2/cudev/util/detail/tuple.hpp
+ /usr/include/opencv2/cudev/util/detail/type_traits.hpp
+ /usr/include/opencv2/cudev/util/limits.hpp
+ /usr/include/opencv2/cudev/util/saturate_cast.hpp
+ /usr/include/opencv2/cudev/util/simd_functions.hpp
+ /usr/include/opencv2/cudev/util/tuple.hpp
+ /usr/include/opencv2/cudev/util/type_traits.hpp
+ /usr/include/opencv2/cudev/util/vec_math.hpp
+ /usr/include/opencv2/cudev/util/vec_traits.hpp
+ /usr/include/opencv2/cudev/warp/detail/reduce.hpp
+ /usr/include/opencv2/cudev/warp/detail/reduce_key_val.hpp
+ /usr/include/opencv2/cudev/warp/reduce.hpp
+ /usr/include/opencv2/cudev/warp/scan.hpp
+ /usr/include/opencv2/cudev/warp/shuffle.hpp
+ /usr/include/opencv2/cudev/warp/warp.hpp
+ # [opencv4]
+ /usr/include/opencv4/opencv2/core/cv_cpu_dispatch.h
+ /usr/include/opencv4/opencv2/core/cvdef.h
+ /usr/include/opencv4/opencv2/dnn.hpp
+ /usr/include/opencv4/opencv2/core/cuda/transform.hpp
+ /usr/include/opencv4/opencv2/core/opencl/runtime/opencl_core.hpp
+ /usr/include/opencv4/opencv2/cvconfig.h
+ /usr/include/opencv4/opencv2/core/utils/allocator_stats.impl.hpp
+ /usr/include/opencv4/opencv2/video/tracking.hpp
+ /usr/include/opencv4/opencv2/objdetect.hpp
+)
+
+PATCHES=(
+ "${FILESDIR}/${PN}-3.0.0-gles.patch"
+ "${FILESDIR}/${PN}-3.4.0-disable-download.patch"
+ "${FILESDIR}/${PN}-3.4.1-cuda-add-relaxed-constexpr.patch"
+ "${FILESDIR}/${P}-pkg-config-file.patch"
+ "${FILESDIR}/${P}-opencl-license.patch"
+)
+
+pkg_pretend() {
+ [[ ${MERGE_TYPE} != binary ]] && use openmp && tc-check-openmp
+}
+
+pkg_setup() {
+ [[ ${MERGE_TYPE} != binary ]] && use openmp && tc-check-openmp
+ java-pkg-opt-2_pkg_setup
+}
+
+src_prepare() {
+ cmake-utils_src_prepare
+
+ # remove bundled stuff
+ rm -rf 3rdparty || die "Removing 3rd party components failed"
+ sed -e '/add_subdirectory(.*3rdparty.*)/ d' \
+ -i CMakeLists.txt cmake/*cmake || die
+
+ if use dnnsamples; then
+ mv "${WORKDIR}/res10_300x300_ssd_iter_140000.caffemodel" "${WORKDIR}/${P}/samples/dnn/" || die
+ fi
+
+ if use contrib; then
+ cd "${WORKDIR}/${PN}_contrib-${PV}" || die
+ if use contribxfeatures2d; then
+ mv "${WORKDIR}"/*.i "${WORKDIR}/${PN}_contrib-${PV}"/modules/xfeatures2d/src/ || die
+ fi
+ fi
+
+ java-pkg-opt-2_src_prepare
+
+ # this really belongs in src_prepare() too
+ JAVA_ANT_ENCODING="iso-8859-1"
+ # set encoding so even this cmake build will pick it up.
+ export ANT_OPTS+=" -Dfile.encoding=iso-8859-1"
+ java-ant-2_src_configure
+}
+
+multilib_src_configure() {
+ # please dont sort here, order is the same as in CMakeLists.txt
+ GLOBALCMAKEARGS=(
+ # Optional 3rd party components
+ # ===================================================
+ -DENABLE_DOWNLOAD=$(usex download)
+ -DWITH_QUIRC=OFF # Do not have dependencies
+ -DWITH_1394=$(usex ieee1394)
+ # -DWITH_AVFOUNDATION=OFF # IOS
+ -DWITH_VTK=$(multilib_native_usex vtk)
+ -DWITH_EIGEN=$(usex eigen)
+ -DWITH_VFW=OFF # Video windows support
+ -DWITH_FFMPEG=$(usex ffmpeg)
+ -DWITH_GSTREAMER=$(usex gstreamer)
+ -DWITH_GSTREAMER_0_10=OFF # Don't want this
+ -DWITH_GTK=$(usex gtk)
+ -DWITH_GTK_2_X=$(usex gtk)
+ -DWITH_IPP=OFF
+ -DWITH_JASPER=OFF
+ -DWITH_JPEG=$(usex jpeg)
+ -DWITH_WEBP=$(usex webp)
+ -DWITH_OPENEXR=$(usex openexr)
+ -DWITH_OPENGL=$(usex opengl)
+ -DWITH_OPENVX=OFF
+ -DWITH_OPENNI=OFF # Not packaged
+ -DWITH_OPENNI2=OFF # Not packaged
+ -DWITH_PNG=$(usex png)
+ -DWITH_GDCM=OFF
+ -DWITH_PVAPI=OFF
+ -DWITH_GIGEAPI=OFF
+ -DWITH_ARAVIS=OFF
+ -DWITH_QT=$(multilib_native_usex qt5 5 OFF)
+ -DWITH_WIN32UI=OFF # Windows only
+ # -DWITH_QUICKTIME=OFF
+ # -DWITH_QTKIT=OFF
+ -DWITH_TBB=$(usex threads)
+ -DWITH_OPENMP=$(usex openmp)
+ -DWITH_CSTRIPES=OFF
+ -DWITH_PTHREADS_PF=ON
+ -DWITH_TIFF=$(usex tiff)
+ -DWITH_UNICAP=OFF # Not packaged
+ -DWITH_V4L=$(usex v4l)
+ -DWITH_LIBV4L=$(usex v4l)
+ #-DWITH_DSHOW=ON # direct show supp
+ -DWITH_MSMF=OFF
+ -DWITH_XIMEA=OFF # Windows only
+ -DWITH_XINE=$(multilib_native_usex xine)
+ -DWITH_CLP=OFF
+ -DWITH_OPENCL=$(usex opencl)
+ -DWITH_OPENCL_SVM=OFF
+ -DWITH_OPENCLAMDFFT=$(usex opencl)
+ -DWITH_OPENCLAMDBLAS=$(usex opencl)
+ -DWITH_DIRECTX=OFF
+ -DWITH_INTELPERC=OFF
+ -DWITH_IPP_A=OFF
+ -DWITH_MATLAB=OFF
+ -DWITH_VA=$(usex vaapi)
+ -DWITH_VA_INTEL=$(usex vaapi)
+ -DWITH_GDAL=$(multilib_native_usex gdal)
+ -DWITH_GPHOTO2=$(usex gphoto2)
+ -DWITH_LAPACK=$(multilib_native_usex lapack)
+ -DWITH_ITT=OFF # 3dparty libs itt_notify
+ # ===================================================
+ # CUDA build components: nvidia-cuda-toolkit takes care of GCC version
+ # ===================================================
+ -DWITH_CUDA=$(multilib_native_usex cuda)
+ -DWITH_CUBLAS=$(multilib_native_usex cuda)
+ -DWITH_CUFFT=$(multilib_native_usex cuda)
+ -DWITH_NVCUVID=OFF
+# -DWITH_NVCUVID=$(usex cuda)
+ -DCUDA_NPP_LIBRARY_ROOT_DIR=$(usex cuda "${EPREFIX}/opt/cuda" "")
+ # ===================================================
+ # OpenCV build components
+ # ===================================================
+ -DBUILD_SHARED_LIBS=ON
+ -DBUILD_JAVA=$(multilib_native_usex java) # Ant needed, no compile flag
+ -DBUILD_ANDROID_EXAMPLES=OFF
+ -DBUILD_opencv_apps=$(usex opencvapps ON OFF)
+ -DBUILD_DOCS=OFF # Doesn't install anyways.
+ -DBUILD_EXAMPLES=$(multilib_native_usex examples)
+ -DBUILD_PERF_TESTS=OFF
+ -DBUILD_TESTS=$(multilib_native_usex testprograms)
+ -DBUILD_WITH_DEBUG_INFO=$(usex debug)
+ # -DBUILD_WITH_STATIC_CRT=OFF
+ -DBUILD_WITH_DYNAMIC_IPP=OFF
+ -DBUILD_FAT_JAVA_LIB=OFF
+ # -DBUILD_ANDROID_SERVICE=OFF
+ -DBUILD_CUDA_STUBS=$(multilib_native_usex cuda)
+ -DOPENCV_EXTRA_MODULES_PATH=$(usex contrib "${WORKDIR}/opencv_contrib-${PV}/modules" "")
+ # ===================================================
+ # OpenCV installation options
+ # ===================================================
+ -DINSTALL_CREATE_DISTRIB=OFF
+ -DINSTALL_C_EXAMPLES=$(multilib_native_usex examples)
+ -DINSTALL_TESTS=$(multilib_native_usex testprograms)
+ -DINSTALL_PYTHON_EXAMPLES=$(multilib_native_usex examples)
+ # -DINSTALL_ANDROID_EXAMPLES=OFF
+ -DINSTALL_TO_MANGLED_PATHS=OFF
+ -DOPENCV_GENERATE_PKGCONFIG=ON
+ # opencv uses both ${CMAKE_INSTALL_LIBDIR} and ${LIB_SUFFIX}
+ # to set its destination libdir
+ -DLIB_SUFFIX=
+ # ===================================================
+ # OpenCV build options
+ # ===================================================
+ -DENABLE_CCACHE=OFF
+ -DENABLE_PRECOMPILED_HEADERS=$(usex pch)
+ -DENABLE_SOLUTION_FOLDERS=OFF
+ -DENABLE_PROFILING=OFF
+ -DENABLE_COVERAGE=OFF
+
+ -DHAVE_opencv_java=$(multilib_native_usex java YES NO)
+ -DENABLE_NOISY_WARNINGS=OFF
+ -DOPENCV_WARNINGS_ARE_ERRORS=OFF
+ -DENABLE_IMPL_COLLECTION=OFF
+ -DENABLE_INSTRUMENTATION=OFF
+ -DGENERATE_ABI_DESCRIPTOR=OFF
+ -DDOWNLOAD_EXTERNAL_TEST_DATA=OFF
+ # ===================================================
+ # things we want to be hard off or not yet figured out
+ # ===================================================
+ -DBUILD_PACKAGE=OFF
+ # ===================================================
+ # Not building protobuf but update files bug #631418
+ # ===================================================
+ -DBUILD_PROTOBUF=OFF
+ -DPROTOBUF_UPDATE_FILES=ON
+ # ===================================================
+ # things we want to be hard enabled not worth useflag
+ # ===================================================
+ -DCMAKE_SKIP_RPATH=ON
+ -DOPENCV_DOC_INSTALL_PATH=
+ # ==================================================
+ # cpu flags, should solve 633900
+ #===================================================
+ -DOPENCV_CPU_OPT_IMPLIES_IGNORE=ON
+ -DCPU_BASELINE=$(printf "%s," "${cpu_flags[@]}")
+ -DCPU_DISPATCH=
+ -DBUILD_opencv_features2d=$(usex features2d ON OFF)
+ )
+
+ # ===================================================
+ # OpenCV Contrib Modules
+ # ===================================================
+ if use contrib; then
+ GLOBALCMAKEARGS+=(
+ -DBUILD_opencv_dnn=$(usex contribdnn ON OFF)
+ -DTINYDNN_ROOT="${WORKDIR}/tiny-dnn-${TINY_DNN_PV}"
+ -DBUILD_opencv_dnns_easily_fooled=OFF
+ -DBUILD_opencv_xfeatures2d=$(usex contribxfeatures2d ON OFF)
+ -DBUILD_opencv_cvv=$(usex contribcvv ON OFF)
+ -DBUILD_opencv_hdf=$(multilib_native_usex contribhdf ON OFF)
+ -DBUILD_opencv_sfm=$(usex contribsfm ON OFF)
+ )
+
+ if multilib_is_native_abi; then
+ GLOBALCMAKEARGS+=(
+ -DCMAKE_DISABLE_FIND_PACKAGE_Tesseract=$(usex !tesseract)
+ )
+ else
+ GLOBALCMAKEARGS+=(
+ -DCMAKE_DISABLE_FIND_PACKAGE_Tesseract=ON
+ )
+ fi
+ fi
+
+ # workaround for bug 413429
+ tc-export CC CXX
+
+ local mycmakeargs=( ${GLOBALCMAKEARGS[@]}
+ -DPYTHON_EXECUTABLE=OFF
+ -DINSTALL_PYTHON_EXAMPLES=OFF
+ -DBUILD_opencv_python2=OFF
+ -DBUILD_opencv_python3=OFF
+ )
+
+ cmake-utils_src_configure
+
+ # Copy face_land_model to ${CMAKE_BINARY_DIR}/${OPENCV_TEST_DATA_INSTALL_PATH}
+ # TODO patch ocv_download to copy files into destination dirs
+ if use contribdnn; then
+ mkdir -p "${BUILD_DIR}"/share/OpenCV/testdata/cv/face/ || die
+ cp "${WORKDIR}"/face_landmark_model.dat "${BUILD_DIR}"/share/OpenCV/testdata/cv/face/ || die
+ fi
+
+}
+
+python_module_compile() {
+ local BUILD_DIR=${orig_BUILD_DIR}
+ local mycmakeargs=( ${GLOBALCMAKEARGS[@]} )
+
+ # Set all python variables to load the correct Gentoo paths
+ mycmakeargs+=(
+ # python_setup alters PATH and sets this as wrapper
+ # to the correct interpreter we are building for
+ -DPYTHON_DEFAULT_EXECUTABLE=python
+ -DINSTALL_PYTHON_EXAMPLES=$(usex examples)
+ )
+
+ # Regenerate cache file. Can't use rebuild_cache as it won't
+ # have the Gentoo specific options.
+ rm -rf CMakeCache.txt || die "rm failed"
+ cmake-utils_src_configure
+ cmake-utils_src_compile
+ cmake-utils_src_install
+
+ # Remove compiled binary so new version compiles
+ # Avoid conflicts with new module builds as build system doesn't
+ # really support it.
+ rm -rf modules/python2 || die "rm failed"
+}
+
+multilib_src_install() {
+ cmake-utils_src_install
+
+ # Build and install the python modules for all targets
+ if multilib_is_native_abi && use python; then
+ local orig_BUILD_DIR=${BUILD_DIR}
+ python_foreach_impl python_module_compile
+ fi
+}