Skip to content

Commit 9af6e32

Browse files
committed
b
1 parent 6018b54 commit 9af6e32

2 files changed

Lines changed: 67 additions & 17 deletions

File tree

.github/workflows/release.yml

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -221,9 +221,7 @@ jobs:
221221
patch -p1 -i ../patches/opencv-${{ env.opencv-version }}-drawing-mono-font.patch
222222
rm -rf modules/highgui
223223
cp -r ../highgui modules/
224-
mv 3rdparty/kleidicv .
225224
rm -rf 3rdparty/*
226-
mv kleidicv 3rdparty/
227225
rm -rf apps data doc samples platforms
228226
rm -rf modules/java
229227
rm -rf modules/js

patches/opencv-4.12.0-no-rtti.patch

Lines changed: 67 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
diff -Nuarp opencv-4.12.0.orig/modules/core/include/opencv2/core/bindings_utils.hpp opencv-4.12.0/modules/core/include/opencv2/core/bindings_utils.hpp
22
--- opencv-4.12.0.orig/modules/core/include/opencv2/core/bindings_utils.hpp 2025-07-13 20:34:53.372129425 +0800
3-
+++ opencv-4.12.0/modules/core/include/opencv2/core/bindings_utils.hpp 2025-07-13 20:39:39.501062111 +0800
3+
+++ opencv-4.12.0/modules/core/include/opencv2/core/bindings_utils.hpp 2025-07-13 21:38:10.818186252 +0800
44
@@ -202,12 +202,6 @@ void generateVectorOfMat(size_t len, int
55
}
66

@@ -31,7 +31,7 @@ diff -Nuarp opencv-4.12.0.orig/modules/core/include/opencv2/core/bindings_utils.
3131

3232
diff -Nuarp opencv-4.12.0.orig/modules/core/src/async.cpp opencv-4.12.0/modules/core/src/async.cpp
3333
--- opencv-4.12.0.orig/modules/core/src/async.cpp 2025-07-13 20:39:13.959090096 +0800
34-
+++ opencv-4.12.0/modules/core/src/async.cpp 2025-07-13 20:39:39.501198699 +0800
34+
+++ opencv-4.12.0/modules/core/src/async.cpp 2025-07-13 21:38:10.818321197 +0800
3535
@@ -100,7 +100,6 @@ struct AsyncArray::Impl
3636
if (has_exception)
3737
{
@@ -50,7 +50,7 @@ diff -Nuarp opencv-4.12.0.orig/modules/core/src/async.cpp opencv-4.12.0/modules/
5050
return false;
5151
diff -Nuarp opencv-4.12.0.orig/modules/core/src/bindings_utils.cpp opencv-4.12.0/modules/core/src/bindings_utils.cpp
5252
--- opencv-4.12.0.orig/modules/core/src/bindings_utils.cpp 2025-07-13 20:34:53.534086711 +0800
53-
+++ opencv-4.12.0/modules/core/src/bindings_utils.cpp 2025-07-13 20:40:48.602950223 +0800
53+
+++ opencv-4.12.0/modules/core/src/bindings_utils.cpp 2025-07-13 21:38:10.818378715 +0800
5454
@@ -22,7 +22,7 @@ String dumpInputArray(InputArray argumen
5555
return "InputArray: noArray()";
5656
std::ostringstream ss;
@@ -149,7 +149,7 @@ diff -Nuarp opencv-4.12.0.orig/modules/core/src/bindings_utils.cpp opencv-4.12.0
149149

150150
diff -Nuarp opencv-4.12.0.orig/modules/core/src/command_line_parser.cpp opencv-4.12.0/modules/core/src/command_line_parser.cpp
151151
--- opencv-4.12.0.orig/modules/core/src/command_line_parser.cpp 2025-07-13 20:34:53.537230759 +0800
152-
+++ opencv-4.12.0/modules/core/src/command_line_parser.cpp 2025-07-13 20:39:39.501369321 +0800
152+
+++ opencv-4.12.0/modules/core/src/command_line_parser.cpp 2025-07-13 21:38:10.818428600 +0800
153153
@@ -119,7 +119,6 @@ static void from_str(const String& str,
154154

155155
void CommandLineParser::getByName(const String& name, bool space_delete, Param type, void* dst) const
@@ -246,9 +246,61 @@ diff -Nuarp opencv-4.12.0.orig/modules/core/src/command_line_parser.cpp opencv-4
246246
}
247247

248248
return vec;
249+
diff -Nuarp opencv-4.12.0.orig/modules/core/src/dxt.cpp opencv-4.12.0/modules/core/src/dxt.cpp
250+
--- opencv-4.12.0.orig/modules/core/src/dxt.cpp 2025-07-13 20:39:13.959381686 +0800
251+
+++ opencv-4.12.0/modules/core/src/dxt.cpp 2025-07-13 21:37:40.157743062 +0800
252+
@@ -826,6 +826,30 @@ struct OcvDftOptions {
253+
}
254+
};
255+
256+
+template<typename T>
257+
+struct HALDFTCaller;
258+
+
259+
+template<>
260+
+struct HALDFTCaller<float> {
261+
+ static void call(const OcvDftOptions& c, const Complex<float>* src, Complex<float>* dst) {
262+
+ CALL_HAL(dft, cv_hal_dft, reinterpret_cast<const uchar*>(src), reinterpret_cast<uchar*>(dst), CV_32F,
263+
+ c.nf, c.factors, c.scale, c.itab, c.wave, c.tab_size, c.n, c.isInverse, c.noPermute);
264+
+ }
265+
+};
266+
+
267+
+template<>
268+
+struct HALDFTCaller<double> {
269+
+ static void call(const OcvDftOptions& c, const Complex<double>* src, Complex<double>* dst) {
270+
+ CALL_HAL(dft, cv_hal_dft, reinterpret_cast<const uchar*>(src), reinterpret_cast<uchar*>(dst), CV_64F,
271+
+ c.nf, c.factors, c.scale, c.itab, c.wave, c.tab_size, c.n, c.isInverse, c.noPermute);
272+
+ }
273+
+};
274+
+
275+
+template<typename T>
276+
+static void HALDFT(const OcvDftOptions& c, const Complex<T>* src, Complex<T>* dst) {
277+
+ HALDFTCaller<T>::call(c, src, dst);
278+
+}
279+
+
280+
// mixed-radix complex discrete Fourier transform: double-precision version
281+
template<typename T> static void
282+
DFT(const OcvDftOptions & c, const Complex<T>* src, Complex<T>* dst)
283+
@@ -841,16 +865,7 @@ DFT(const OcvDftOptions & c, const Compl
284+
Complex<T> t;
285+
T scale = (T)c.scale;
286+
287+
- if(typeid(T) == typeid(float))
288+
- {
289+
- CALL_HAL(dft, cv_hal_dft, reinterpret_cast<const uchar*>(src), reinterpret_cast<uchar*>(dst), CV_32F,
290+
- c.nf, c.factors, c.scale, c.itab, c.wave, c.tab_size, c.n, c.isInverse, c.noPermute);
291+
- }
292+
- if(typeid(T) == typeid(double))
293+
- {
294+
- CALL_HAL(dft, cv_hal_dft, reinterpret_cast<const uchar*>(src), reinterpret_cast<uchar*>(dst), CV_64F,
295+
- c.nf, c.factors, c.scale, c.itab, c.wave, c.tab_size, c.n, c.isInverse, c.noPermute);
296+
- }
297+
+ HALDFT(c, src, dst);
298+
299+
if( c.useIpp )
300+
{
249301
diff -Nuarp opencv-4.12.0.orig/modules/core/src/glob.cpp opencv-4.12.0/modules/core/src/glob.cpp
250302
--- opencv-4.12.0.orig/modules/core/src/glob.cpp 2025-07-13 20:34:53.536156931 +0800
251-
+++ opencv-4.12.0/modules/core/src/glob.cpp 2025-07-13 20:39:39.501426119 +0800
303+
+++ opencv-4.12.0/modules/core/src/glob.cpp 2025-07-13 21:38:10.818490446 +0800
252304
@@ -243,7 +243,6 @@ static void glob_rec(const cv::String& d
253305
if ((dir = opendir (directory.c_str())) != 0)
254306
{
@@ -271,7 +323,7 @@ diff -Nuarp opencv-4.12.0.orig/modules/core/src/glob.cpp opencv-4.12.0/modules/c
271323
else
272324
diff -Nuarp opencv-4.12.0.orig/modules/core/src/matrix.cpp opencv-4.12.0/modules/core/src/matrix.cpp
273325
--- opencv-4.12.0.orig/modules/core/src/matrix.cpp 2025-07-13 20:34:53.545189782 +0800
274-
+++ opencv-4.12.0/modules/core/src/matrix.cpp 2025-07-13 20:39:39.501490560 +0800
326+
+++ opencv-4.12.0/modules/core/src/matrix.cpp 2025-07-13 21:38:10.818552694 +0800
275327
@@ -694,20 +694,11 @@ void Mat::create(int d, const int* _size
276328
MatAllocator *a = allocator, *a0 = getDefaultAllocator();
277329
if(!a)
@@ -315,7 +367,7 @@ diff -Nuarp opencv-4.12.0.orig/modules/core/src/matrix.cpp opencv-4.12.0/modules
315367

316368
diff -Nuarp opencv-4.12.0.orig/modules/core/src/parallel/parallel.cpp opencv-4.12.0/modules/core/src/parallel/parallel.cpp
317369
--- opencv-4.12.0.orig/modules/core/src/parallel/parallel.cpp 2025-07-13 20:34:53.506481139 +0800
318-
+++ opencv-4.12.0/modules/core/src/parallel/parallel.cpp 2025-07-13 20:39:39.501555463 +0800
370+
+++ opencv-4.12.0/modules/core/src/parallel/parallel.cpp 2025-07-13 21:38:10.818617917 +0800
319371
@@ -60,7 +60,6 @@ std::shared_ptr<ParallelForAPI> createPa
320372
}
321373
isKnown = true;
@@ -341,7 +393,7 @@ diff -Nuarp opencv-4.12.0.orig/modules/core/src/parallel/parallel.cpp opencv-4.1
341393
{
342394
diff -Nuarp opencv-4.12.0.orig/modules/core/src/parallel/plugin_parallel_wrapper.impl.hpp opencv-4.12.0/modules/core/src/parallel/plugin_parallel_wrapper.impl.hpp
343395
--- opencv-4.12.0.orig/modules/core/src/parallel/plugin_parallel_wrapper.impl.hpp 2025-07-13 20:34:53.506007655 +0800
344-
+++ opencv-4.12.0/modules/core/src/parallel/plugin_parallel_wrapper.impl.hpp 2025-07-13 20:39:39.501592593 +0800
396+
+++ opencv-4.12.0/modules/core/src/parallel/plugin_parallel_wrapper.impl.hpp 2025-07-13 21:38:10.818654306 +0800
345397
@@ -155,15 +155,10 @@ protected:
346398
void initBackend()
347399
{
@@ -379,7 +431,7 @@ diff -Nuarp opencv-4.12.0.orig/modules/core/src/parallel/plugin_parallel_wrapper
379431

380432
diff -Nuarp opencv-4.12.0.orig/modules/core/src/parallel.cpp opencv-4.12.0/modules/core/src/parallel.cpp
381433
--- opencv-4.12.0.orig/modules/core/src/parallel.cpp 2025-07-13 20:34:53.534609328 +0800
382-
+++ opencv-4.12.0/modules/core/src/parallel.cpp 2025-07-13 20:39:39.501646595 +0800
434+
+++ opencv-4.12.0/modules/core/src/parallel.cpp 2025-07-13 21:38:10.818707437 +0800
383435
@@ -355,29 +355,9 @@ namespace {
384436
CV_TRACE_ARG_VALUE(range_end, "range.end", (int64)r.end);
385437
#endif
@@ -429,7 +481,7 @@ diff -Nuarp opencv-4.12.0.orig/modules/core/src/parallel.cpp opencv-4.12.0/modul
429481
{
430482
diff -Nuarp opencv-4.12.0.orig/modules/core/src/persistence.cpp opencv-4.12.0/modules/core/src/persistence.cpp
431483
--- opencv-4.12.0.orig/modules/core/src/persistence.cpp 2025-07-13 20:34:53.538606458 +0800
432-
+++ opencv-4.12.0/modules/core/src/persistence.cpp 2025-07-13 20:39:39.501753076 +0800
484+
+++ opencv-4.12.0/modules/core/src/persistence.cpp 2025-07-13 21:38:10.818819829 +0800
433485
@@ -758,7 +758,7 @@ bool FileStorage::Impl::open(const char
434486
strbufpos = bufOffset;
435487
bufofs = 0;
@@ -474,7 +526,7 @@ diff -Nuarp opencv-4.12.0.orig/modules/core/src/persistence.cpp opencv-4.12.0/mo
474526
bool FileStorage::isOpened() const { return p->is_opened; }
475527
diff -Nuarp opencv-4.12.0.orig/modules/core/src/system.cpp opencv-4.12.0/modules/core/src/system.cpp
476528
--- opencv-4.12.0.orig/modules/core/src/system.cpp 2025-07-13 20:34:53.503020142 +0800
477-
+++ opencv-4.12.0/modules/core/src/system.cpp 2025-07-13 20:39:39.501918218 +0800
529+
+++ opencv-4.12.0/modules/core/src/system.cpp 2025-07-13 21:38:10.818983909 +0800
478530
@@ -1272,7 +1272,6 @@ void error( const Exception& exc )
479531
*p = 0;
480532
}
@@ -536,7 +588,7 @@ diff -Nuarp opencv-4.12.0.orig/modules/core/src/system.cpp opencv-4.12.0/modules
536588

537589
diff -Nuarp opencv-4.12.0.orig/modules/core/src/umatrix.cpp opencv-4.12.0/modules/core/src/umatrix.cpp
538590
--- opencv-4.12.0.orig/modules/core/src/umatrix.cpp 2025-07-13 20:39:13.960069736 +0800
539-
+++ opencv-4.12.0/modules/core/src/umatrix.cpp 2025-07-13 20:39:39.502036522 +0800
591+
+++ opencv-4.12.0/modules/core/src/umatrix.cpp 2025-07-13 21:38:10.819101641 +0800
540592
@@ -594,14 +594,9 @@ UMat Mat::getUMat(AccessFlag accessFlags
541593
new_u->originalUMatData = u;
542594
}
@@ -617,7 +669,7 @@ diff -Nuarp opencv-4.12.0.orig/modules/core/src/umatrix.cpp opencv-4.12.0/module
617669
return Mat();
618670
diff -Nuarp opencv-4.12.0.orig/modules/core/src/utils/filesystem.cpp opencv-4.12.0/modules/core/src/utils/filesystem.cpp
619671
--- opencv-4.12.0.orig/modules/core/src/utils/filesystem.cpp 2025-07-13 20:34:53.528264934 +0800
620-
+++ opencv-4.12.0/modules/core/src/utils/filesystem.cpp 2025-07-13 20:39:39.502109289 +0800
672+
+++ opencv-4.12.0/modules/core/src/utils/filesystem.cpp 2025-07-13 21:38:10.819174299 +0800
621673
@@ -508,14 +508,9 @@ cv::String getCacheDirectory(const char*
622674
&& !utils::fs::isDirectory(default_cache_path))
623675
{
@@ -635,7 +687,7 @@ diff -Nuarp opencv-4.12.0.orig/modules/core/src/utils/filesystem.cpp opencv-4.12
635687
CV_LOG_WARNING(NULL, "Creating new OpenCV cache directory: " << default_cache_path);
636688
diff -Nuarp opencv-4.12.0.orig/modules/imgproc/src/contours.cpp opencv-4.12.0/modules/imgproc/src/contours.cpp
637689
--- opencv-4.12.0.orig/modules/imgproc/src/contours.cpp 2025-07-13 20:39:13.961175625 +0800
638-
+++ opencv-4.12.0/modules/imgproc/src/contours.cpp 2025-07-13 20:39:39.502182237 +0800
690+
+++ opencv-4.12.0/modules/imgproc/src/contours.cpp 2025-07-13 21:38:10.819246104 +0800
639691
@@ -1760,7 +1760,6 @@ cvFindContours_Impl( void* img, CvMemS
640692
}
641693
else
@@ -659,7 +711,7 @@ diff -Nuarp opencv-4.12.0.orig/modules/imgproc/src/contours.cpp opencv-4.12.0/mo
659711
}
660712
diff -Nuarp opencv-4.12.0.orig/modules/video/src/tracking/detail/tracking_feature.cpp opencv-4.12.0/modules/video/src/tracking/detail/tracking_feature.cpp
661713
--- opencv-4.12.0.orig/modules/video/src/tracking/detail/tracking_feature.cpp 2025-07-13 20:34:54.331668306 +0800
662-
+++ opencv-4.12.0/modules/video/src/tracking/detail/tracking_feature.cpp 2025-07-13 20:39:39.502266586 +0800
714+
+++ opencv-4.12.0/modules/video/src/tracking/detail/tracking_feature.cpp 2025-07-13 21:38:10.819330454 +0800
663715
@@ -107,15 +107,9 @@ void CvHaarEvaluator::generateFeatures(i
664716

665717
CvHaarEvaluator::FeatureHaar::FeatureHaar(Size patchSize)

0 commit comments

Comments
 (0)