From mboxrd@z Thu Jan 1 00:00:00 1970 Return-path: Received: from mail-la0-x22b.google.com ([2a00:1450:4010:c03::22b]) by metis.ext.pengutronix.de with esmtp (Exim 4.72) (envelope-from ) id 1WTyCW-0005Xd-Gm for ptxdist@pengutronix.de; Sat, 29 Mar 2014 19:41:54 +0100 Received: by mail-la0-f43.google.com with SMTP id e16so4655633lan.16 for ; Sat, 29 Mar 2014 11:41:46 -0700 (PDT) From: Christoph Fritz Date: Sat, 29 Mar 2014 19:41:43 +0100 Message-ID: <1396118503.4914.22.camel@mars> Mime-Version: 1.0 Subject: [ptxdist] [PATCH] opencv: add new package Reply-To: ptxdist@pengutronix.de List-Id: PTXdist Development Mailing List List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Sender: ptxdist-bounces@pengutronix.de Errors-To: ptxdist-bounces@pengutronix.de To: ptxdist@pengutronix.de Cc: Jan Weitzel , Roman Dosek Signed-off-by: Christoph Fritz --- rules/opencv.in | 168 ++++++++++++++++++++++++++++++++++++++++++++++ rules/opencv.make | 193 +++++++++++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 361 insertions(+) create mode 100644 rules/opencv.in create mode 100644 rules/opencv.make diff --git a/rules/opencv.in b/rules/opencv.in new file mode 100644 index 0000000..1319232 --- /dev/null +++ b/rules/opencv.in @@ -0,0 +1,168 @@ +## SECTION=multimedia_libs + +menuconfig OPENCV + bool + prompt "opencv" + select HOST_CMAKE + select GCCLIBS_CXX + select ZLIB + select LIBPNG + select LIBJPEG + select V4L_UTILS + help + Open Source Computer Vision Library + +if OPENCV + +config OPENCV_CALIB3D + bool + prompt "calib3d" + select OPENCV_FEATURES2D + help + Camera Calibration and 3D Reconstruction + +config OPENCV_CONTRIB + bool + prompt "contrib" + select OPENCV_CALIB3D + select OPENCV_IMGPROC + select OPENCV_ML + select OPENCV_OBJDETECT + select OPENCV_VIDEO + help + Contributed/Experimental Stuff + +config OPENCV_FEATURES2D + bool + prompt "features2d" + select OPENCV_FLANN + select OPENCV_IMGPROC + help + 2D Features Framework + +config OPENCV_FLANN + bool + prompt "flann" + help + Clustering and Search in Multi-Dimensional Spaces + +config OPENCV_GPU + bool + prompt "gpu" + select OPENCV_LEGACY + select OPENCV_PHOTO + select OPENCV_OBJDETECT + help + GPU-accelerated Computer Vision + +config OPENCV_HIGHGUI + bool + prompt "highgui" + select OPENCV_IMGPROC + help + High-level GUI and Media I/O + +config OPENCV_IMGPROC + bool + prompt "imgproc" + help + Image Processing + +config OPENCV_LEGACY + bool + prompt "legacy" + select OPENCV_CALIB3D + select OPENCV_ML + select OPENCV_VIDEO + help + Deprecated stuff + +config OPENCV_ML + bool + prompt "ml" + help + Machine Learning + +config OPENCV_NONFREE + bool + prompt "nonfree" + select OPENCV_CALIB3D + select OPENCV_IMGPROC + select OPENCV_FEATURES2D + help + Non-free functionality + +config OPENCV_OBJDETECT + bool + prompt "objdetect" + select OPENCV_IMGPROC + help + Object Detection + +config OPENCV_PHOTO + bool + prompt "photo" + select OPENCV_IMGPROC + help + Computational Photography + +config OPENCV_STITCHING + bool + prompt "stitching" + select OPENCV_CALIB3D + select OPENCV_FEATURES2D + select OPENCV_OBJDETECT + help + Images stitching + +config OPENCV_SUPERRES + bool + prompt "superres" + select OPENCV_IMGPROC + select OPENCV_VIDEO + help + Super Resolution + +config OPENCV_VIDEO + bool + prompt "video" + select OPENCV_IMGPROC + help + Video Analysis + +config OPENCV_VIDEOSTAB + bool + prompt "videostab" + select OPENCV_CALIB3D + select OPENCV_FEATURES2D + select OPENCV_HIGHGUI + select OPENCV_OBJDETECT + select OPENCV_PHOTO + select OPENCV_VIDEO + help + Video Stabilization + +config OPENCV_GSTREAMER + bool + prompt "gstreamer" + select GSTREAMER + help + Gstreamer Support + +config OPENCV_V4L + bool + prompt "v4l" + select OPENCV_VIDEO + help + Video4Linux Support + +config OPENCV_QT + bool + prompt "qt" + select QT4 + select QT4_BUILD_QTESTLIB + select QT4_BUILD_GUI + select QT4_STL + help + QT GUI Support +endif diff --git a/rules/opencv.make b/rules/opencv.make new file mode 100644 index 0000000..e3c2186 --- /dev/null +++ b/rules/opencv.make @@ -0,0 +1,193 @@ +# -*-makefile-*- +# +# Copyright (C) 2014 by Christoph Fritz +# Copyright (C) 2013 by Jan Weitzel +# loosely based on work by Roman Dosek +# +# See CREDITS for details about who has contributed to this project. +# +# For further information about the PTXdist project and license conditions +# see the README file. +# + +# +# We provide this package +# +PACKAGES-$(PTXCONF_OPENCV) += opencv + +# +# Paths and names +# + +OPENCV_VERSION := 2.4.8 +OPENCV_MD5 := 50cc1433b3654074206f5b3dbfd49848 +OPENCV := opencv-$(OPENCV_VERSION) +OPENCV_SUFFIX := zip +OPENCV_URL := $(call ptx/mirror, SF, opencvlibrary/opencv-unix/$(OPENCV_VERSION)/$(OPENCV).$(OPENCV_SUFFIX)) +OPENCV_SOURCE := $(SRCDIR)/$(OPENCV).$(OPENCV_SUFFIX) +OPENCV_DIR := $(BUILDDIR)/$(OPENCV) +OPENCV_LICENSE := BSD + +# ---------------------------------------------------------------------------- +# Prepare +# ---------------------------------------------------------------------------- + +OPENCV_CONF_TOOL := cmake + +OPENCV_CONF_OPT := $(CROSS_CMAKE_USR) +OPENCV_CONF_OPT += \ + -DANT_EXECUTABLE:FILEPATH= \ + -DPYTHON_EXECUTABLE= \ + -DBUILD_DOCS:BOOL=OFF \ + -DBUILD_EXAMPLES:BOOL=OFF \ + -DBUILD_PACKAGE:BOOL=OFF \ + -DCMAKE_BUILD_TYPE=Release \ + -DBUILD_SHARED_LIBS:BOOL=ON \ + -DBUILD_TESTS=OFF \ + -DBUILD_PERF_TESTS=OFF \ + -DBUILD_WITH_DEBUG_INFO=OFF \ + -DCMAKE_INSTALL_RPATH_USE_LINK_PATH=OFF \ + -DCMAKE_SKIP_RPATH=OFF \ + -DCMAKE_USE_RELATIVE_PATHS=OFF \ + -DENABLE_FAST_MATH=ON \ + -DENABLE_NOISY_WARNINGS=OFF \ + -DENABLE_OMIT_FRAME_POINTER=ON \ + -DENABLE_PRECOMPILED_HEADERS=OFF \ + -DENABLE_PROFILING=OFF \ + -DENABLE_SOLUTION_FOLDERS=OFF \ + -DOPENCV_CAN_BREAK_BINARY_COMPATIBILITY=ON \ + -DWITH_GTK:BOOL=OFF \ + -DWITH_TBB:BOOL=OFF \ + -DWITH_TIFF:BOOL=OFF \ + -DCMAKE_VERBOSE:BOOL=OFF \ + -DWITH_CUDA:BOOL=OFF \ + -DWITH_EIGEN:BOOL=OFF \ + -DENABLE_NEON:BOOL=OFF \ + -DENABLE_VFPV3:BOOL=OFF \ + -DWITH_GIGEAPI:BOOL=OFF \ + -DINSTALL_CREATE_DISTRIB:BOOL=OFF \ + -DINSTALL_C_EXAMPLES:BOOL=OFF \ + -DINSTALL_PYTHON_EXAMPLES:BOOL=OFF \ + -DINSTALL_TO_MANGLED_PATHS:BOOL=OFF \ + -DOPENCV_EXTRA_MODULES_PATH:PATH= \ + -DOPENCV_WARNINGS_ARE_ERRORS:BOOL=OFF \ + -DWITH_OPENEXR:BOOL=OFF \ + -DWITH_PVAPI:BOOL=OFF \ + -DWITH_1394:BOOL=OFF \ + -DWITH_CUBLAS:BOOL=OFF \ + -DWITH_CUDA:BOOL=OFF \ + -DWITH_CUFFT:BOOL=OFF \ + -DWITH_FFMPEG:BOOL=OFF \ + -DWITH_JASPER:BOOL=OFF \ + -DWITH_JPEG:BOOL=ON \ + -DWITH_PNG:BOOL=ON \ + -DWITH_NVCUVID:BOOL=OFF \ + -DWITH_OPENCL:BOOL=OFF \ + -DWITH_OPENCLAMDBLAS:BOOL=OFF \ + -DWITH_OPENCLAMDFFT:BOOL=OFF \ + -DWITH_OPENEXR:BOOL=OFF \ + -DWITH_OPENMP:BOOL=OFF \ + -DWITH_OPENNI:BOOL=OFF \ + -DWITH_PVAPI:BOOL=OFF \ + -DWITH_TBB:BOOL=OFF \ + -DWITH_UNICAP:BOOL=OFF \ + -DWITH_XIMEA:BOOL=OFF \ + -DWITH_XINE:BOOL=OFF \ + +OPENCV_CONF_OPT += \ + -DBUILD_opencv_apps:BOOL=OFF \ + -DBUILD_opencv_calib3d:BOOL=$(call ptx/ifdef,PTXCONF_OPENCV_CALIB3D,ON,OFF) \ + -DBUILD_opencv_contrib:BOOL=$(call ptx/ifdef,PTXCONF_OPENCV_CONTRIB,ON,OFF) \ + -DBUILD_opencv_core:BOOL=ON \ + -DBUILD_opencv_features2d:BOOL=$(call ptx/ifdef,PTXCONF_OPENCV_FEATURES2D,ON,OFF) \ + -DBUILD_opencv_flann:BOOL=$(call ptx/ifdef,PTXCONF_OPENCV_FLANN,ON,OFF) \ + -DBUILD_opencv_gpu:BOOL=$(call ptx/ifdef,PTXCONF_OPENCV_GPU,ON,OFF) \ + -DBUILD_opencv_highgui:BOOL=$(call ptx/ifdef,PTXCONF_OPENCV_HIGHGUI,ON,OFF) \ + -DBUILD_opencv_imgproc:BOOL=$(call ptx/ifdef,PTXCONF_OPENCV_IMGPROC,ON,OFF) \ + -DBUILD_opencv_legacy:BOOL=$(call ptx/ifdef,PTXCONF_OPENCV_LEGACY,ON,OFF) \ + -DBUILD_opencv_ml:BOOL=$(call ptx/ifdef,PTXCONF_OPENCV_ML,ON,OFF) \ + -DBUILD_opencv_nonfree:BOOL=$(call ptx/ifdef,PTXCONF_OPENCV_NONFREE,ON,OFF) \ + -DBUILD_opencv_objdetect:BOOL=$(call ptx/ifdef,PTXCONF_OPENCV_OBJDETECT,ON,OFF) \ + -DBUILD_opencv_photo:BOOL=$(call ptx/ifdef,PTXCONF_OPENCV_PHOTO,ON,OFF) \ + -DBUILD_opencv_stitching:BOOL=$(call ptx/ifdef,PTXCONF_OPENCV_STITCHING,ON,OFF) \ + -DBUILD_opencv_superres:BOOL=$(call ptx/ifdef,PTXCONF_OPENCV_SUPERRES,ON,OFF) \ + -DBUILD_opencv_ts:BOOL=OFF \ + -DBUILD_opencv_video:BOOL=$(call ptx/ifdef,PTXCONF_OPENCV_VIDEO,ON,OFF) \ + -DBUILD_opencv_videostab:BOOL=$(call ptx/ifdef,PTXCONF_OPENCV_VIDEOSTAB,ON,OFF) \ + -DBUILD_opencv_world:BOOL=OFF \ + -DWITH_GSTREAMER:BOOL=$(call ptx/ifdef,PTXCONF_OPENCV_GSTREAMER,ON,OFF) \ + -DWITH_LIBV4L:BOOL=$(call ptx/ifdef,PTXCONF_OPENCV_V4L,ON,OFF) \ + -DWITH_V4L:BOOL=$(call ptx/ifdef,PTXCONF_OPENCV_V4L,ON,OFF) \ + -DWITH_OPENGL:BOOL=OFF \ + -DWITH_QT:BOOL=$(call ptx/ifdef,PTXCONF_OPENCV_QT,ON,OFF) + +# ---------------------------------------------------------------------------- +# Target-Install +# ---------------------------------------------------------------------------- + +$(STATEDIR)/opencv.targetinstall: + @$(call targetinfo) + + @$(call install_init, opencv) + @$(call install_fixup, opencv, PRIORITY, optional) + @$(call install_fixup, opencv, SECTION, base) + @$(call install_fixup, opencv, AUTHOR, "Christoph Fritz ") + @$(call install_fixup, opencv, DESCRIPTION, missing) + + + @$(call install_lib, opencv, 0, 0, 0644, libopencv_core) + +ifdef PTXCONF_OPENCV_CALIB3D + @$(call install_lib, opencv, 0, 0, 0644, libopencv_calib3d) +endif +ifdef PTXCONF_OPENCV_CONTRIB + @$(call install_lib, opencv, 0, 0, 0644, libopencv_contrib) +endif +ifdef PTXCONF_OPENCV_FEATURES2D + @$(call install_lib, opencv, 0, 0, 0644, libopencv_features2d) +endif +ifdef PTXCONF_OPENCV_FLANN + @$(call install_lib, opencv, 0, 0, 0644, libopencv_flann) +endif +ifdef PTXCONF_OPENCV_GPU + @$(call install_lib, opencv, 0, 0, 0644, libopencv_gpu) +endif +ifdef PTXCONF_OPENCV_HIGHGUI + @$(call install_lib, opencv, 0, 0, 0644, libopencv_highgui) +endif +ifdef PTXCONF_OPENCV_IMGPROC + @$(call install_lib, opencv, 0, 0, 0644, libopencv_imgproc) +endif +ifdef PTXCONF_OPENCV_LEGACY + @$(call install_lib, opencv, 0, 0, 0644, libopencv_legacy) +endif +ifdef PTXCONF_OPENCV_ML + @$(call install_lib, opencv, 0, 0, 0644, libopencv_ml) +endif +ifdef PTXCONF_OPENCV_NONFREE + @$(call install_lib, opencv, 0, 0, 0644, libopencv_nonfree) +endif +ifdef PTXCONF_OPENCV_OBJDETECT + @$(call install_lib, opencv, 0, 0, 0644, libopencv_objdetect) +endif +ifdef PTXCONF_OPENCV_PHOTO + @$(call install_lib, opencv, 0, 0, 0644, libopencv_photo) +endif +ifdef PTXCONF_OPENCV_STITCHING + @$(call install_lib, opencv, 0, 0, 0644, libopencv_stitching) +endif +ifdef PTXCONF_OPENCV_SUPERRES + @$(call install_lib, opencv, 0, 0, 0644, libopencv_superres) +endif +ifdef PTXCONF_OPENCV_VIDEO + @$(call install_lib, opencv, 0, 0, 0644, libopencv_video) +endif +ifdef PTXCONF_OPENCV_VIDEOSTAB + @$(call install_lib, opencv, 0, 0, 0644, libopencv_videostab) +endif + + @$(call install_finish, opencv) + + @$(call touch) + +# vim: syntax=make -- 1.7.10.4 -- ptxdist mailing list ptxdist@pengutronix.de