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

Reply via email to