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