1 |
commit: 9957827bccf02bbff7542e3276bd8b84307d4bd0 |
2 |
Author: Andreas Sturmlechner <andreas.sturmlechner <AT> gmail <DOT> com> |
3 |
AuthorDate: Sat Jan 30 14:59:29 2016 +0000 |
4 |
Commit: Andreas Hüttel <dilfridge <AT> gentoo <DOT> org> |
5 |
CommitDate: Sat Jan 30 14:59:29 2016 +0000 |
6 |
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=9957827b |
7 |
|
8 |
media-libs/opencv: Bump subslot to 3.1, builds with python-3.5 |
9 |
|
10 |
media-libs/opencv/opencv-3.1.0-r1.ebuild | 252 +++++++++++++++++++++++++++++++ |
11 |
1 file changed, 252 insertions(+) |
12 |
|
13 |
diff --git a/media-libs/opencv/opencv-3.1.0-r1.ebuild b/media-libs/opencv/opencv-3.1.0-r1.ebuild |
14 |
new file mode 100644 |
15 |
index 0000000..bbbcde9 |
16 |
--- /dev/null |
17 |
+++ b/media-libs/opencv/opencv-3.1.0-r1.ebuild |
18 |
@@ -0,0 +1,252 @@ |
19 |
+# Copyright 1999-2016 Gentoo Foundation |
20 |
+# Distributed under the terms of the GNU General Public License v2 |
21 |
+# $Id$ |
22 |
+ |
23 |
+EAPI=5 |
24 |
+PYTHON_COMPAT=( python{2_7,3_2,3_3,3_4,3_5} ) |
25 |
+ |
26 |
+inherit toolchain-funcs cmake-utils python-single-r1 java-pkg-opt-2 java-ant-2 |
27 |
+ |
28 |
+DESCRIPTION="A collection of algorithms and sample code for various computer vision problems" |
29 |
+HOMEPAGE="http://opencv.org" |
30 |
+ |
31 |
+SRC_URI=" |
32 |
+ mirror://sourceforge/opencvlibrary/opencv-unix/${PV}/${P}.zip |
33 |
+ https://github.com/Itseez/${PN}/archive/${PV}.zip -> ${P}.zip |
34 |
+ contrib? ( https://github.com/Itseez/${PN}_contrib/archive/${PV}.zip -> ${PN}_contrib.zip )" |
35 |
+ |
36 |
+LICENSE="BSD" |
37 |
+SLOT="0/3.1" # subslot = libopencv* soname version |
38 |
+KEYWORDS="~amd64 ~arm ~ppc ~ppc64 ~x86 ~amd64-linux" |
39 |
+IUSE="contrib cuda doc +eigen examples ffmpeg gdal gphoto2 gstreamer gtk ieee1394 ipp jpeg jpeg2k libav opencl openexr opengl openmp pch png +python qt4 qt5 testprograms threads tiff vaapi v4l vtk webp xine" |
40 |
+REQUIRED_USE=" |
41 |
+ python? ( ${PYTHON_REQUIRED_USE} ) |
42 |
+ ?? ( qt4 qt5 ) |
43 |
+" |
44 |
+ |
45 |
+# The following logic is intrinsic in the build system, but we do not enforce |
46 |
+# it on the useflags since this just blocks emerging pointlessly: |
47 |
+# gtk? ( !qt4 ) |
48 |
+# opengl? ( || ( gtk qt4 ) ) |
49 |
+# openmp? ( !threads ) |
50 |
+ |
51 |
+RDEPEND=" |
52 |
+ app-arch/bzip2 |
53 |
+ sys-libs/zlib |
54 |
+ cuda? ( >=dev-util/nvidia-cuda-toolkit-5.5 ) |
55 |
+ ffmpeg? ( |
56 |
+ libav? ( media-video/libav:0= ) |
57 |
+ !libav? ( media-video/ffmpeg:0= ) |
58 |
+ ) |
59 |
+ gdal? ( sci-libs/gdal ) |
60 |
+ gphoto2? ( media-libs/libgphoto2 ) |
61 |
+ gstreamer? ( |
62 |
+ media-libs/gstreamer:1.0 |
63 |
+ media-libs/gst-plugins-base:1.0 |
64 |
+ ) |
65 |
+ gtk? ( |
66 |
+ dev-libs/glib:2 |
67 |
+ x11-libs/gtk+:2 |
68 |
+ opengl? ( x11-libs/gtkglext ) |
69 |
+ ) |
70 |
+ java? ( >=virtual/jre-1.6:* ) |
71 |
+ jpeg? ( virtual/jpeg:0 ) |
72 |
+ jpeg2k? ( media-libs/jasper ) |
73 |
+ ieee1394? ( |
74 |
+ media-libs/libdc1394 |
75 |
+ sys-libs/libraw1394 |
76 |
+ ) |
77 |
+ ipp? ( sci-libs/ipp ) |
78 |
+ opencl? ( virtual/opencl ) |
79 |
+ openexr? ( media-libs/openexr ) |
80 |
+ opengl? ( virtual/opengl virtual/glu ) |
81 |
+ png? ( media-libs/libpng:0= ) |
82 |
+ python? ( ${PYTHON_DEPS} dev-python/numpy[${PYTHON_USEDEP}] ) |
83 |
+ qt4? ( |
84 |
+ dev-qt/qtgui:4 |
85 |
+ dev-qt/qttest:4 |
86 |
+ opengl? ( dev-qt/qtopengl:4 ) |
87 |
+ ) |
88 |
+ qt5? ( |
89 |
+ dev-qt/qtgui:5 |
90 |
+ dev-qt/qttest:5 |
91 |
+ dev-qt/qtconcurrent:5 |
92 |
+ opengl? ( dev-qt/qtopengl:5 ) |
93 |
+ ) |
94 |
+ threads? ( dev-cpp/tbb ) |
95 |
+ tiff? ( media-libs/tiff:0 ) |
96 |
+ v4l? ( >=media-libs/libv4l-0.8.3 ) |
97 |
+ vtk? ( sci-libs/vtk[rendering] ) |
98 |
+ webp? ( media-libs/libwebp ) |
99 |
+ xine? ( media-libs/xine-lib ) |
100 |
+" |
101 |
+DEPEND="${RDEPEND} |
102 |
+ virtual/pkgconfig |
103 |
+ eigen? ( dev-cpp/eigen:3 ) |
104 |
+ java? ( >=virtual/jdk-1.6 ) |
105 |
+" |
106 |
+ |
107 |
+pkg_setup() { |
108 |
+ use python && python-single-r1_pkg_setup |
109 |
+ java-pkg-opt-2_pkg_setup |
110 |
+} |
111 |
+ |
112 |
+src_prepare() { |
113 |
+ |
114 |
+ epatch "${FILESDIR}/${PN}-3.0.0-gles.patch" \ |
115 |
+ "${FILESDIR}/${PN}-3.1.0-cmake-no-opengl.patch" |
116 |
+ |
117 |
+ # remove bundled stuff |
118 |
+ rm -rf 3rdparty |
119 |
+ sed -i \ |
120 |
+ -e '/add_subdirectory(.*3rdparty.*)/ d' \ |
121 |
+ CMakeLists.txt cmake/*cmake || die |
122 |
+ |
123 |
+ if use contrib; then |
124 |
+ |
125 |
+ cd "${WORKDIR}" |
126 |
+ epatch "${FILESDIR}/${PN}-3.1.0-fix-hal-headers.patch" \ |
127 |
+ "${FILESDIR}/${PN}-3.1.0-fix-ocl-declaration.patch" \ |
128 |
+ "${FILESDIR}/${PN}-3.1.0-invalid-string-usage.patch" |
129 |
+ fi |
130 |
+ |
131 |
+ java-pkg-opt-2_src_prepare |
132 |
+} |
133 |
+ |
134 |
+src_configure() { |
135 |
+ if use openmp; then |
136 |
+ tc-has-openmp || die "Please switch to an openmp compatible compiler" |
137 |
+ fi |
138 |
+ |
139 |
+ JAVA_ANT_ENCODING="iso-8859-1" |
140 |
+ # set encoding so even this cmake build will pick it up. |
141 |
+ export ANT_OPTS+=" -Dfile.encoding=iso-8859-1" |
142 |
+ java-ant-2_src_configure |
143 |
+ |
144 |
+ # please dont sort here, order is the same as in CMakeLists.txt |
145 |
+ local mycmakeargs=( |
146 |
+ # the optinal dependency libraries |
147 |
+ $(cmake-utils_use_with ieee1394 1394) |
148 |
+ -DWITH_AVFOUNDATION=OFF # IOS |
149 |
+ -DWITH_CARBON=OFF # APPLE |
150 |
+ $(cmake-utils_use_with eigen) |
151 |
+ $(cmake-utils_use_with ffmpeg) |
152 |
+ -DWITH_VFW=OFF # video windows support |
153 |
+ $(cmake-utils_use_with gstreamer) |
154 |
+ -DWITH_GSTREAMER_0_10=OFF |
155 |
+ $(cmake-utils_use_with gtk) |
156 |
+ -DWITH_GTK_2_X=OFF |
157 |
+ $(cmake-utils_use_with ipp) |
158 |
+ $(cmake-utils_use_with java) |
159 |
+ $(cmake-utils_use_with jpeg2k JASPER) |
160 |
+ $(cmake-utils_use_with jpeg) |
161 |
+ $(cmake-utils_use_with webp) |
162 |
+ $(cmake-utils_use_with opencl) |
163 |
+ $(cmake-utils_use_with gphoto2) |
164 |
+ $(cmake-utils_use_with openexr) |
165 |
+ $(cmake-utils_use_with opengl) |
166 |
+ $(cmake-utils_use_with openmp) |
167 |
+ -DWITH_OPENNI=OFF #not packaged |
168 |
+ -DWITH_OPENNI2=OFF #not packaged |
169 |
+ $(cmake-utils_use_with png) |
170 |
+ $(cmake-utils_use_build python opencv_python) |
171 |
+ -DWITH_PVAPI=OFF # not packaged |
172 |
+ -DWITH_GIGEAPI=OFF |
173 |
+ -DWITH_QUICKTIME=OFF |
174 |
+ -DWITH_WIN32UI=OFF |
175 |
+ $(cmake-utils_use_with threads TBB) |
176 |
+ -DWITH_CSTRIPES=OFF |
177 |
+ -DWITH_PTHREADS_PF=ON |
178 |
+ $(cmake-utils_use_with tiff) |
179 |
+ -DWITH_UNICAP=OFF # not packaged |
180 |
+ $(cmake-utils_use_with v4l V4L) |
181 |
+ $(cmake-utils_use_with vtk VTK) |
182 |
+ -DWITH_LIBV4L=ON |
183 |
+ -DWITH_DSHOW=ON # direct show supp |
184 |
+ -DWITH_MSMF=OFF |
185 |
+ -DWITH_VIDEOINPUT=OFF # windows only |
186 |
+ -DWITH_XIMEA=OFF # windows only |
187 |
+ $(cmake-utils_use_with xine) |
188 |
+ -DWITH_CLP=OFF |
189 |
+ $(cmake-utils_use_with opencl) |
190 |
+ -DWITH_OPENCL_SVM=OFF |
191 |
+ $(cmake-utils_use_with opencl OPENCLAMDFFT) |
192 |
+ $(cmake-utils_use_with opencl OPENCLAMDBLAS) |
193 |
+ -DWITH_DIRECTX=OFF |
194 |
+ -DWITH_INTELPERC=OFF |
195 |
+ -DWITH_IPP_A=OFF |
196 |
+ -DWITH_MATLAB=ON #default |
197 |
+ $(cmake-utils_use_with vaapi VA) |
198 |
+ $(cmake-utils_use_with vaapi VA_INTEL) |
199 |
+ $(cmake-utils_use_with gdal gdal) |
200 |
+ # |
201 |
+ # OpenCV build components |
202 |
+ -DBUILD_SHARED_LIBS=ON |
203 |
+ -DBUILD_ANDROID_EXAMPLES=OFF |
204 |
+ $(cmake-utils_use_build doc DOCS) |
205 |
+ $(cmake-utils_use_build examples) |
206 |
+ $(cmake-utils_use_build java opencv_java) #for -java bug #555650 |
207 |
+ -DBUILD_PERF_TESTS=OFF |
208 |
+ $(cmake-utils_use_build testprograms TESTS) |
209 |
+ # install examples, tests etc |
210 |
+ $(cmake-utils_use examples INSTALL_C_EXAMPLES) |
211 |
+ $(cmake-utils_use testprograms INSTALL_TESTS) |
212 |
+ # build options |
213 |
+ $(cmake-utils_use_enable pch PRECOMPILED_HEADERS) |
214 |
+ -DOPENCV_EXTRA_FLAGS_RELEASE="" # black magic |
215 |
+ ) |
216 |
+ |
217 |
+ if use qt4; then |
218 |
+ mycmakeargs+=( "-DWITH_QT=4" ) |
219 |
+ elif use qt5; then |
220 |
+ mycmakeargs+=( "-DWITH_QT=5" ) |
221 |
+ else |
222 |
+ mycmakeargs+=( "-DWITH_QT=OFF" ) |
223 |
+ fi |
224 |
+ |
225 |
+ if use contrib; then |
226 |
+ mycmakeargs+=( "-DOPENCV_EXTRA_MODULES_PATH=../opencv_contrib-master/modules" ) |
227 |
+ fi |
228 |
+ |
229 |
+ if use cuda; then |
230 |
+ mycmakeargs+=( "-DWITH_CUDA=ON" ) |
231 |
+ mycmakeargs+=( "-DWITH_CUBLAS=ON" ) |
232 |
+ mycmakeargs+=( "-DWITH_CUFFT=ON" ) |
233 |
+ mycmakeargs+=( "-DWITH_NVCUVID=ON" ) #Nvidia video decoding library supp |
234 |
+ else |
235 |
+ mycmakeargs+=( "-DWITH_CUDA=OFF" ) |
236 |
+ mycmakeargs+=( "-DWITH_CUBLAS=OFF" ) |
237 |
+ mycmakeargs+=( "-DWITH_CUFFT=OFF" ) |
238 |
+ mycmakeargs+=( "-DWITH_NVCUVID=OFF" ) |
239 |
+ fi |
240 |
+ |
241 |
+ if use examples && use python; then |
242 |
+ mycmakeargs+=( "-DINSTALL_PYTHON_EXAMPLES=ON" ) |
243 |
+ else |
244 |
+ mycmakeargs+=( "-DINSTALL_PYTHON_EXAMPLES=OFF" ) |
245 |
+ fi |
246 |
+ |
247 |
+ # things we want to be hard off or not yet figured out |
248 |
+ mycmakeargs+=( |
249 |
+ "-DOPENCV_BUILD_3RDPARTY_LIBS=OFF" |
250 |
+ "-DBUILD_LATEX_DOCS=OFF" |
251 |
+ "-DBUILD_PACKAGE=OFF" |
252 |
+ "-DENABLE_PROFILING=OFF" |
253 |
+ ) |
254 |
+ |
255 |
+ # things we want to be hard enabled not worth useflag |
256 |
+ mycmakeargs+=( |
257 |
+ "-DCMAKE_SKIP_RPATH=ON" |
258 |
+ "-DOPENCV_DOC_INSTALL_PATH=${EPREFIX}/usr/share/doc/${PF}" |
259 |
+ ) |
260 |
+ |
261 |
+ # hardcode cuda paths |
262 |
+ mycmakeargs+=( |
263 |
+ "-DCUDA_NPP_LIBRARY_ROOT_DIR=/opt/cuda" |
264 |
+ ) |
265 |
+ |
266 |
+ # workaround for bug 413429 |
267 |
+ tc-export CC CXX |
268 |
+ |
269 |
+ cmake-utils_src_configure |
270 |
+} |