On 2016/11/01 19:01, Rafael Sadowski wrote: > I do not want to give up. Maybe someone in the Budapest hackroom ;)
I'm not there but I'll have a look. > > > ONLY_FOR_ARCHS = ${GCC4_ARCHS} > > > -ONLY_FOR_ARCHS-java = amd64 i386 > > > +ONLY_FOR_ARCHS-java = ${ONLY_FOR_ARCHS} This is redundant, setting ONLY_FOR_ARCHS sets the variable for all subpackages, so there's no point writing "+ONLY_FOR_ARCHS-anything = ${ONLY_FOR_ARCHS}". > > > -SHARED_LIBS = opencv_calib3d 1.1 #1.2 > > > -SHARED_LIBS += opencv_contrib 1.1 #1.2 > > > -SHARED_LIBS += opencv_core 1.1 #1.2 > > > -SHARED_LIBS += opencv_features2d 1.1 #1.2 > > > -SHARED_LIBS += opencv_flann 1.1 #1.2 > > > -SHARED_LIBS += opencv_gpu 1.1 #1.2 > > > -SHARED_LIBS += opencv_highgui 1.1 #1.2 > > > -SHARED_LIBS += opencv_imgproc 1.1 #1.2 > > > -SHARED_LIBS += opencv_legacy 1.1 #1.2 > > > -SHARED_LIBS += opencv_ml 1.1 #1.2 > > > -SHARED_LIBS += opencv_nonfree 0.1 #0.2 > > > -SHARED_LIBS += opencv_objdetect 1.1 #1.2 > > > -SHARED_LIBS += opencv_photo 0.1 #0.2 > > > -SHARED_LIBS += opencv_stitching 0.1 #0.2 > > > -SHARED_LIBS += opencv_superres 0.1 #0.2 > > > -SHARED_LIBS += opencv_ts 0.1 #0.2 > > > -SHARED_LIBS += opencv_video 1.1 #1.2 > > > -SHARED_LIBS += opencv_videostab 0.1 #0.2 > > > -SHARED_LIBS += opencv_ocl 0.1 #2.5 > > > +SHARED_LIBS = opencv_calib3d 1.2 #1.3 > > > +SHARED_LIBS += opencv_contrib 1.2 #1.3 > > > +SHARED_LIBS += opencv_core 1.2 #1.3 > > > +SHARED_LIBS += opencv_features2d 1.2 #1.3 > > > +SHARED_LIBS += opencv_flann 1.2 #1.3 > > > +SHARED_LIBS += opencv_gpu 1.2 #1.3 > > > +SHARED_LIBS += opencv_highgui 1.2 #1.3 > > > +SHARED_LIBS += opencv_imgproc 1.2 #1.3 > > > +SHARED_LIBS += opencv_legacy 1.2 #1.3 > > > +SHARED_LIBS += opencv_ml 1.2 #1.3 > > > +SHARED_LIBS += opencv_nonfree 0.2 #0.3 > > > +SHARED_LIBS += opencv_objdetect 1.2 #1.3 > > > +SHARED_LIBS += opencv_photo 0.2 #0.3 > > > +SHARED_LIBS += opencv_stitching 0.2 #0.3 > > > +SHARED_LIBS += opencv_superres 0.2 #0.3 > > > +SHARED_LIBS += opencv_ts 0.2 #0.3 > > > +SHARED_LIBS += opencv_video 1.2 #1.3 > > > +SHARED_LIBS += opencv_videostab 0.2 #0.3 > > > +SHARED_LIBS += opencv_ocl 0.2 #2.6 It looks like you've just bumped the shared library minor by 1 for everything here. That isn't how this works. Unless you're going to properly check ABI compatibility and selectively bump where needed, the only safe thing to do is bump major. For this port I think you might as well just do it like this and be done with it. .for i in opencv_calib3d opencv_contrib opencv_core opencv_features2d \ opencv_flann opencv_gpu opencv_highgui opencv_imgproc opencv_legacy \ opencv_ml opencv_nonfree opencv_objdetect opencv_photo opencv_stitching \ opencv_superres opencv_ts opencv_video opencv_videostab opencv_ocl SHARED_LIBS += $i 2.0 .endfor > > > @@ -122,11 +119,12 @@ CONFIGURE_ARGS = -DBUILD_opencv_nonfree: > > > -DWITH_PNG:Bool=On \ > > > -DWITH_TIFF:Bool=On \ > > > -DWITH_V4L:Bool=Off \ > > > + -DENABLE_SSE3:Bool=Off \ Is this really needed on amd64? Only the first couple of generations of 64-bit-capable AMDs (2003/2004) lack SSE3, I only spot one such machine in the current rotation of dmesglog (since Jan 2015) and the things depending on this library in ports don't *really* look like things you'd run on such a machine.. I'm testing this diff now (it has a bit of other cleanup too), what do you think? Index: Makefile =================================================================== RCS file: /cvs/ports/graphics/opencv/Makefile,v retrieving revision 1.37 diff -u -p -r1.37 Makefile --- Makefile 15 Apr 2016 08:53:49 -0000 1.37 +++ Makefile 1 Nov 2016 20:28:55 -0000 @@ -1,83 +1,65 @@ # $OpenBSD: Makefile,v 1.37 2016/04/15 08:53:49 shadchin Exp $ ONLY_FOR_ARCHS = ${GCC4_ARCHS} -ONLY_FOR_ARCHS-java = amd64 i386 CATEGORIES = graphics devel COMMENT-docs = OpenCV documentation and examples COMMENT-main = library of programming functions for real time cv COMMENT-java = Java bindings for OpenCV -V = 2.4.12.3 -DISTNAME = opencv-$V +V = 2.4.13 +GH_ACCOUNT = Itseez +GH_PROJECT = opencv +GH_TAGNAME = ${V} + PKGNAME-main = ${PKGNAME} PKGNAME-docs = opencv-docs-$V PKGNAME-java = opencv-java-$V -REVISION-docs = 0 + +.for i in opencv_calib3d opencv_contrib opencv_core opencv_features2d \ + opencv_flann opencv_gpu opencv_highgui opencv_imgproc opencv_legacy \ + opencv_ml opencv_nonfree opencv_objdetect opencv_photo opencv_stitching \ + opencv_superres opencv_ts opencv_video opencv_videostab opencv_ocl +SHARED_LIBS += $i 2.0 +.endfor HOMEPAGE = http://www.opencv.org/ MAINTAINER = Rafael Sadowski <raf...@sizeofvoid.org> -SHARED_LIBS = opencv_calib3d 1.1 #1.2 -SHARED_LIBS += opencv_contrib 1.1 #1.2 -SHARED_LIBS += opencv_core 1.1 #1.2 -SHARED_LIBS += opencv_features2d 1.1 #1.2 -SHARED_LIBS += opencv_flann 1.1 #1.2 -SHARED_LIBS += opencv_gpu 1.1 #1.2 -SHARED_LIBS += opencv_highgui 1.1 #1.2 -SHARED_LIBS += opencv_imgproc 1.1 #1.2 -SHARED_LIBS += opencv_legacy 1.1 #1.2 -SHARED_LIBS += opencv_ml 1.1 #1.2 -SHARED_LIBS += opencv_nonfree 0.1 #0.2 -SHARED_LIBS += opencv_objdetect 1.1 #1.2 -SHARED_LIBS += opencv_photo 0.1 #0.2 -SHARED_LIBS += opencv_stitching 0.1 #0.2 -SHARED_LIBS += opencv_superres 0.1 #0.2 -SHARED_LIBS += opencv_ts 0.1 #0.2 -SHARED_LIBS += opencv_video 1.1 #1.2 -SHARED_LIBS += opencv_videostab 0.1 #0.2 -SHARED_LIBS += opencv_ocl 0.1 #2.5 - -GH_ACCOUNT = Itseez -GH_PROJECT = opencv -GH_COMMIT = 8e40becab12c642e7bbafb9fe87698e8b6bf28da +# "patents" means containing some patented algorithms, see +# http://docs.opencv.org/modules/nonfree/doc/nonfree.html +# As some source modules include this functionality, we couldn't +# just subpackage "nonfree". Excluding this, here we have a usual +# BSD license. +PERMIT_PACKAGE_FTP = Yes +PERMIT_PACKAGE_CDROM = patents +PERMIT_PACKAGE_CDROM-docs = Yes -WANTLIB-main = Half Iex IlmImf IlmThread Imath X11 Xcomposite Xcursor +WANTLIB-main += ${MODPY_WANTLIB} +WANTLIB-main += Half Iex IlmImf IlmThread Imath X11 Xcomposite Xcursor WANTLIB-main += Xdamage Xext Xfixes Xi Xinerama Xrandr Xrender atk-1.0 -WANTLIB-main += avcodec avformat avutil bz2 c cairo fontconfig +WANTLIB-main += avcodec avformat avresample avutil bz2 c cairo fontconfig WANTLIB-main += freetype gdk-x11-2.0 gdk_pixbuf-2.0 gio-2.0 glib-2.0 -WANTLIB-main += gobject-2.0 gstapp-1.0 gstbase-1.0 gstpbutils-1.0 -WANTLIB-main += gstreamer-1.0 gstriff-1.0 gstvideo-1.0 gthread-2.0 gtk-x11-2.0 -WANTLIB-main += jasper jpeg m pango-1.0 pangocairo-1.0 avresample -WANTLIB-main += pangoft2-1.0 png pthread stdc++ swscale tiff xml2 z -WANTLIB-main += ${MODGETTEXT_WANTLIB} ${MODPY_WANTLIB} +WANTLIB-main += gobject-2.0 gstapp-1.0 gstbase-1.0 gstpbutils-1.0 gstreamer-1.0 +WANTLIB-main += gstriff-1.0 gstvideo-1.0 gthread-2.0 gtk-x11-2.0 intl +WANTLIB-main += jasper jpeg m pango-1.0 pangocairo-1.0 pangoft2-1.0 +WANTLIB-main += png pthread stdc++ swscale tiff z WANTLIB-docs = WANTLIB-java = m pthread stdc++ -WANTLIB-java += opencv_calib3d opencv_contrib opencv_core -WANTLIB-java += opencv_features2d opencv_flann opencv_highgui -WANTLIB-java += opencv_imgproc opencv_ml opencv_objdetect -WANTLIB-java += opencv_photo opencv_video -WANTLIB-java += opencv_gpu opencv_legacy opencv_nonfree opencv_ocl +WANTLIB-java += opencv_calib3d opencv_contrib opencv_core opencv_features2d +WANTLIB-java += opencv_flann opencv_gpu opencv_highgui opencv_imgproc +WANTLIB-java += opencv_legacy opencv_ml opencv_nonfree opencv_objdetect +WANTLIB-java += opencv_ocl opencv_photo opencv_video MULTI_PACKAGES = -main -docs -java PSEUDO_FLAVORS = no_docs no_java FLAVOR ?= -# "patents" means containing some patented algorithms, see -# http://docs.opencv.org/modules/nonfree/doc/nonfree.html -# As some source modules include this functionality, we couldn't -# just subpackage "nonfree". Excluding this, here we have a usual -# BSDL -PERMIT_PACKAGE_FTP = Yes -PERMIT_PACKAGE_CDROM = patents -PERMIT_PACKAGE_CDROM-docs = Yes - .include <bsd.port.arch.mk> MODULES = devel/cmake \ - devel/gettext \ lang/python BUILD_DEPENDS = devel/doxygen \ @@ -101,13 +83,6 @@ LIB_DEPENDS-main = ${LIB_DEPENDS} \ LIB_DEPENDS-docs = LIB_DEPENDS-java = ${BUILD_PKGPATH},-main=${V} -# XXX PIE cannot be produced due to problems with inline assembly. -# Since OpenCV is mostly used as a library, switch to PIC. -.if ${ARCH:Mi386} -CONFIGURE_ENV = CFLAGS="${CFLAGS} -fPIC" \ - CXXFLAGS="${CXXFLAGS} -fPIC" -.endif - # ATM opencv requires V4L1 compat, ask them to change it, # then see WITH_V4L below. CONFIGURE_ARGS = -DBUILD_opencv_nonfree:Bool=On \ @@ -124,9 +99,17 @@ CONFIGURE_ARGS = -DBUILD_opencv_nonfree: -DWITH_V4L:Bool=Off \ -DPYTHON_EXECUTABLE:FILEPATH=${MODPY_BIN} +.if ${ARCH:Mi386} +# XXX PIE cannot be produced due to problems with inline assembly. +# Since OpenCV is mostly used as a library, switch to PIC. +CONFIGURE_ENV = CFLAGS="${CFLAGS} -fPIC" \ + CXXFLAGS="${CXXFLAGS} -fPIC" +CONFIGURE_ARGS += -DENABLE_SSE3:Bool=Off +.endif + .if ${BUILD_PACKAGES:M-java} MODULES += java -MODJAVA_VER = 1.7+ +MODJAVA_VER = 1.8+ BUILD_DEPENDS += devel/apache-ant .else # Safe: Java will be detected, if present, but won't be used @@ -167,12 +150,7 @@ post-install: .endif do-test: - @cd ${WRKBUILD}/bin; \ - failed=false; \ - for t in opencv_test*; do \ - echo "RUNNING TEST: $$t" >&2; \ - ./$$t || failed=true; \ - done; \ - $$failed + cd ${WRKBUILD}; \ + ${MODPY_BIN} ${WRKSRC}/modules/ts/misc/run.py .include <bsd.port.mk> Index: distinfo =================================================================== RCS file: /cvs/ports/graphics/opencv/distinfo,v retrieving revision 1.5 diff -u -p -r1.5 distinfo --- distinfo 23 Nov 2015 20:34:07 -0000 1.5 +++ distinfo 1 Nov 2016 20:28:55 -0000 @@ -1,2 +1,2 @@ -SHA256 (opencv-2.4.12.3.tar.gz) = 7RAcJF+0UkxJ2cuLZ5SnAbTjphL29plAh8guhcazcTE= -SIZE (opencv-2.4.12.3.tar.gz) = 90643425 +SHA256 (opencv-2.4.13.tar.gz) = lOvMphwwA01fsW/quOwSyKho9RYtIKnwOW8PX22Lu/8= +SIZE (opencv-2.4.13.tar.gz) = 91669572 Index: patches/patch-apps_haartraining_CMakeLists_txt =================================================================== RCS file: /cvs/ports/graphics/opencv/patches/patch-apps_haartraining_CMakeLists_txt,v retrieving revision 1.3 diff -u -p -r1.3 patch-apps_haartraining_CMakeLists_txt --- patches/patch-apps_haartraining_CMakeLists_txt 24 Jan 2015 10:56:43 -0000 1.3 +++ patches/patch-apps_haartraining_CMakeLists_txt 1 Nov 2016 20:28:55 -0000 @@ -1,46 +0,0 @@ -$OpenBSD: patch-apps_haartraining_CMakeLists_txt,v 1.3 2015/01/24 10:56:43 zhuk Exp $ -Fix linking. ---- apps/haartraining/CMakeLists.txt.orig Wed Oct 1 09:33:36 2014 -+++ apps/haartraining/CMakeLists.txt Sun Dec 21 20:16:55 2014 -@@ -14,8 +14,6 @@ if(WIN32) - link_directories(${CMAKE_CURRENT_BINARY_DIR}) - endif() - --link_libraries(${OPENCV_HAARTRAINING_DEPS} opencv_haartraining_engine) -- - # ----------------------------------------------------------- - # Library - # ----------------------------------------------------------- -@@ -42,6 +40,8 @@ set_target_properties(opencv_haartraining_engine PROPE - INSTALL_NAME_DIR lib - ) - -+target_link_libraries(opencv_haartraining_engine ${OPENCV_HAARTRAINING_DEPS}) -+ - # ----------------------------------------------------------- - # haartraining - # ----------------------------------------------------------- -@@ -50,6 +50,7 @@ add_executable(opencv_haartraining cvhaartraining.h ha - set_target_properties(opencv_haartraining PROPERTIES - DEBUG_POSTFIX "${OPENCV_DEBUG_POSTFIX}" - OUTPUT_NAME "opencv_haartraining") -+target_link_libraries(opencv_haartraining opencv_haartraining_engine) - - # ----------------------------------------------------------- - # createsamples -@@ -59,6 +60,7 @@ add_executable(opencv_createsamples cvhaartraining.h c - set_target_properties(opencv_createsamples PROPERTIES - DEBUG_POSTFIX "${OPENCV_DEBUG_POSTFIX}" - OUTPUT_NAME "opencv_createsamples") -+target_link_libraries(opencv_createsamples opencv_haartraining_engine) - - # ----------------------------------------------------------- - # performance -@@ -67,6 +69,7 @@ add_executable(opencv_performance performance.cpp) - set_target_properties(opencv_performance PROPERTIES - DEBUG_POSTFIX "${OPENCV_DEBUG_POSTFIX}" - OUTPUT_NAME "opencv_performance") -+target_link_libraries(opencv_performance opencv_haartraining_engine) - - # ----------------------------------------------------------- - # Install part Index: patches/patch-cmake_OpenCVDetectPython_cmake =================================================================== RCS file: /cvs/ports/graphics/opencv/patches/patch-cmake_OpenCVDetectPython_cmake,v retrieving revision 1.1 diff -u -p -r1.1 patch-cmake_OpenCVDetectPython_cmake --- patches/patch-cmake_OpenCVDetectPython_cmake 15 Apr 2016 08:53:49 -0000 1.1 +++ patches/patch-cmake_OpenCVDetectPython_cmake 1 Nov 2016 20:28:55 -0000 @@ -1,6 +1,6 @@ $OpenBSD: patch-cmake_OpenCVDetectPython_cmake,v 1.1 2016/04/15 08:53:49 shadchin Exp $ ---- cmake/OpenCVDetectPython.cmake.orig Fri Jan 15 15:12:13 2016 -+++ cmake/OpenCVDetectPython.cmake Fri Jan 15 15:12:31 2016 +--- cmake/OpenCVDetectPython.cmake.orig Wed Apr 20 16:21:19 2016 ++++ cmake/OpenCVDetectPython.cmake Mon Jun 6 23:06:38 2016 @@ -123,8 +123,8 @@ if(PYTHON_EXECUTABLE) find_host_program(SPHINX_BUILD sphinx-build) if(SPHINX_BUILD) @@ -10,5 +10,5 @@ $OpenBSD: patch-cmake_OpenCVDetectPython + OUTPUT_VARIABLE SPHINX_OUTPUT + ERROR_QUIET OUTPUT_STRIP_TRAILING_WHITESPACE) - message(STATUS "Found Sphinx ${SPHINX_BUILD} ${SPHINX_OUTPUT}") if(SPHINX_OUTPUT MATCHES "Sphinx v([0-9][^ \n]*)") + set(SPHINX_VERSION "${CMAKE_MATCH_1}") Index: patches/patch-modules_core_include_opencv2_core_version_hpp =================================================================== RCS file: /cvs/ports/graphics/opencv/patches/patch-modules_core_include_opencv2_core_version_hpp,v retrieving revision 1.1 diff -u -p -r1.1 patch-modules_core_include_opencv2_core_version_hpp --- patches/patch-modules_core_include_opencv2_core_version_hpp 23 Nov 2015 20:34:07 -0000 1.1 +++ patches/patch-modules_core_include_opencv2_core_version_hpp 1 Nov 2016 20:28:55 -0000 @@ -1,15 +0,0 @@ -$OpenBSD: patch-modules_core_include_opencv2_core_version_hpp,v 1.1 2015/11/23 20:34:07 zhuk Exp $ - -git tag forgot to bump version - ---- modules/core/include/opencv2/core/version.hpp.orig Sat Nov 7 15:52:36 2015 -+++ modules/core/include/opencv2/core/version.hpp Sat Nov 7 15:52:50 2015 -@@ -50,7 +50,7 @@ - #define CV_VERSION_EPOCH 2 - #define CV_VERSION_MAJOR 4 - #define CV_VERSION_MINOR 12 --#define CV_VERSION_REVISION 2 -+#define CV_VERSION_REVISION 3 - - #define CVAUX_STR_EXP(__A) #__A - #define CVAUX_STR(__A) CVAUX_STR_EXP(__A) Index: pkg/PLIST-docs =================================================================== RCS file: /cvs/ports/graphics/opencv/pkg/PLIST-docs,v retrieving revision 1.8 diff -u -p -r1.8 PLIST-docs --- pkg/PLIST-docs 23 Nov 2015 20:34:08 -0000 1.8 +++ pkg/PLIST-docs 1 Nov 2016 20:28:55 -0000 @@ -138,6 +138,7 @@ share/OpenCV/samples/cpp/pic4.png share/OpenCV/samples/cpp/pic5.png share/OpenCV/samples/cpp/pic6.png share/OpenCV/samples/cpp/points_classifier.cpp +share/OpenCV/samples/cpp/polynominal_equations.cpp share/OpenCV/samples/cpp/retinaDemo.cpp share/OpenCV/samples/cpp/rgbdodometry.cpp share/OpenCV/samples/cpp/right01.jpg Index: pkg/PLIST-java =================================================================== RCS file: /cvs/ports/graphics/opencv/pkg/PLIST-java,v retrieving revision 1.4 diff -u -p -r1.4 PLIST-java --- pkg/PLIST-java 23 Nov 2015 20:34:08 -0000 1.4 +++ pkg/PLIST-java 1 Nov 2016 20:28:55 -0000 @@ -1,5 +1,5 @@ @comment $OpenBSD: PLIST-java,v 1.4 2015/11/23 20:34:08 zhuk Exp $ lib/OpenCV/ lib/OpenCV/java/ -lib/OpenCV/java/libopencv_java2412.so -lib/OpenCV/java/opencv-2412.jar +lib/OpenCV/java/libopencv_java2413.so +lib/OpenCV/java/opencv-2413.jar Index: pkg/PLIST-main =================================================================== RCS file: /cvs/ports/graphics/opencv/pkg/PLIST-main,v retrieving revision 1.5 diff -u -p -r1.5 PLIST-main --- pkg/PLIST-main 23 Nov 2015 20:34:08 -0000 1.5 +++ pkg/PLIST-main 1 Nov 2016 20:28:55 -0000 @@ -4,6 +4,7 @@ @bin bin/opencv_haartraining @bin bin/opencv_performance @bin bin/opencv_traincascade +@bin bin/opencv_visualisation include/opencv/ include/opencv/cv.h include/opencv/cv.hpp