Hello community,

here is the log from the commit of package opencv for openSUSE:Factory checked 
in at 2017-12-03 10:10:30
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/opencv (Old)
 and      /work/SRC/openSUSE:Factory/.opencv.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "opencv"

Sun Dec  3 10:10:30 2017 rev:69 rq:546456 version:3.3.1

Changes:
--------
--- /work/SRC/openSUSE:Factory/opencv/opencv.changes    2017-11-19 
11:09:18.851931255 +0100
+++ /work/SRC/openSUSE:Factory/.opencv.new/opencv.changes       2017-12-03 
10:10:41.364948426 +0100
@@ -1,0 +2,9 @@
+Sat Nov 25 14:29:14 UTC 2017 - stefan.bru...@rwth-aachen.de
+
+- Readd opencv-gles.patch, it is *not* included upstream; otherwise
+  build breaks on all GLES Qt5 platforms (armv6l, armv7l, aarch64)
+- add fix_processor_detection_for_32bit_on_64bit.patch
+- Correctly set optimizations and dynamic dispatch on ARM, use
+  OpenCV 3.3 syntax on x86.
+
+-------------------------------------------------------------------

New:
----
  fix_processor_detection_for_32bit_on_64bit.patch
  opencv-gles.patch

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ opencv.spec ++++++
--- /var/tmp/diff_new_pack.zihoAO/_old  2017-12-03 10:10:44.616830197 +0100
+++ /var/tmp/diff_new_pack.zihoAO/_new  2017-12-03 10:10:44.616830197 +0100
@@ -33,10 +33,14 @@
 Source0:        
https://github.com/opencv/opencv/archive/%{version}.tar.gz#/%{name}-%{version}.tar.gz
 # This is the FACE module from the opencv_contrib package. Packaged separately 
to prevent too much usntable modules
 Source1:        opencv_contrib_face-3.1.0.tar.bz2
+# PATCH-FIX-OPENCSUSE opencv-gles.patch -- Make sure 
PERSPECTIVE_CORRECTION_HINT is validated first, 
https://github.com/opencv/opencv/issues/9171
+Patch1:         opencv-gles.patch
 # PATCH-FIX-OPENSUSE opencv-build-compare.patch -- avoid republish if some 
random external version number changes
 Patch8:         opencv-build-compare.patch
-# PATCH-FIX-OPENSUSE 0001-Do-not-include-glx.h-when-using-GLES.patch -- Fix 
build error on 32bit ARM, due to incompatible pointer types
+# PATCH-FIX-OPENSUSE 0001-Do-not-include-glx.h-when-using-GLES.patch -- Fix 
build error on 32bit ARM, due to incompatible pointer types, 
https://github.com/opencv/opencv/issues/9171
 Patch11:        0001-Do-not-include-glx.h-when-using-GLES.patch
+# PATCH-FIX-OPENSUSE fix_processor_detection_for_32bit_on_64bit.patch -- Fix 
CPU detection for 32bit build on qemu-system-aarch64
+Patch12:        fix_processor_detection_for_32bit_on_64bit.patch
 BuildRequires:  cmake
 BuildRequires:  fdupes
 BuildRequires:  libeigen3-devel
@@ -167,7 +171,10 @@
 rm -f doc/packaging.txt
 
 %build
-# TODO for OCV 3.3: 
https://github.com/opencv/opencv/wiki/CPU-optimizations-build-options
+# Dynamic dispatch: 
https://github.com/opencv/opencv/wiki/CPU-optimizations-build-options
+# x86: disable SSE on 32bit, do not dispatch AVX and later - SSE3
+#      is the highest extension available on any non-64bit x86 CPU
+# ARM: ARMv6, e.g. RPi1, only has VFPv2
 %cmake \
 %if %{with tests}
       -DBUILD_TESTS=ON \
@@ -182,10 +189,26 @@
       -DWITH_IPP=OFF \
       -DWITH_TBB=ON \
 %ifarch %{ix86}
-      -DENABLE_SSE=0 \
-      -DENABLE_SSE2=0 \
+      -DCPU_BASELINE_DISABLE=SSE \
+      -DCPU_DISPATCH=SSE,SSE2,SSE3 \
 %endif
-      -DENABLE_SSE3=0
+%ifarch x86_64
+      -DCPU_BASELINE=SSE2 \
+      -DCPU_DISPATCH=SSE3,SSE4_1,SSE4_2,AVX,FP16,AVX2 \
+%endif
+%ifarch %{arm}
+%ifarch armv7l armv7hl
+      -DCPU_BASELINE=VFPV3 \
+      -DCPU_DISPATCH=NEON \
+%else
+      -DCPU_BASELINE_DISABLE=NEON,VFPV3 \
+%endif
+%endif
+%ifarch aarch64
+      -DCPU_BASELINE=NEON \
+      -DCPU_DISPATCH=FP16 \
+%endif
+
 make %{?_smp_mflags} VERBOSE=1
 
 %check

++++++ fix_processor_detection_for_32bit_on_64bit.patch ++++++
--- opencv-3.3.0/cmake/OpenCVDetectCXXCompiler.cmake_orig       2017-10-27 
06:32:16.790452991 +0200
+++ opencv-3.3.0/cmake/OpenCVDetectCXXCompiler.cmake    2017-10-27 
06:34:33.035306589 +0200
@@ -60,6 +60,7 @@
   endif()
 endif()
 
+message(STATUS "Detected processor: ${CMAKE_SYSTEM_PROCESSOR}")
 if(MSVC64 OR MINGW64)
   set(X86_64 1)
 elseif(MINGW OR (MSVC AND NOT CMAKE_CROSSCOMPILING))
@@ -76,11 +77,17 @@
   set(PPC64LE 1)
 endif()
 
-# Workaround for 32-bit operating systems on 64-bit x86_64 processor
-if(X86_64 AND CMAKE_SIZEOF_VOID_P EQUAL 4 AND NOT FORCE_X86_64)
-  message(STATUS "sizeof(void) = 4 on x86 / x86_64 processor. Assume 32-bit 
compilation mode (X86=1)")
-  unset(X86_64)
-  set(X86 1)
+# Workaround for 32-bit operating systems on x86_64/aarch64 processor
+if(CMAKE_SIZEOF_VOID_P EQUAL 4 AND NOT FORCE_X86_64)
+  message(STATUS "sizeof(void) = 4 on 64 bit processor. Assume 32-bit 
compilation mode")
+  if (X86_64)
+    unset(X86_64)
+    set(X86 1)
+  endif()
+  if (AARCH64)
+    unset(AARCH64)
+    set(ARM 1)
+  endif()
 endif()
 
 # Similar code exists in OpenCVConfig.cmake
++++++ opencv-gles.patch ++++++
--- opencv-3.1.0.orig/modules/highgui/src/window_QT.cpp 2015-12-18 
16:02:16.000000000 +0100
+++ opencv-3.1.0/modules/highgui/src/window_QT.cpp      2016-02-26 
22:31:37.004570651 +0100
@@ -3165,7 +3165,9 @@
 
 void OpenGlViewPort::initializeGL()
 {
+#ifdef GL_PERSPECTIVE_CORRECTION_HINT
     glHint(GL_PERSPECTIVE_CORRECTION_HINT, GL_NICEST);
+#endif
 }
 
 void OpenGlViewPort::resizeGL(int w, int h)

Reply via email to