board/csky: fixup gdb instructions in readme.txt
[buildroot-gz.git] / package / opencv3 / Config.in
blob4c00bf1b949ef7d67672c1d266c3008e072b55e4
1 menuconfig BR2_PACKAGE_OPENCV3
2         bool "opencv3"
3         select BR2_PACKAGE_ZLIB
4         depends on BR2_TOOLCHAIN_HAS_ATOMIC
5         depends on BR2_TOOLCHAIN_HAS_THREADS_NPTL
6         depends on BR2_INSTALL_LIBSTDCPP
7         depends on BR2_USE_WCHAR
8         depends on !BR2_STATIC_LIBS # include dlfcn.h
9         depends on !BR2_PACKAGE_OPENCV
10         help
11           OpenCV (Open Source Computer Vision) is a library of programming
12           functions for real time computer vision.
14           Note that the opencv_core module and the opencv_hal library
15           are always built and installed, not matter which other
16           modules are enabled below.
18           http://opencv.org/
20 if BR2_PACKAGE_OPENCV3
22 comment "OpenCV modules"
24 config BR2_PACKAGE_OPENCV3_LIB_CALIB3D
25         bool "calib3d"
26         select BR2_PACKAGE_OPENCV3_LIB_FEATURES2D
27         select BR2_PACKAGE_OPENCV3_LIB_IMGPROC
28         help
29           Include opencv_calib3d (camera calibration and 3d reconstruction) module
30           into the OpenCV build.
32 config BR2_PACKAGE_OPENCV3_LIB_FEATURES2D
33         bool "features2d"
34         select BR2_PACKAGE_OPENCV3_LIB_FLANN
35         select BR2_PACKAGE_OPENCV3_LIB_IMGPROC
36         select BR2_PACKAGE_OPENCV3_LIB_ML
37         help
38           Include opencv_features2d (2d features framework) module into the OpenCV
39           build.
41 config BR2_PACKAGE_OPENCV3_LIB_FLANN
42         bool "flann"
43         # opencv_core dependency is already enabled
44         help
45           Include opencv_flann (clustering and search in multi-dimensional spaces)
46           module into the OpenCV build.
48 config BR2_PACKAGE_OPENCV3_LIB_HIGHGUI
49         bool "highgui"
50         select BR2_PACKAGE_OPENCV3_LIB_IMGCODECS
51         select BR2_PACKAGE_OPENCV3_LIB_IMGPROC
52         select BR2_PACKAGE_OPENCV3_LIB_VIDEOIO
53         help
54           Include opencv_highgui (high-level gui and media i/o) module into the
55           OpenCV build.
57 if BR2_PACKAGE_OPENCV3_LIB_HIGHGUI
59 choice
60         prompt "gui toolkit"
61         help
62           GUI toolkit to be used by the opencv_highgui module.
64 config BR2_PACKAGE_OPENCV3_GUI_NONE
65         bool "none"
67 config BR2_PACKAGE_OPENCV3_WITH_GTK
68         bool "gtk2"
69         depends on BR2_PACKAGE_LIBGTK2
71 comment "gtk2 support needs libgtk2"
72         depends on BR2_USE_MMU # libgtk2 -> glib2
73         depends on BR2_TOOLCHAIN_HAS_SYNC_4
74         depends on !BR2_PACKAGE_LIBGTK2
76 config BR2_PACKAGE_OPENCV3_WITH_GTK3
77         bool "gtk3"
78         depends on BR2_PACKAGE_LIBGTK3
80 comment "gtk3 support needs libgtk3"
81         depends on BR2_USE_MMU # libgtk3 -> glib2
82         depends on BR2_TOOLCHAIN_HAS_SYNC_4
83         depends on !BR2_PACKAGE_LIBGTK3
85 config BR2_PACKAGE_OPENCV3_WITH_QT
86         bool "qt4"
87         depends on BR2_PACKAGE_QT
88         depends on !BR2_TOOLCHAIN_HAS_BINUTILS_BUG_19405 # Qt GUI module
89         select BR2_PACKAGE_QT_STL
90         select BR2_PACKAGE_QT_GUI_MODULE
91         select BR2_PACKAGE_QT_TEST
92         help
93           Use Qt4 with QtTest and QtGui modules and STL support, as GUI toolkit.
95 comment "qt4 support needs qt and a toolchain not affected by Binutils bug 19405"
96         depends on BR2_USE_MMU # qt
97         depends on (!BR2_PACKAGE_QT && !BR2_PACKAGE_QT5) || BR2_TOOLCHAIN_HAS_BINUTILS_BUG_19405
99 config BR2_PACKAGE_OPENCV3_WITH_QT5
100         bool "qt5"
101         depends on BR2_PACKAGE_QT5
102         select BR2_PACKAGE_QT5BASE
103         select BR2_PACKAGE_QT5BASE_CONCURRENT
104         select BR2_PACKAGE_QT5BASE_GUI
105         select BR2_PACKAGE_QT5BASE_WIDGETS
106         help
107           Use Qt5 with base, concurrent, test, gui and widgets components, as GUI
108           toolkit.
110 comment "qt5 support needs qt5"
111         depends on !BR2_PACKAGE_QT && !BR2_PACKAGE_QT5
113 endchoice
115 config BR2_PACKAGE_OPENCV3_WITH_OPENGL
116         bool "opengl support"
117         # OpenGL support done using Qt5OpenGL, so depends on WITH_QT5
118         depends on BR2_PACKAGE_OPENCV3_WITH_QT5
119         # OpenGL support requires Qt5OpenGL with GL support, not GLES
120         depends on BR2_PACKAGE_QT5_GL_AVAILABLE
121         depends on BR2_PACKAGE_HAS_LIBGL
122         select BR2_PACKAGE_QT5BASE_OPENGL
123         help
124           Enable OpenGL for UI.
126 comment "opengl support needs an OpenGL provider"
127         depends on BR2_PACKAGE_OPENCV3_WITH_QT5
128         depends on !BR2_PACKAGE_QT5_GL_AVAILABLE || \
129                 !BR2_PACKAGE_HAS_LIBGL
131 endif # BR2_PACKAGE_OPENCV3_LIB_HIGHGUI
134 config BR2_PACKAGE_OPENCV3_LIB_IMGCODECS
135         bool "imgcodecs"
136         select BR2_PACKAGE_OPENCV3_LIB_IMGPROC
137         help
138           Include opencv_imgcodecs (image codecs) module into the OpenCV build.
140 config BR2_PACKAGE_OPENCV3_LIB_IMGPROC
141         bool "imgproc"
142         # opencv_core dependency is already enabled
143         help
144           Include opencv_imgproc (image processing) module into the OpenCV build.
146 config BR2_PACKAGE_OPENCV3_LIB_ML
147         bool "ml"
148         # opencv_core dependency is already enabled
149         help
150           Include opencv_ml (machine learning) module into the OpenCV build.
152 config BR2_PACKAGE_OPENCV3_LIB_OBJDETECT
153         bool "objdetect"
154         # opencv_core dependency is already enabled
155         select BR2_PACKAGE_OPENCV3_LIB_IMGPROC
156         select BR2_PACKAGE_OPENCV3_LIB_ML
157         help
158           Include opencv_objdetect (object detection) module into the OpenCV build.
160 config BR2_PACKAGE_OPENCV3_LIB_PHOTO
161         bool "photo"
162         select BR2_PACKAGE_OPENCV3_LIB_IMGPROC
163         help
164           Include opencv_photo (computational photography) module into the OpenCV
165           build.
167 config BR2_PACKAGE_OPENCV3_LIB_PYTHON
168         bool "python"
169         depends on BR2_PACKAGE_PYTHON || BR2_PACKAGE_PYTHON3
170         depends on BR2_PACKAGE_PYTHON_NUMPY_ARCH_SUPPORTS
171         select BR2_PACKAGE_PYTHON_NUMPY
172         help
173           Include opencv_python module into the OpenCV build.
174           No python example is installed.
176 config BR2_PACKAGE_OPENCV3_LIB_SHAPE
177         bool "shape"
178         # opencv_core dependency is already enabled
179         select BR2_PACKAGE_OPENCV3_LIB_IMGPROC
180         select BR2_PACKAGE_OPENCV3_LIB_VIDEO
181         help
182           Include opencv_shape (shape descriptors and matchers) module into the
183           OpenCV build.
185 config BR2_PACKAGE_OPENCV3_LIB_STITCHING
186         bool "stitching"
187         select BR2_PACKAGE_OPENCV3_LIB_CALIB3D
188         select BR2_PACKAGE_OPENCV3_LIB_FEATURES2D
189         select BR2_PACKAGE_OPENCV3_LIB_IMGPROC
190         select BR2_PACKAGE_OPENCV3_LIB_OBJDETECT
191         help
192           Include opencv_stitching (images stitching) module into the OpenCV build.
194 config BR2_PACKAGE_OPENCV3_LIB_SUPERRES
195         bool "superres"
196         select BR2_PACKAGE_OPENCV3_LIB_IMGPROC
197         select BR2_PACKAGE_OPENCV3_LIB_VIDEO
198         help
199           Include opencv_superres (super resolution) module into the OpenCV build.
201 config BR2_PACKAGE_OPENCV3_LIB_TS
202         bool "ts"
203         # opencv_core dependency is already enabled
204         select BR2_PACKAGE_OPENCV3_LIB_HIGHGUI
205         select BR2_PACKAGE_OPENCV3_LIB_IMGCODECS
206         select BR2_PACKAGE_OPENCV3_LIB_IMGPROC
207         select BR2_PACKAGE_OPENCV3_LIB_VIDEOIO
208         help
209           Include opencv_ts (test) module into the OpenCV build.
211 config BR2_PACKAGE_OPENCV3_LIB_VIDEOIO
212         bool "videoio"
213         select BR2_PACKAGE_OPENCV3_LIB_IMGCODECS
214         select BR2_PACKAGE_OPENCV3_LIB_IMGPROC
215         help
216           Include opencv_videoio (media i/o) module into the OpenCV build.
218 config BR2_PACKAGE_OPENCV3_LIB_VIDEO
219         bool "video"
220         select BR2_PACKAGE_OPENCV3_LIB_IMGPROC
221         help
222           Include opencv_video (video analysis) module into the OpenCV build.
224 config BR2_PACKAGE_OPENCV3_LIB_VIDEOSTAB
225         bool "videostab"
226         select BR2_PACKAGE_OPENCV3_LIB_CALIB3D
227         select BR2_PACKAGE_OPENCV3_LIB_FEATURES2D
228         select BR2_PACKAGE_OPENCV3_LIB_IMGPROC
229         select BR2_PACKAGE_OPENCV3_LIB_PHOTO
230         select BR2_PACKAGE_OPENCV3_LIB_VIDEO
231         help
232           Include opencv_videostab (video stabilization) module into the OpenCV
233           build.
235 comment "Test sets"
236 config BR2_PACKAGE_OPENCV3_BUILD_TESTS
237         bool "build tests"
239 config BR2_PACKAGE_OPENCV3_BUILD_PERF_TESTS
240         bool "build performance tests"
242 comment "3rd party support"
244 config BR2_PACKAGE_OPENCV3_WITH_FFMPEG
245         bool "ffmpeg support"
246         depends on BR2_PACKAGE_FFMPEG_ARCH_SUPPORTS
247         select BR2_PACKAGE_BZIP2
248         select BR2_PACKAGE_FFMPEG
249         select BR2_PACKAGE_FFMPEG_AVRESAMPLE
250         select BR2_PACKAGE_FFMPEG_SWSCALE
251         help
252           Use ffmpeg from the target system.
254 choice
255         prompt "gstreamer support"
256         help
257           OpenCV prefers gstreamer-1 over gstreamer-0.10.
259 config BR2_PACKAGE_OPENCV3_WITHOUT_GSTREAMER
260         bool "none"
262 config BR2_PACKAGE_OPENCV3_WITH_GSTREAMER
263         bool "gstreamer-0.10"
264         depends on BR2_USE_MMU # gstreamer -> libglib2
265         depends on BR2_USE_WCHAR # gstreamer -> libglib2
266         depends on BR2_TOOLCHAIN_HAS_THREADS # gstreamer -> libglib2
267         select BR2_PACKAGE_GSTREAMER
268         select BR2_PACKAGE_GST_PLUGINS_BASE
269         select BR2_PACKAGE_GST_PLUGINS_BASE_PLUGIN_APP
271 comment "gstreamer-0.10 support needs a toolchain w/ wchar, threads"
272         depends on BR2_USE_MMU
273         depends on !BR2_USE_WCHAR || !BR2_TOOLCHAIN_HAS_THREADS
275 config BR2_PACKAGE_OPENCV3_WITH_GSTREAMER1
276         bool "gstreamer-1.x"
277         depends on BR2_USE_MMU # gstreamer1 -> libglib2
278         depends on BR2_USE_WCHAR # gstreamer1 -> libglib2
279         depends on BR2_TOOLCHAIN_HAS_THREADS # gstreamer1 -> libglib2
280         select BR2_PACKAGE_GSTREAMER1
281         select BR2_PACKAGE_GST1_PLUGINS_BASE
282         select BR2_PACKAGE_GST1_PLUGINS_BASE_PLUGIN_APP
284 comment "gstreamer-1.x support needs a toolchain w/ wchar, threads"
285         depends on BR2_USE_MMU
286         depends on !BR2_USE_WCHAR || !BR2_TOOLCHAIN_HAS_THREADS
288 endchoice
290 config BR2_PACKAGE_OPENCV3_WITH_JASPER
291         bool "jpeg2000 support"
292         select BR2_PACKAGE_JASPER
293         help
294           Enable jpeg2000 support.
296           Note: this does not use the libjasper bundled with opencv,
297           but uses the libjasper package installed system-wide by
298           Buildroot.
300 config BR2_PACKAGE_OPENCV3_WITH_JPEG
301         bool "jpeg support"
302         select BR2_PACKAGE_JPEG
303         help
304           Use shared libjpeg from the target system.
306 config BR2_PACKAGE_OPENCV3_WITH_PNG
307         bool "png support"
308         select BR2_PACKAGE_LIBPNG
309         help
310           Use shared libpng from the target system.
312 config BR2_PACKAGE_OPENCV3_WITH_TIFF
313         bool "tiff support"
314         select BR2_PACKAGE_TIFF
315         help
316           Use shared libtiff from the target system.
318 config BR2_PACKAGE_OPENCV3_WITH_V4L
319         bool "v4l support"
320         help
321           Enable Video 4 Linux support.
323           If the package libv4l is enabled, its support is automatically enabled.
325 comment "Install options"
327 config BR2_PACKAGE_OPENCV3_INSTALL_DATA
328         bool "install extra data"
329         help
330           Install various data that is used by cv libraries and/or demo
331           applications, specifically for haarcascades and lbpcascades
332           features.
334           For further information: see OpenCV documentation.
336 endif # BR2_PACKAGE_OPENCV3
338 comment "opencv3 needs a toolchain w/ C++, NPTL, wchar, dynamic library"
339         depends on BR2_TOOLCHAIN_HAS_ATOMIC
340         depends on !BR2_INSTALL_LIBSTDCPP || \
341                 !BR2_USE_WCHAR || \
342                 !BR2_TOOLCHAIN_HAS_THREADS_NPTL || \
343                 BR2_STATIC_LIBS