@@ -160,7 +160,7 @@ jobs:
160160 zip -9 -r opencv-mobile-${{ env.opencv-version }}.zip opencv-mobile-${{ env.opencv-version }}
161161 - name : opencv4-source
162162 env :
163- opencv-version : 4.11 .0
163+ opencv-version : 4.12 .0
164164 run : |
165165 wget -q https://github.com/opencv/opencv/archive/${{ env.opencv-version }}.zip -O opencv-${{ env.opencv-version }}.zip
166166 unzip -q opencv-${{ env.opencv-version }}.zip
@@ -169,6 +169,8 @@ jobs:
169169 truncate -s 0 cmake/OpenCVFindLibsGrfmt.cmake
170170 rm -rf modules/gapi
171171
172+ truncate -s 0 cmake/platforms/OpenCV-Linux.cmake
173+
172174 rm modules/core/src/cuda_*
173175 rm modules/core/src/direct*
174176 rm modules/core/src/gl_*
@@ -219,9 +221,7 @@ jobs:
219221 patch -p1 -i ../patches/opencv-${{ env.opencv-version }}-drawing-mono-font.patch
220222 rm -rf modules/highgui
221223 cp -r ../highgui modules/
222- mv 3rdparty/kleidicv .
223- rm -rf 3rdparty/*
224- mv kleidicv 3rdparty/
224+ rm -rf 3rdparty
225225 rm -rf apps data doc samples platforms
226226 rm -rf modules/java
227227 rm -rf modules/js
@@ -247,15 +247,15 @@ jobs:
247247 - name : upload-opencv4-source
248248 uses : actions/upload-artifact@v4
249249 with :
250- name : opencv-mobile-4.11 .0-source
251- path : opencv-mobile-4.11 .0.zip
250+ name : opencv-mobile-4.12 .0-source
251+ path : opencv-mobile-4.12 .0.zip
252252
253253 android :
254254 needs : [setup]
255255 runs-on : ubuntu-latest
256256 strategy :
257257 matrix :
258- opencv-version : [2.4.13.7, 3.4.20, 4.11 .0]
258+ opencv-version : [2.4.13.7, 3.4.20, 4.12 .0]
259259 env :
260260 COMMON_CMAKE_OPTIONS : |
261261 -DCMAKE_POLICY_DEFAULT_CMP0057=NEW \
@@ -357,7 +357,7 @@ jobs:
357357 runs-on : ubuntu-latest
358358 strategy :
359359 matrix :
360- opencv-version : [2.4.13.7, 3.4.20, 4.11 .0]
360+ opencv-version : [2.4.13.7, 3.4.20, 4.12 .0]
361361 env :
362362 OHOS_NDK_CMAKE : $GITHUB_WORKSPACE/ohos-sdk/linux/native/build-tools/cmake/bin/cmake
363363 COMMON_CMAKE_OPTIONS : |
@@ -418,7 +418,7 @@ jobs:
418418 if : matrix.opencv-version == '2.4.13.7' || matrix.opencv-version == '3.4.20'
419419 run : echo "OPENCV_SUBDIR=share/OpenCV" >> $GITHUB_ENV
420420 - name : set-opencv-dir
421- if : matrix.opencv-version == '4.11 .0'
421+ if : matrix.opencv-version == '4.12 .0'
422422 run : echo "OPENCV_SUBDIR=lib/cmake/opencv4" >> $GITHUB_ENV
423423 - name : test-armeabi-v7a
424424 run : |
@@ -452,7 +452,7 @@ jobs:
452452 runs-on : macos-13
453453 strategy :
454454 matrix :
455- opencv-version : [2.4.13.7, 3.4.20, 4.11 .0]
455+ opencv-version : [2.4.13.7, 3.4.20, 4.12 .0]
456456 env :
457457 COMMON_CMAKE_OPTIONS : |
458458 -DCMAKE_TOOLCHAIN_FILE=../../toolchains/ios.toolchain.cmake \
@@ -524,7 +524,7 @@ jobs:
524524 runs-on : macos-13
525525 strategy :
526526 matrix :
527- opencv-version : [2.4.13.7, 3.4.20, 4.11 .0]
527+ opencv-version : [2.4.13.7, 3.4.20, 4.12 .0]
528528 env :
529529 COMMON_CMAKE_OPTIONS : |
530530 -DCMAKE_TOOLCHAIN_FILE=../../toolchains/ios.toolchain.cmake \
@@ -606,7 +606,7 @@ jobs:
606606 runs-on : ubuntu-latest
607607 strategy :
608608 matrix :
609- opencv-version : [2.4.13.7, 3.4.20, 4.11 .0]
609+ opencv-version : [2.4.13.7, 3.4.20, 4.12 .0]
610610 env :
611611 COMMON_CMAKE_OPTIONS : |
612612 -DCMAKE_C_FLAGS="-fno-rtti -fno-exceptions" \
@@ -666,7 +666,7 @@ jobs:
666666 if : matrix.opencv-version == '2.4.13.7' || matrix.opencv-version == '3.4.20'
667667 run : echo "OPENCV_SUBDIR=share/OpenCV" >> $GITHUB_ENV
668668 - name : set-opencv-dir
669- if : matrix.opencv-version == '4.11 .0'
669+ if : matrix.opencv-version == '4.12 .0'
670670 run : echo "OPENCV_SUBDIR=lib/cmake/opencv4" >> $GITHUB_ENV
671671 - name : test-arm-linux-gnueabi
672672 run : |
@@ -700,7 +700,7 @@ jobs:
700700 runs-on : macos-13
701701 strategy :
702702 matrix :
703- opencv-version : [2.4.13.7, 3.4.20, 4.11 .0]
703+ opencv-version : [2.4.13.7, 3.4.20, 4.12 .0]
704704 env :
705705 COMMON_CMAKE_OPTIONS : |
706706 -DCMAKE_TOOLCHAIN_FILE=../../toolchains/ios.toolchain.cmake \
@@ -786,7 +786,7 @@ jobs:
786786 runs-on : macos-13
787787 strategy :
788788 matrix :
789- opencv-version : [2.4.13.7, 3.4.20, 4.11 .0]
789+ opencv-version : [2.4.13.7, 3.4.20, 4.12 .0]
790790 env :
791791 COMMON_CMAKE_OPTIONS : |
792792 -DCMAKE_TOOLCHAIN_FILE=../../toolchains/ios.toolchain.cmake \
@@ -868,7 +868,7 @@ jobs:
868868 runs-on : macos-13
869869 strategy :
870870 matrix :
871- opencv-version : [2.4.13.7, 3.4.20, 4.11 .0]
871+ opencv-version : [2.4.13.7, 3.4.20, 4.12 .0]
872872 env :
873873 COMMON_CMAKE_OPTIONS : |
874874 -DCMAKE_TOOLCHAIN_FILE=../../toolchains/ios.toolchain.cmake \
@@ -950,7 +950,7 @@ jobs:
950950 runs-on : macos-13
951951 strategy :
952952 matrix :
953- opencv-version : [2.4.13.7, 3.4.20, 4.11 .0]
953+ opencv-version : [2.4.13.7, 3.4.20, 4.12 .0]
954954 env :
955955 COMMON_CMAKE_OPTIONS : |
956956 -DCMAKE_TOOLCHAIN_FILE=../../toolchains/ios.toolchain.cmake \
@@ -1032,7 +1032,7 @@ jobs:
10321032 runs-on : macos-13
10331033 strategy :
10341034 matrix :
1035- opencv-version : [2.4.13.7, 3.4.20, 4.11 .0]
1035+ opencv-version : [2.4.13.7, 3.4.20, 4.12 .0]
10361036 env :
10371037 COMMON_CMAKE_OPTIONS : |
10381038 -DCMAKE_TOOLCHAIN_FILE=../../toolchains/ios.toolchain.cmake \
@@ -1114,7 +1114,7 @@ jobs:
11141114 runs-on : macos-13
11151115 strategy :
11161116 matrix :
1117- opencv-version : [2.4.13.7, 3.4.20, 4.11 .0]
1117+ opencv-version : [2.4.13.7, 3.4.20, 4.12 .0]
11181118 env :
11191119 COMMON_CMAKE_OPTIONS : |
11201120 -DCMAKE_TOOLCHAIN_FILE=../../toolchains/ios.toolchain.cmake \
@@ -1196,7 +1196,7 @@ jobs:
11961196 runs-on : macos-13
11971197 strategy :
11981198 matrix :
1199- opencv-version : [2.4.13.7, 3.4.20, 4.11 .0]
1199+ opencv-version : [2.4.13.7, 3.4.20, 4.12 .0]
12001200 env :
12011201 COMMON_CMAKE_OPTIONS : |
12021202 -DCMAKE_TOOLCHAIN_FILE=../../toolchains/ios.toolchain.cmake \
@@ -1268,7 +1268,7 @@ jobs:
12681268 runs-on : macos-13
12691269 strategy :
12701270 matrix :
1271- opencv-version : [2.4.13.7, 3.4.20, 4.11 .0]
1271+ opencv-version : [2.4.13.7, 3.4.20, 4.12 .0]
12721272 env :
12731273 COMMON_CMAKE_OPTIONS : |
12741274 -DCMAKE_TOOLCHAIN_FILE=../../toolchains/ios.toolchain.cmake \
@@ -1349,23 +1349,18 @@ jobs:
13491349 needs : [setup]
13501350 strategy :
13511351 matrix :
1352- opencv-version : [2.4.13.7, 3.4.20, 4.11 .0]
1352+ opencv-version : [2.4.13.7, 3.4.20, 4.12 .0]
13531353 os-compiler :
1354- - { msvc-version: vs2015, windows-version: 2019 , toolset-version: v140 }
1355- - { msvc-version: vs2017, windows-version: 2019 , toolset-version: v141 }
1356- - { msvc-version: vs2019, windows-version: 2019 , toolset-version: v142 }
1354+ - { msvc-version: vs2015, windows-version: 2022 , toolset-version: v140 }
1355+ - { msvc-version: vs2017, windows-version: 2022 , toolset-version: v141 }
1356+ - { msvc-version: vs2019, windows-version: 2022 , toolset-version: v142 }
13571357 - { msvc-version: vs2022, windows-version: 2022, toolset-version: v143 }
13581358 runs-on : windows-${{ matrix.os-compiler.windows-version }}
13591359 env :
13601360 UseMultiToolTask : true
13611361 COMMON_CMAKE_OPTIONS : -T ${{ matrix.os-compiler.toolset-version }},host=x64 -DCMAKE_INSTALL_PREFIX=install
13621362 steps :
13631363 - uses : actions/checkout@v4
1364- - name : patch-windows-sdk
1365- if : matrix.os-compiler.msvc-version == 'vs2022'
1366- run : |
1367- cd "C:\Program Files (x86)"
1368- & "C:\Program Files\Git\usr\bin\patch.exe" -p0 -i $env:GITHUB_WORKSPACE\fix-windows-sdk-26100-arm64-wchar.patch
13691364 - uses : actions/download-artifact@v4
13701365 with :
13711366 name : opencv-mobile-${{ matrix.opencv-version }}-source
@@ -1374,6 +1369,27 @@ jobs:
13741369 unzip -q opencv-mobile-${{ matrix.opencv-version }}.zip
13751370 echo "SOURCE_DIR=opencv-mobile-${{ matrix.opencv-version }}" >> $env:GITHUB_ENV
13761371 echo "PACKAGE_NAME=opencv-mobile-${{ matrix.opencv-version }}-windows-${{ matrix.os-compiler.msvc-version }}" >> $env:GITHUB_ENV
1372+
1373+ - name : Install and Setup VS 2015 (v140) Build Tools
1374+ if : matrix.os-compiler.msvc-version == 'vs2015'
1375+ run : |
1376+ $vs140Path = "C:/vs140_build_tools"
1377+ Invoke-WebRequest -Uri "https://aka.ms/vs/15/release/vs_buildtools.exe" -OutFile vs_buildtools.exe
1378+ Start-Process -FilePath "vs_buildtools.exe" -ArgumentList "--installPath `"$vs140Path`" --add Microsoft.VisualStudio.Workload.VCTools --add Microsoft.VisualStudio.Component.VC.140 --quiet --wait --norestart --nocache" -Wait
1379+ $vcvarsPath = (Get-ChildItem -Path $vs140Path -Filter "vcvars64.bat" -Recurse | Select-Object -First 1).FullName
1380+ $cmd = "`"$vcvarsPath`" && powershell -Command `"`$env:PATH;`$env:INCLUDE;`$env:LIB`""
1381+ $output = cmd.exe /c $cmd
1382+ $lines = $output -split "`r`n"
1383+ echo "PATH=$($lines[0]);$($env:PATH)" | Out-File -FilePath $env:GITHUB_ENV -Encoding utf8 -Append
1384+ echo "INCLUDE=$($lines[1])" | Out-File -FilePath $env:GITHUB_ENV -Encoding utf8 -Append
1385+ echo "LIB=$($lines[2])" | Out-File -FilePath $env:GITHUB_ENV -Encoding utf8 -Append
1386+
1387+ - name : Install VS 2017 (v141) Build Tools
1388+ if : matrix.os-compiler.msvc-version == 'vs2017'
1389+ run : |
1390+ $vsInstallPath = & "${env:ProgramFiles(x86)}\Microsoft Visual Studio\Installer\vswhere.exe" -latest -property installationPath
1391+ Start-Process -FilePath "${env:ProgramFiles(x86)}\Microsoft Visual Studio\Installer\vs_installer.exe" -ArgumentList "modify --installPath `"$vsInstallPath`" --add Microsoft.VisualStudio.Component.VC.v141.x86.x64 --quiet --norestart --nocache" -Wait
1392+
13771393 - name : build-x86
13781394 run : |
13791395 cd ${{ env.SOURCE_DIR }}
@@ -1393,7 +1409,7 @@ jobs:
13931409 run : |
13941410 cd ${{ env.SOURCE_DIR }}
13951411 mkdir build-arm64; cd build-arm64
1396- cmake ${{ env.COMMON_CMAKE_OPTIONS }} -A arm64 -DCMAKE_SYSTEM_NAME=Windows -DCMAKE_SYSTEM_PROCESSOR=ARM64 $(type ../options.txt) -DBUILD_opencv_world=OFF ..
1412+ cmake ${{ env.COMMON_CMAKE_OPTIONS }} -A arm64 -DCMAKE_SYSTEM_NAME=Windows -DCMAKE_SYSTEM_PROCESSOR=ARM64 -DCMAKE_WINDOWS_KITS_10_DIR="C:/Program Files (x86)/Windows Kits/10/Include/10.0.22621.0" -DCMAKE_SYSTEM_VERSION="10.0.22621.0" $(type ../options.txt) -DBUILD_opencv_world=OFF ..
13971413 cmake --build . --config Release -j 4
13981414 cmake --build . --config Release --target install
13991415 - name : package
@@ -1445,7 +1461,7 @@ jobs:
14451461 needs : [setup]
14461462 strategy :
14471463 matrix :
1448- opencv-version : [2.4.13.7, 3.4.20, 4.11 .0]
1464+ opencv-version : [2.4.13.7, 3.4.20, 4.12 .0]
14491465 os-ubuntu :
14501466 - { ubuntu-id: 2204, ubuntu-version: 22.04 }
14511467 - { ubuntu-id: 2404, ubuntu-version: 24.04 }
@@ -1480,7 +1496,7 @@ jobs:
14801496 if : matrix.opencv-version == '2.4.13.7' || matrix.opencv-version == '3.4.20'
14811497 run : echo "OPENCV_SUBDIR=share/OpenCV" >> $GITHUB_ENV
14821498 - name : set-opencv-dir
1483- if : matrix.opencv-version == '4.11 .0'
1499+ if : matrix.opencv-version == '4.12 .0'
14841500 run : echo "OPENCV_SUBDIR=lib/cmake/opencv4" >> $GITHUB_ENV
14851501 - name : test
14861502 run : |
@@ -1499,7 +1515,7 @@ jobs:
14991515 runs-on : ubuntu-latest
15001516 strategy :
15011517 matrix :
1502- opencv-version : [2.4.13.7, 3.4.20, 4.11 .0]
1518+ opencv-version : [2.4.13.7, 3.4.20, 4.12 .0]
15031519 env :
15041520 COMMON_CMAKE_OPTIONS : |
15051521 -DCMAKE_TOOLCHAIN_FILE=../emsdk/upstream/emscripten/cmake/Modules/Platform/Emscripten.cmake \
@@ -1585,7 +1601,7 @@ jobs:
15851601 if : matrix.opencv-version == '2.4.13.7' || matrix.opencv-version == '3.4.20'
15861602 run : echo "OPENCV_SUBDIR=share/OpenCV" >> $GITHUB_ENV
15871603 - name : set-opencv-dir
1588- if : matrix.opencv-version == '4.11 .0'
1604+ if : matrix.opencv-version == '4.12 .0'
15891605 run : echo "OPENCV_SUBDIR=lib/cmake/opencv4" >> $GITHUB_ENV
15901606 - name : test
15911607 run : |
@@ -1634,7 +1650,7 @@ jobs:
16341650 runs-on : macos-13
16351651 strategy :
16361652 matrix :
1637- opencv-version : [2.4.13.7, 3.4.20, 4.11 .0]
1653+ opencv-version : [2.4.13.7, 3.4.20, 4.12 .0]
16381654 steps :
16391655 - run : sudo xcode-select --switch /Applications/Xcode_15.2.app
16401656 - uses : actions/checkout@v4
@@ -1834,8 +1850,8 @@ jobs:
18341850 single-core : true
18351851 cmake-toolchain : arm-openwrt-linux-muslgnueabi.toolchain.cmake
18361852 setup-toolchain-cmd : |
1837- wget -q https://github.com/YuzukiHD/Yuzukilizard /releases/download/Toolchains /toolchain-sunxi-musl-gcc-830.tar.gz
1838- tar -xf toolchain-sunxi-musl-gcc-830.tar.gz
1853+ wget -q https://github.com/YuzukiHD/sunxi-bsp-toolchains /releases/download/1.0.0 /toolchain-sunxi-musl-arm -gcc-830.tar.gz
1854+ tar -xf toolchain-sunxi-musl-arm- gcc-830.tar.gz
18391855 setup-env-cmd : |
18401856 export TOOLCHAIN_ROOT_PATH=$GITHUB_WORKSPACE/toolchain-sunxi-musl-gcc-830/toolchain
18411857 export STAGING_DIR=$GITHUB_WORKSPACE/toolchain-sunxi-musl-gcc-830/toolchain
@@ -1848,8 +1864,8 @@ jobs:
18481864 single-core : true
18491865 cmake-toolchain : arm-openwrt-linux-muslgnueabi.toolchain.cmake
18501866 setup-toolchain-cmd : |
1851- wget -q https://github.com/YuzukiHD/Yuzukilizard /releases/download/Toolchains /toolchain-sunxi-musl-gcc-830.tar.gz
1852- tar -xf toolchain-sunxi-musl-gcc-830.tar.gz
1867+ wget -q https://github.com/YuzukiHD/sunxi-bsp-toolchains /releases/download/1.0.0 /toolchain-sunxi-musl-arm -gcc-830.tar.gz
1868+ tar -xf toolchain-sunxi-musl-arm- gcc-830.tar.gz
18531869 setup-env-cmd : |
18541870 export TOOLCHAIN_ROOT_PATH=$GITHUB_WORKSPACE/toolchain-sunxi-musl-gcc-830/toolchain
18551871 export STAGING_DIR=$GITHUB_WORKSPACE/toolchain-sunxi-musl-gcc-830/toolchain
@@ -1946,20 +1962,20 @@ jobs:
19461962 - uses : actions/checkout@v4
19471963 - uses : actions/download-artifact@v4
19481964 with :
1949- name : opencv-mobile-4.11 .0-source
1965+ name : opencv-mobile-4.12 .0-source
19501966 - name : setup-toolchain
19511967 run : ${{ matrix.setup-toolchain-cmd }}
19521968 - name : setup-opencv-source
19531969 run : |
1954- unzip -q opencv-mobile-4.11 .0.zip
1955- echo "SOURCE_DIR=opencv-mobile-4.11 .0" >> $GITHUB_ENV
1956- echo "PACKAGE_NAME=opencv-mobile-4.11 .0-${{ matrix.name }}" >> $GITHUB_ENV
1970+ unzip -q opencv-mobile-4.12 .0.zip
1971+ echo "SOURCE_DIR=opencv-mobile-4.12 .0" >> $GITHUB_ENV
1972+ echo "PACKAGE_NAME=opencv-mobile-4.12 .0-${{ matrix.name }}" >> $GITHUB_ENV
19571973
19581974 - name : build-disable-thread
19591975 if : ${{ matrix.single-core }}
19601976 run : |
19611977 cd ${{ env.SOURCE_DIR }}
1962- patch -p1 -i ../patches/opencv-4.11 .0-no-atomic.patch
1978+ patch -p1 -i ../patches/opencv-4.12 .0-no-atomic.patch
19631979 mkdir build && cd build
19641980 ${{ matrix.setup-env-cmd }}
19651981 cmake ${{ env.COMMON_CMAKE_OPTIONS }} ${{ matrix.cmake-options }} \
0 commit comments