SHA256
10
0
forked from pool/opencv3

8 Commits

Author SHA256 Message Date
a4ef343e65 Accepting request 1300994 from science
OBS-URL: https://build.opensuse.org/request/show/1300994
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/opencv3?expand=0&rev=19
2025-08-25 18:37:11 +00:00
Ana Guerrero
0b17de47fd - Add opencv-ppc64le-power9.patch, fix missing vec_cvfo on POWER9 due to
unavailable VSX float64 conversion

OBS-URL: https://build.opensuse.org/package/show/science/opencv3?expand=0&rev=40
2025-08-22 15:13:21 +00:00
1da4ab9733 Accepting request 1278284 from science
OBS-URL: https://build.opensuse.org/request/show/1278284
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/opencv3?expand=0&rev=18
2025-05-20 07:37:43 +00:00
78779b12e6 - export CMAKE_POLICY_VERSION_MINIMUM="3.5" to ignore cmakes
minimum version warnings

OBS-URL: https://build.opensuse.org/package/show/science/opencv3?expand=0&rev=38
2025-05-18 18:50:11 +00:00
ad9199ff5b Accepting request 1252110 from science
OBS-URL: https://build.opensuse.org/request/show/1252110
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/opencv3?expand=0&rev=17
2025-03-11 19:47:13 +00:00
5defe62615 Accepting request 1252054 from home:badshah400:branches:science
Add opencv3-drop-numpy-distutils.patch: drop use of numpy-distutils to determine numpy include dirs in cmake; upstream commit to 4.x branch.

OBS-URL: https://build.opensuse.org/request/show/1252054
OBS-URL: https://build.opensuse.org/package/show/science/opencv3?expand=0&rev=36
2025-03-11 15:48:09 +00:00
9d30ad629b Accepting request 1244740 from science
OBS-URL: https://build.opensuse.org/request/show/1244740
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/opencv3?expand=0&rev=16
2025-02-10 16:30:18 +00:00
3cfcde3d9a - Update to 3.4.20:
* Bugfixes, see
    https://github.com/opencv/opencv/wiki/ChangeLog#version3420
  * Various bugfixes backported from 4.7 branch see
    https://github.com/opencv/opencv/compare/3.4.19...3.4.20
- Drop opencv3-pr19384-tbb2021.patch: Fixed upstream.
- Rebase/refresh opencv-build-compare.patch with quilt.

OBS-URL: https://build.opensuse.org/package/show/science/opencv3?expand=0&rev=34
2025-02-10 12:21:56 +00:00
10 changed files with 125 additions and 136 deletions

View File

@@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:9b913e74299ce4416a5c94000da577c592bf670fd53bad16220eb115a0821529
size 88342812

3
opencv-3.4.20.tar.gz Normal file
View File

@@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:b9eda448a08ba7b10bfd5bd45697056569ebdf7a02070947e1c1f3e8e69280cd
size 88348843

View File

@@ -1,8 +1,8 @@
diff --git a/CMakeLists.txt b/CMakeLists.txt
index c7c76ec..b9257c6 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -960,11 +960,11 @@ endif()
Index: opencv-3.4.20/CMakeLists.txt
===================================================================
--- opencv-3.4.20.orig/CMakeLists.txt
+++ opencv-3.4.20/CMakeLists.txt
@@ -1053,11 +1053,11 @@ endif()
if(OPENCV_TIMESTAMP)
status(" Timestamp:" ${OPENCV_TIMESTAMP})
endif()
@@ -16,11 +16,11 @@ index c7c76ec..b9257c6 100644
status(" CMake generator:" ${CMAKE_GENERATOR})
status(" CMake build tool:" ${CMAKE_BUILD_TOOL})
if(MSVC)
diff --git a/cmake/OpenCVUtils.cmake b/cmake/OpenCVUtils.cmake
index fae91c1..89bfd0d 100644
--- a/cmake/OpenCVUtils.cmake
+++ b/cmake/OpenCVUtils.cmake
@@ -804,15 +804,18 @@ function(status text)
Index: opencv-3.4.20/cmake/OpenCVUtils.cmake
===================================================================
--- opencv-3.4.20.orig/cmake/OpenCVUtils.cmake
+++ opencv-3.4.20/cmake/OpenCVUtils.cmake
@@ -1023,15 +1023,18 @@ function(status text)
if(${status_cond})
string(REPLACE ";" " " status_then "${status_then}")
string(REGEX REPLACE "^[ \t]+" "" status_then "${status_then}")

View File

@@ -0,0 +1,46 @@
diff -Nur opencv-3.4.20/modules/core/include/opencv2/core/vsx_utils.hpp opencv-3.4.20-new/modules/core/include/opencv2/core/vsx_utils.hpp
--- opencv-3.4.20/modules/core/include/opencv2/core/vsx_utils.hpp 2023-06-27 19:29:13.000000000 +0800
+++ opencv-3.4.20-new/modules/core/include/opencv2/core/vsx_utils.hpp 2025-08-07 21:18:01.161909977 +0800
@@ -5,6 +5,13 @@
#ifndef OPENCV_HAL_VSX_UTILS_HPP
#define OPENCV_HAL_VSX_UTILS_HPP
+#if defined(__x86_64__) || defined(__riscv) || defined(__s390x__) || defined(__aarch64__) || defined(__loongarch64) \
+ || defined(__POWER10__) || (defined(__powerpc64__) && defined(__ARCH_PWR10__))
+ #define CV_VSX_HAS_FLOAT64_CONVERT 1
+#else
+ #define CV_VSX_HAS_FLOAT64_CONVERT 0
+#endif
+
#include "opencv2/core/cvdef.h"
#ifndef SKIP_INCLUDES
@@ -257,8 +264,26 @@
VSX_IMPL_1VRG(vec_udword2, vec_dword2, vpopcntd, vec_popcntu)
// converts between single and double-precision
-VSX_REDIRECT_1RG(vec_float4, vec_double2, vec_cvfo, __builtin_vsx_xvcvdpsp)
-VSX_REDIRECT_1RG(vec_double2, vec_float4, vec_cvfo, __builtin_vsx_xvcvspdp)
+#if CV_VSX_HAS_FLOAT64_CONVERT
+// Use VSX double<->float conversion instructions (if supported by the architecture)
+ VSX_REDIRECT_1RG(vec_float4, vec_double2, vec_cvfo, vec_floate)
+ VSX_REDIRECT_1RG(vec_double2, vec_float4, vec_cvfo, vec_doubleo)
+#else
+// Fallback: implement vec_cvfo using scalar operations (to ensure successful linking)
+ static inline vec_float4 vec_cvfo(const vec_double2& a)
+ {
+ float r0 = static_cast<float>(reinterpret_cast<const double*>(&a)[0]);
+ float r1 = static_cast<float>(reinterpret_cast<const double*>(&a)[1]);
+ return (vec_float4){r0, r1, 0.f, 0.f};
+ }
+
+ static inline vec_double2 vec_cvfo(const vec_float4& a)
+ {
+ double r0 = static_cast<double>(reinterpret_cast<const float*>(&a)[0]);
+ double r1 = static_cast<double>(reinterpret_cast<const float*>(&a)[2]);
+ return (vec_double2){r0, r1};
+ }
+#endif
// converts word and doubleword to double-precision
#undef vec_ctd

View File

@@ -0,0 +1,23 @@
From 00ca8f455e6a5588d905e3a0b268f18ee3fda5dd Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?S=C3=A9rgio=20M=2E=20Basto?= <sergio@serjux.com>
Date: Sun, 1 Oct 2023 16:12:25 +0100
Subject: [PATCH] `numpy.distutils` is removed in numpy 1.26 on Python 3.12.
so we don't use numpy.distutils to get includes dirs of python-numpy
---
cmake/OpenCVDetectPython.cmake | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/cmake/OpenCVDetectPython.cmake b/cmake/OpenCVDetectPython.cmake
index 88a434185622..d4098ce8e60d 100644
--- a/cmake/OpenCVDetectPython.cmake
+++ b/cmake/OpenCVDetectPython.cmake
@@ -216,7 +216,7 @@ if(NOT ${found})
message(STATUS " PYTHON3_NUMPY_INCLUDE_DIRS")
else()
# Attempt to discover the NumPy include directory. If this succeeds, then build python API with NumPy
- execute_process(COMMAND "${_executable}" -c "import os; os.environ['DISTUTILS_USE_SDK']='1'; import numpy.distutils; print(os.pathsep.join(numpy.distutils.misc_util.get_numpy_include_dirs()))"
+ execute_process(COMMAND "${_executable}" -c "import numpy; print(numpy.get_include())"
RESULT_VARIABLE _numpy_process
OUTPUT_VARIABLE _numpy_include_dirs
OUTPUT_STRIP_TRAILING_WHITESPACE)

View File

@@ -1,116 +0,0 @@
From 694fe3e7d2297bbd223d1731af4f7fec65125e88 Mon Sep 17 00:00:00 2001
From: Maksim Shabunin <maksim.shabunin@gmail.com>
Date: Sun, 24 Jan 2021 04:12:40 +0300
Subject: [PATCH 1/2] core, gapi: supported build with oneTBB 2021
---
3rdparty/tbb/CMakeLists.txt | 2 +-
cmake/OpenCVDetectTBB.cmake | 9 +++++----
modules/core/src/parallel.cpp | 1 -
modules/gapi/src/executor/gtbbexecutor.cpp | 6 ++++--
modules/gapi/src/executor/gtbbexecutor.hpp | 7 ++++++-
.../gapi/test/executor/gtbbexecutor_internal_tests.cpp | 10 ++++++++--
6 files changed, 24 insertions(+), 11 deletions(-)
Index: opencv-3.4.16/3rdparty/tbb/CMakeLists.txt
===================================================================
--- opencv-3.4.16.orig/3rdparty/tbb/CMakeLists.txt
+++ opencv-3.4.16/3rdparty/tbb/CMakeLists.txt
@@ -170,4 +170,4 @@ ocv_install_target(tbb EXPORT OpenCVModu
ocv_install_3rdparty_licenses(tbb "${tbb_src_dir}/LICENSE" "${tbb_src_dir}/README")
-ocv_tbb_read_version("${tbb_src_dir}/include")
+ocv_tbb_read_version("${tbb_src_dir}/include" tbb)
Index: opencv-3.4.16/cmake/OpenCVDetectTBB.cmake
===================================================================
--- opencv-3.4.16.orig/cmake/OpenCVDetectTBB.cmake
+++ opencv-3.4.16/cmake/OpenCVDetectTBB.cmake
@@ -19,7 +19,7 @@
# - "tbb" target exists and added to OPENCV_LINKER_LIBS
function(ocv_tbb_cmake_guess _found)
- find_package(TBB QUIET COMPONENTS tbb PATHS "$ENV{TBBROOT}/cmake")
+ find_package(TBB QUIET COMPONENTS tbb PATHS "$ENV{TBBROOT}/cmake" "$ENV{TBBROOT}/lib/cmake/tbb")
if(TBB_FOUND)
if(NOT TARGET TBB::tbb)
message(WARNING "No TBB::tbb target found!")
@@ -28,11 +28,11 @@ function(ocv_tbb_cmake_guess _found)
get_target_property(_lib TBB::tbb IMPORTED_LOCATION_RELEASE)
message(STATUS "Found TBB (cmake): ${_lib}")
get_target_property(_inc TBB::tbb INTERFACE_INCLUDE_DIRECTORIES)
- ocv_tbb_read_version("${_inc}")
add_library(tbb INTERFACE IMPORTED)
set_target_properties(tbb PROPERTIES
INTERFACE_LINK_LIBRARIES TBB::tbb
)
+ ocv_tbb_read_version("${_inc}" tbb)
set(${_found} TRUE PARENT_SCOPE)
endif()
endfunction()
@@ -66,7 +66,6 @@ function(ocv_tbb_env_guess _found)
find_library(TBB_ENV_LIB_DEBUG NAMES "tbb_debug")
if (TBB_ENV_INCLUDE AND (TBB_ENV_LIB OR TBB_ENV_LIB_DEBUG))
ocv_tbb_env_verify()
- ocv_tbb_read_version("${TBB_ENV_INCLUDE}")
add_library(tbb UNKNOWN IMPORTED)
set_target_properties(tbb PROPERTIES
IMPORTED_LOCATION "${TBB_ENV_LIB}"
@@ -82,12 +81,14 @@ function(ocv_tbb_env_guess _found)
get_filename_component(_dir "${TBB_ENV_LIB}" DIRECTORY)
set_target_properties(tbb PROPERTIES INTERFACE_LINK_LIBRARIES "-L${_dir}")
endif()
+ ocv_tbb_read_version("${TBB_ENV_INCLUDE}" tbb)
message(STATUS "Found TBB (env): ${TBB_ENV_LIB}")
set(${_found} TRUE PARENT_SCOPE)
endif()
endfunction()
-function(ocv_tbb_read_version _path)
+function(ocv_tbb_read_version _path _tgt)
+ find_file(TBB_VER_FILE oneapi/tbb/version.h "${_path}" NO_DEFAULT_PATH CMAKE_FIND_ROOT_PATH_BOTH)
find_file(TBB_VER_FILE tbb/tbb_stddef.h "${_path}" NO_DEFAULT_PATH CMAKE_FIND_ROOT_PATH_BOTH)
ocv_parse_header("${TBB_VER_FILE}" TBB_VERSION_LINES TBB_VERSION_MAJOR TBB_VERSION_MINOR TBB_INTERFACE_VERSION CACHE)
endfunction()
Index: opencv-3.4.16/modules/core/src/parallel.cpp
===================================================================
--- opencv-3.4.16.orig/modules/core/src/parallel.cpp
+++ opencv-3.4.16/modules/core/src/parallel.cpp
@@ -101,7 +101,6 @@
#endif
#include "tbb/tbb.h"
#include "tbb/task.h"
- #include "tbb/tbb_stddef.h"
#if TBB_INTERFACE_VERSION >= 8000
#include "tbb/task_arena.h"
#endif
Index: opencv-3.4.16/cmake/OpenCVFindMKL.cmake
===================================================================
--- opencv-3.4.16.orig/cmake/OpenCVFindMKL.cmake
+++ opencv-3.4.16/cmake/OpenCVFindMKL.cmake
@@ -118,16 +118,10 @@ if(MKL_USE_SINGLE_DYNAMIC_LIBRARY AND NO
elseif(NOT (MKL_VERSION_STR VERSION_LESS "11.3.0"))
- foreach(MKL_ARCH ${MKL_ARCH_LIST})
- list(APPEND mkl_lib_find_paths
- ${MKL_ROOT_DIR}/../tbb/lib/${MKL_ARCH}
- )
- endforeach()
-
set(mkl_lib_list "mkl_intel_${MKL_ARCH_SUFFIX}")
if(MKL_WITH_TBB)
- list(APPEND mkl_lib_list mkl_tbb_thread tbb)
+ list(APPEND mkl_lib_list mkl_tbb_thread)
elseif(MKL_WITH_OPENMP)
if(MSVC)
list(APPEND mkl_lib_list mkl_intel_thread libiomp5md)
@@ -155,6 +149,7 @@ if(NOT MKL_LIBRARIES)
endif()
list(APPEND MKL_LIBRARIES ${${lib_var_name}})
endforeach()
+ list(APPEND MKL_LIBRARIES ${OPENCV_EXTRA_MKL_LIBRARIES})
endif()
message(STATUS "Found MKL ${MKL_VERSION_STR} at: ${MKL_ROOT_DIR}")

View File

@@ -1,3 +1,33 @@
-------------------------------------------------------------------
Wed Aug 6 12:09:57 UTC 2025 - Hillwood Yang <hillwood@opensuse.org>
- Add opencv-ppc64le-power9.patch, fix missing vec_cvfo on POWER9 due to
unavailable VSX float64 conversion
-------------------------------------------------------------------
Wed May 7 10:02:57 UTC 2025 - Simon Lees <sflees@suse.de>
- export CMAKE_POLICY_VERSION_MINIMUM="3.5" to ignore cmakes
minimum version warnings
-------------------------------------------------------------------
Tue Mar 11 12:29:00 UTC 2025 - Atri Bhattacharya <badshah400@gmail.com>
- Add opencv3-drop-numpy-distutils.patch: drop use of
numpy-distutils to determine numpy include dirs in cmake;
upstream commit to 4.x branch.
-------------------------------------------------------------------
Mon Jan 27 10:14:51 UTC 2025 - Bjørn Lie <bjorn.lie@gmail.com>
- Update to 3.4.20:
* Bugfixes, see
https://github.com/opencv/opencv/wiki/ChangeLog#version3420
* Various bugfixes backported from 4.7 branch see
https://github.com/opencv/opencv/compare/3.4.19...3.4.20
- Drop opencv3-pr19384-tbb2021.patch: Fixed upstream.
- Rebase/refresh opencv-build-compare.patch with quilt.
-------------------------------------------------------------------
Tue Apr 18 19:59:43 UTC 2023 - Dirk Müller <dmueller@suse.com>

View File

@@ -1,7 +1,7 @@
#
# spec file for package opencv3
#
# Copyright (c) 2023 SUSE LLC
# Copyright (c) 2025 SUSE LLC and contributors
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
@@ -35,7 +35,7 @@
%bcond_without python3
%bcond_without openblas
Name: opencv3
Version: 3.4.19
Version: 3.4.20
Release: 0
Summary: Collection of algorithms for computer vision
# GPL-2.0 AND Apache-2.0 files are in 3rdparty/ittnotify which is not build
@@ -45,10 +45,13 @@ URL: https://opencv.org/
Source0: https://github.com/opencv/opencv/archive/%{version}.tar.gz#/%{srcname}-%{version}.tar.gz
# This is the FACE module from the opencv_contrib package. Packaged separately to prevent too much unstable modules
Source1: https://github.com/opencv/opencv_contrib/archive/%{version}.tar.gz#/opencv_contrib-%{version}.tar.gz
# PATCH-FIX-UPSTREAM opencv3-pr19384-tbb2021.patch -- backport tbb 2021 support to opencv3, https://github.com/opencv/opencv/pull/19384
Patch0: opencv3-pr19384-tbb2021.patch
# PATCH-FIX-OPENSUSE opencv-build-compare.patch -- avoid republish if some random external version number changes
Patch1: opencv-build-compare.patch
# PATCH-FIX-UPSTREAM
Patch2: https://github.com/opencv/opencv/commit/00ca8f455e6a5588d905e3a0b268f18ee3fda5dd.patch#/opencv3-drop-numpy-distutils.patch
# PATCH-FIX-UPSTREAM opencv-ppc64le-power9.patch hillwood@opensuse.org - Fix missing vec_cvfo on POWER9 due to unavailable VSX float64 conversion
# https://github.com/opencv/opencv/pull/27633
Patch3: opencv-ppc64le-power9.patch
BuildRequires: cmake
BuildRequires: fdupes
BuildRequires: libeigen3-devel
@@ -180,6 +183,9 @@ cp opencv_contrib-%{version}/LICENSE LICENSE.contrib
rm -f doc/packaging.txt
%build
# Remove cmake4 error due to not setting
# min cmake version - sflees.de
export CMAKE_POLICY_VERSION_MINIMUM=3.5
# 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

View File

@@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:4e7426f1d0f8dffafa5fe70b72ab33997d0055c7804d7d2760c7ff0a153efb38
size 53792913

View File

@@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:b0bb3fa7ae4ac00926b83d4d95c6500c2f7af542f8ec78d0f01b2961a690d5dc
size 53793395