diff --git a/.gitignore b/.gitignore index 84a7467..d576766 100644 --- a/.gitignore +++ b/.gitignore @@ -14,3 +14,11 @@ /opencv_contrib-clean-4.5.5.tar.gz /opencv-clean-4.6.0.tar.gz /opencv_contrib-clean-4.6.0.tar.gz +/opencv-clean-4.7.0.tar.gz +/opencv_contrib-clean-4.7.0.tar.gz +/opencv-clean-4.10.0.tar.gz +/opencv_contrib-clean-4.10.0.tar.gz +/opencv-clean-4.11.0.tar.gz +/opencv_contrib-clean-4.11.0.tar.gz +/opencv_contrib-clean-4.12.0.tar.gz +/opencv-clean-4.12.0.tar.gz diff --git a/mingw-opencv.spec b/mingw-opencv.spec index c954b09..2897a99 100644 --- a/mingw-opencv.spec +++ b/mingw-opencv.spec @@ -3,12 +3,12 @@ %global pkgname opencv Name: mingw-%{pkgname} -Version: 4.6.0 +Version: 4.12.0 Release: 2%{?dist} Summary: MinGW Windows OpenCV library BuildArch: noarch -License: BSD +License: BSD-3-Clause AND Apache-2.0 AND ISC URL: https://opencv.org # RUN opencv-clean.sh TO PREPARE TARBALLS FOR FEDORA # @@ -23,8 +23,8 @@ Source2: %{pkgname}-clean.sh Patch0: opencv_unbundle.patch # Pass -mbig-obj to linker when linking python module, to prevent "too many sections" failure Patch1: opencv_bigobj.patch -# Fix missing -lgst_audio, -lopengl32 -#Patch2: opencv_mingw.patch +# Fix CV_CheckGlError calling undefined function checkError if _DEBUG is not defined +Patch2: opencv-fix-build.patch BuildRequires: make @@ -35,6 +35,7 @@ BuildRequires: protobuf-compiler BuildRequires: mingw32-filesystem >= 102 BuildRequires: mingw32-gcc-c++ BuildRequires: mingw32-eigen3 +# BuildRequires: mingw32-flatbuffers BuildRequires: mingw32-freetype BuildRequires: mingw32-gdal BuildRequires: mingw32-gstreamer1 @@ -60,6 +61,7 @@ BuildRequires: mingw32-zlib BuildRequires: mingw64-filesystem >= 102 BuildRequires: mingw64-gcc-c++ BuildRequires: mingw64-eigen3 +# BuildRequires: mingw64-flatbuffers BuildRequires: mingw64-freetype BuildRequires: mingw64-gdal BuildRequires: mingw64-gstreamer1 @@ -140,11 +142,13 @@ MinGW Windows OpenCV library tools. %prep %autosetup -p1 -n %{pkgname}-%{version} -a1 -# we don't use pre-built contribs except quirc +# we don't use pre-built contribs except quirc and flatbuffers mv 3rdparty/quirc/ . +mv 3rdparty/flatbuffers/ . rm -r 3rdparty/ mkdir 3rdparty/ mv quirc/ 3rdparty/ +mv flatbuffers/ 3rdparty/ %build @@ -183,7 +187,8 @@ MINGW64_CMAKE_ARGS="\ -DBUILD_TESTS=OFF \ -DBUILD_PROTOBUF=OFF \ -DPROTOBUF_UPDATE_FILES=ON \ - -DBUILD_opencv_rgbd=OFF + -DBUILD_opencv_rgbd=OFF \ + -DWITH_OBSENSOR=OFF %mingw_make_build @@ -204,35 +209,113 @@ rm -f %{buildroot}%{mingw64_prefix}/{LICENSE,setup_vars_opencv4.cmd} %files -n mingw32-%{pkgname} %license install_licenses/* -%{mingw32_bindir}/libopencv_*460.dll +%{mingw32_bindir}/libopencv_*4120.dll %{mingw32_includedir}/opencv4/ -%{mingw32_libdir}/libopencv_*460.dll.a +%{mingw32_libdir}/libopencv_*4120.dll.a %{mingw32_libdir}/cmake/OpenCV/ %{mingw32_datadir}/opencv4 %files -n mingw32-python3-%{pkgname} -%{mingw32_python3_sitearch}/cv2-cpython-%{mingw32_python3_version_nodots}.dll +%{mingw32_python3_sitearch}/cv2.cpython-%{mingw32_python3_version_nodots}.dll %files -n mingw32-%{pkgname}-tools %{mingw32_bindir}/*.exe %files -n mingw64-%{pkgname} %license install_licenses/* -%{mingw64_bindir}/libopencv_*460.dll +%{mingw64_bindir}/libopencv_*4120.dll %{mingw64_includedir}/opencv4/ -%{mingw64_libdir}/libopencv_*460.dll.a +%{mingw64_libdir}/libopencv_*4120.dll.a %{mingw64_libdir}/cmake/OpenCV/ %{mingw64_datadir}/opencv4 %files -n mingw64-python3-%{pkgname} -%{mingw64_python3_sitearch}/cv2-cpython-%{mingw64_python3_version_nodots}.dll +%{mingw64_python3_sitearch}/cv2.cpython-%{mingw64_python3_version_nodots}.dll %files -n mingw64-%{pkgname}-tools %{mingw64_bindir}/*.exe %changelog +* Sun Jan 04 2026 Sandro Mani - 4.12.0-2 +- Rebuild (mingw-openexr) + +* Sat Dec 13 2025 Sandro Mani - 4.12.0-1 +- Update to 4.12.0 + +* Mon Dec 08 2025 Sandro Mani - 4.11.0-7 +- Rebuild (libtiff) + +* Sun Nov 23 2025 Sandro Mani - 4.11.0-6 +- Rebuild (gdal) + +* Fri Aug 01 2025 Sandro Mani - 4.11.0-5 +- Rebuild (gdal) + +* Wed Jul 30 2025 Sandro Mani - 4.11.0-4 +- Backport fix for CVE-2025-53644 + +* Wed Jul 30 2025 Sandro Mani - 4.11.0-3 +- Rebuild (gdal) + +* Thu Jul 24 2025 Fedora Release Engineering - 4.11.0-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_43_Mass_Rebuild + +* Tue Feb 11 2025 Sandro Mani - 4.11.0-1 +- Update to 4.11.0 + +* Fri Jan 17 2025 Fedora Release Engineering - 4.10.0-5 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild + +* Mon Nov 18 2024 Sandro Mani - 4.10.0-4 +- Rebuild (openexr) + +* Thu Nov 14 2024 Sandro Mani - 4.10.0-3 +- Rebuild (openexr) + +* Sat Nov 09 2024 Sandro Mani - 4.10.0-2 +- Rebuild (gdal) + +* Sat Jul 27 2024 Sandro Mani - 4.10.0-1 +- Update to 4.10.0 + +* Thu Jul 18 2024 Fedora Release Engineering - 4.7.0-10 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild + +* Tue Jun 11 2024 Sandro Mani - 4.7.0-9 +- Rebuild (openexr) + +* Tue May 14 2024 Sandro Mani - 4.7.0-8 +- Rebuild (gdal) + +* Thu Jan 25 2024 Fedora Release Engineering - 4.7.0-7 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild + +* Sun Jan 21 2024 Fedora Release Engineering - 4.7.0-6 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild + +* Wed Nov 15 2023 Sandro Mani - 4.7.0-5 +- Rebuild (gdal) + +* Thu Jul 20 2023 Fedora Release Engineering - 4.7.0-4 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild + +* Thu May 11 2023 Sandro Mani - 4.7.0-3 +- Rebuild (gdal) + +* Thu Jan 19 2023 Fedora Release Engineering - 4.7.0-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild + +* Tue Jan 17 2023 Sandro Mani - 4.7.0-1 +- Update to 4.7.0 + +* Sat Nov 12 2022 Sandro Mani - 4.6.0-4 +- Rebuild (gdal) + +* Wed Oct 19 2022 Sandro Mani - 4.6.0-3 +- Rebuild (python-3.11) + * Thu Jul 21 2022 Fedora Release Engineering - 4.6.0-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild diff --git a/opencv-fix-build.patch b/opencv-fix-build.patch new file mode 100644 index 0000000..67047b1 --- /dev/null +++ b/opencv-fix-build.patch @@ -0,0 +1,17 @@ +diff -rupN opencv-4.12.0/modules/core/src/opengl.cpp opencv-4.12.0-new/modules/core/src/opengl.cpp +--- opencv-4.12.0/modules/core/src/opengl.cpp 2025-07-02 09:54:13.000000000 +0200 ++++ opencv-4.12.0-new/modules/core/src/opengl.cpp 2025-12-13 11:37:02.935529963 +0100 +@@ -103,10 +103,12 @@ inline static bool checkError(const char + } + return true; + } ++#define CV_CheckGlError() CV_DbgAssert( (checkError(__FILE__, __LINE__, CV_Func)) ) ++#else ++#define CV_CheckGlError() + #endif // HAVE_OPENGL + } // namespace + +-#define CV_CheckGlError() CV_DbgAssert( (checkError(__FILE__, __LINE__, CV_Func)) ) + + #ifdef HAVE_OPENGL + namespace diff --git a/opencv_bigobj.patch b/opencv_bigobj.patch index 12585f3..3b2b139 100644 --- a/opencv_bigobj.patch +++ b/opencv_bigobj.patch @@ -1,6 +1,6 @@ -diff -rupN --no-dereference opencv-4.6.0/modules/python/common.cmake opencv-4.6.0-new/modules/python/common.cmake ---- opencv-4.6.0/modules/python/common.cmake 2022-06-05 17:32:44.000000000 +0200 -+++ opencv-4.6.0-new/modules/python/common.cmake 2022-06-28 13:10:22.358006923 +0200 +diff -rupN --no-dereference opencv-4.12.0/modules/python/common.cmake opencv-4.12.0-new/modules/python/common.cmake +--- opencv-4.12.0/modules/python/common.cmake 2025-07-02 09:54:13.000000000 +0200 ++++ opencv-4.12.0-new/modules/python/common.cmake 2025-12-13 11:14:05.823873870 +0100 @@ -19,6 +19,11 @@ if(NOT WIN32 AND NOT APPLE AND NOT OPENC set(CMAKE_MODULE_LINKER_FLAGS "${CMAKE_MODULE_LINKER_FLAGS} -Wl,--exclude-libs=ALL") endif() diff --git a/opencv_unbundle.patch b/opencv_unbundle.patch index cb89f1e..b008fc2 100644 --- a/opencv_unbundle.patch +++ b/opencv_unbundle.patch @@ -1,7 +1,7 @@ -diff -rupN --no-dereference opencv-4.6.0/CMakeLists.txt opencv-4.6.0-new/CMakeLists.txt ---- opencv-4.6.0/CMakeLists.txt 2022-06-05 17:32:44.000000000 +0200 -+++ opencv-4.6.0-new/CMakeLists.txt 2022-06-28 13:10:21.922006920 +0200 -@@ -217,14 +217,14 @@ OCV_OPTION(OPENCV_ENABLE_NONFREE "Enable +diff -rupN --no-dereference opencv-4.12.0/CMakeLists.txt opencv-4.12.0-new/CMakeLists.txt +--- opencv-4.12.0/CMakeLists.txt 2025-07-02 09:54:13.000000000 +0200 ++++ opencv-4.12.0-new/CMakeLists.txt 2025-12-13 11:14:05.364928138 +0100 +@@ -197,14 +197,14 @@ OCV_OPTION(OPENCV_ENABLE_NONFREE "Enable # 3rd party libs OCV_OPTION(OPENCV_FORCE_3RDPARTY_BUILD "Force using 3rdparty code from source" OFF) diff --git a/sources b/sources index 8360c85..c7fc031 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -SHA512 (opencv-clean-4.6.0.tar.gz) = 8c146fac6b1a8c3461564edb63b49757808efb732647432cadb645c61d4087fb4327b23e2074f1031ec57ac05462e34a3ec01d1341fcb01705a59fb31ce61fd8 -SHA512 (opencv_contrib-clean-4.6.0.tar.gz) = 64c1d9a391edba22edf34ed4a1c3ee2def22eabb41cd2535de48d995b2009068894ac7b5a30966073bab81756f2ce177c560f450fae48f3edcc09aebeed8858e +SHA512 (opencv_contrib-clean-4.12.0.tar.gz) = 2081ea87be342a09c272c0a0e6a7369ada115d4abaf416a910905800c5b1a00a239ad6c0174b7db71462111ae5ee28d5ebecaea8777f7619bdeff9c37b546000 +SHA512 (opencv-clean-4.12.0.tar.gz) = 59dc9230a9a63539d145571b97aa3f3f48f49bf399f9d50d1e1cda8bb5ed5708f256efa49772a6976ca33d8c085d93bacd0e3773cf4225a0201a52602520c9fd