Mercurial > mxe-octave
changeset 5172:a2fea654ff63
Add OpenCV
* src/opencv-1-fixes.patch: new file
* src/opencv.mk: new file
* index.html: add opencv entry
* dist-files.mk: add ref to new files
author | John Donoghue |
---|---|
date | Thu, 03 Oct 2019 15:21:51 -0400 |
parents | 6215676cc6ff |
children | e2a85f91c9e9 |
files | dist-files.mk index.html src/opencv-1-fixes.patch src/opencv.mk |
diffstat | 4 files changed, 150 insertions(+), 0 deletions(-) [+] |
line wrap: on
line diff
--- a/dist-files.mk Thu Oct 03 10:43:30 2019 -0400 +++ b/dist-files.mk Thu Oct 03 15:21:51 2019 -0400 @@ -549,6 +549,8 @@ opencore-amr.mk \ opencsg-1-fixes.patch \ opencsg.mk \ + opencv-1-fixes.patch \ + opencv.mk \ openexr.mk \ openscenegraph-1-fixes.patch \ openscenegraph.mk \
--- a/index.html Thu Oct 03 10:43:30 2019 -0400 +++ b/index.html Thu Oct 03 15:21:51 2019 -0400 @@ -2390,6 +2390,10 @@ <td class="website"><a href="http://www.opencsg.org/">opencsg</a></td> </tr> <tr> + <td class="package">opencv</td> + <td class="website"><a href="http://www.opencv.org/">OpenCV</a></td> + </tr> + <tr> <td class="package">openexr</td> <td class="website"><a href="http://www.openexr.com/">OpenEXR</a></td> </tr>
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/src/opencv-1-fixes.patch Thu Oct 03 15:21:51 2019 -0400 @@ -0,0 +1,79 @@ +Common subdirectories: opencv-3.4.3.orig/3rdparty and opencv-3.4.3/3rdparty +Common subdirectories: opencv-3.4.3.orig/apps and opencv-3.4.3/apps +Common subdirectories: opencv-3.4.3.orig/cmake and opencv-3.4.3/cmake +diff -ut opencv-3.4.3.orig/CMakeLists.txt opencv-3.4.3/CMakeLists.txt +--- opencv-3.4.3.orig/CMakeLists.txt 2019-10-02 15:01:47.179900886 -0400 ++++ opencv-3.4.3/CMakeLists.txt 2019-10-02 15:19:18.363163935 -0400 +@@ -39,7 +39,7 @@ + if(NOT CMAKE_TOOLCHAIN_FILE) + # it _must_ go before project(OpenCV) in order to work + if(WIN32) +- set(CMAKE_INSTALL_PREFIX "${CMAKE_BINARY_DIR}/install" CACHE PATH "Installation Directory") ++ #set(CMAKE_INSTALL_PREFIX "${CMAKE_BINARY_DIR}/install" CACHE PATH "Installation Directory") + else() + set(CMAKE_INSTALL_PREFIX "/usr/local" CACHE PATH "Installation Directory") + endif() +@@ -47,7 +47,7 @@ + #Android: set output folder to ${CMAKE_BINARY_DIR} + set(LIBRARY_OUTPUT_PATH_ROOT ${CMAKE_BINARY_DIR} CACHE PATH "root for library output, set this to change where android libs are compiled to" ) + # any cross-compiling +- set(CMAKE_INSTALL_PREFIX "${CMAKE_BINARY_DIR}/install" CACHE PATH "Installation Directory") ++ #set(CMAKE_INSTALL_PREFIX "${CMAKE_BINARY_DIR}/install" CACHE PATH "Installation Directory") + endif() + endif() + +@@ -377,14 +377,7 @@ + ocv_update(OPENCV_DOC_INSTALL_PATH share/OpenCV/doc) + endif() + +-if(WIN32 AND CMAKE_HOST_SYSTEM_NAME MATCHES Windows) +- if(DEFINED OpenCV_RUNTIME AND DEFINED OpenCV_ARCH) +- ocv_update(OpenCV_INSTALL_BINARIES_PREFIX "${OpenCV_ARCH}/${OpenCV_RUNTIME}/") +- else() +- message(STATUS "Can't detect runtime and/or arch") +- ocv_update(OpenCV_INSTALL_BINARIES_PREFIX "") +- endif() +-elseif(ANDROID) ++if(ANDROID) + ocv_update(OpenCV_INSTALL_BINARIES_PREFIX "sdk/native/") + else() + ocv_update(OpenCV_INSTALL_BINARIES_PREFIX "") +@@ -433,11 +426,8 @@ + ocv_update(3P_LIBRARY_OUTPUT_PATH "${OpenCV_BINARY_DIR}/3rdparty/lib${LIB_SUFFIX}") + + if(WIN32 AND CMAKE_HOST_SYSTEM_NAME MATCHES Windows) +- if(OpenCV_STATIC) +- ocv_update(OPENCV_LIB_INSTALL_PATH "${OpenCV_INSTALL_BINARIES_PREFIX}staticlib${LIB_SUFFIX}") +- else() +- ocv_update(OPENCV_LIB_INSTALL_PATH "${OpenCV_INSTALL_BINARIES_PREFIX}lib${LIB_SUFFIX}") +- endif() ++ ocv_update(OPENCV_LIB_INSTALL_PATH "${OpenCV_INSTALL_BINARIES_PREFIX}lib${LIB_SUFFIX}") ++ ocv_update(OPENCV_3P_LIB_INSTALL_PATH "${OpenCV_INSTALL_BINARIES_PREFIX}lib${LIB_SUFFIX}") + ocv_update(OPENCV_3P_LIB_INSTALL_PATH "${OpenCV_INSTALL_BINARIES_PREFIX}staticlib${LIB_SUFFIX}") + ocv_update(OPENCV_SAMPLES_SRC_INSTALL_PATH samples) + ocv_update(OPENCV_JAR_INSTALL_PATH java) +@@ -495,15 +485,9 @@ + set(OPENCV_LIB_ARCHIVE_INSTALL_PATH ${OPENCV_LIB_INSTALL_PATH}) + endif() + +-if(WIN32) +- # Postfix of DLLs: +- set(OPENCV_DLLVERSION "${OPENCV_VERSION_MAJOR}${OPENCV_VERSION_MINOR}${OPENCV_VERSION_PATCH}") +- set(OPENCV_DEBUG_POSTFIX d) +-else() +- # Postfix of so's: +- set(OPENCV_DLLVERSION "") +- set(OPENCV_DEBUG_POSTFIX "") +-endif() ++# Postfix of so's: ++set(OPENCV_DLLVERSION "") ++set(OPENCV_DEBUG_POSTFIX "") + + if(DEFINED CMAKE_DEBUG_POSTFIX) + set(OPENCV_DEBUG_POSTFIX "${CMAKE_DEBUG_POSTFIX}") +Common subdirectories: opencv-3.4.3.orig/data and opencv-3.4.3/data +Common subdirectories: opencv-3.4.3.orig/doc and opencv-3.4.3/doc +Common subdirectories: opencv-3.4.3.orig/include and opencv-3.4.3/include +Common subdirectories: opencv-3.4.3.orig/modules and opencv-3.4.3/modules +Common subdirectories: opencv-3.4.3.orig/platforms and opencv-3.4.3/platforms +Common subdirectories: opencv-3.4.3.orig/samples and opencv-3.4.3/samples
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/src/opencv.mk Thu Oct 03 15:21:51 2019 -0400 @@ -0,0 +1,65 @@ +# This file is part of MXE. See LICENSE.md for licensing information. + +PKG := opencv +$(PKG)_IGNORE := +$(PKG)_VERSION := 3.4.3 +$(PKG)_CHECKSUM := d700348b3251552ccf034e4d7dd16080e4086840 +$(PKG)_SUBDIR := $(PKG)-$($(PKG)_VERSION) +$(PKG)_FILE := opencv-$($(PKG)_VERSION).zip +$(PKG)_URL := https://$(SOURCEFORGE_MIRROR)/project/$(PKG)library/$(PKG)-unix/$($(PKG)_VERSION)/$($(PKG)_FILE) +$(PKG)_URL_2 := https://distfiles.macports.org/opencv/$($(PKG)_FILE) +$(PKG)_DEPS := eigen ffmpeg jasper jpeg libpng \ + openblas openexr tiff xz zlib + +define $(PKG)_UPDATE + $(WGET) -q -O- 'https://sourceforge.net/projects/opencvlibrary/files/opencv-unix/' | \ + $(SED) -n 's,.*/projects/.*/\([0-9][^"]*\)/".*,\1,p' | \ + head -1 +endef + +# -DCMAKE_CXX_STANDARD=98 required for non-posix gcc7 build + +define $(PKG)_BUILD + # build + mkdir '$(1)/build' + cd '$(1)/build' && cmake .. \ + -DCMAKE_TOOLCHAIN_FILE='$(CMAKE_TOOLCHAIN_FILE)' \ + --debug-output \ + -DBUILD_opencv_dnn=OFF \ + -DBUILD_opencv_java=OFF \ + -DBUILD_opencv_python=OFF \ + -DWITH_QT=OFF \ + -DWITH_OPENGL=ON \ + -DWITH_GSTREAMER=OFF \ + -DWITH_GTK=OFF \ + -DWITH_VIDEOINPUT=ON \ + -DWITH_XINE=OFF \ + -DWITH_PYTHON=OFF \ + -DWITH_PROTOBUF=OFF \ + -DWITH_CUDA=OFF \ + -DBUILD_opencv_apps=OFF \ + -DBUILD_DOCS=OFF \ + -DBUILD_EXAMPLES=OFF \ + -DBUILD_PACKAGE=OFF \ + -DBUILD_PERF_TESTS=OFF \ + -DBUILD_TESTS=OFF \ + -DBUILD_WITH_DEBUG_INFO=OFF \ + -DBUILD_FAT_JAVA_LIB=OFF \ + -DBUILD_ZLIB=OFF \ + -DBUILD_TIFF=OFF \ + -DBUILD_JASPER=OFF \ + -DBUILD_JPEG=OFF \ + -DBUILD_WEBP=ON \ + -DBUILD_PROTOBUF=OFF \ + -DPROTOBUF_UPDATE_FILES=ON \ + -DBUILD_PNG=OFF \ + -DBUILD_OPENEXR=OFF \ + -DCMAKE_VERBOSE=ON \ + -DCMAKE_CXX_STANDARD=11 \ + -DCMAKE_CXX_FLAGS='-D_WIN32_WINNT=0x0500' + + # install + $(MAKE) -C '$(1)/build' -j '$(JOBS)' VERBOSE=1 + $(MAKE) -C '$(1)/build' -j 1 install VERBOSE=1 + +endef