From 0cfaa1562665ba8141fb72f285dcb47896916af4 Mon Sep 17 00:00:00 2001 From: Maksim Shabunin Date: Thu, 17 Apr 2025 19:03:52 +0300 Subject: [PATCH 01/27] Unified windows build --- .github/workflows/OCV-PR-Windows.yaml | 114 ++++++++++++++++++++++++++ 1 file changed, 114 insertions(+) create mode 100644 .github/workflows/OCV-PR-Windows.yaml diff --git a/.github/workflows/OCV-PR-Windows.yaml b/.github/workflows/OCV-PR-Windows.yaml new file mode 100644 index 00000000..b8cb43c7 --- /dev/null +++ b/.github/workflows/OCV-PR-Windows.yaml @@ -0,0 +1,114 @@ +name: OCV PR Linux + +on: + pull_request: + branches: + - main + paths: + - '.github/workflows/OCV-PR-Windows.yaml' + # TODO: are following paths necessary? + - 'checkout-and-merge/*' + - 'configure-and-build/*' + - 'run-tests/*' + - 'scripts/runner.py' + - 'scripts/test-plan.json' + workflow_call: + inputs: + workflow_branch: + description: "Branch for ci-gha-workflow repository" + default: "main" + required: false + type: string + +concurrency: + group: OCV-PR-Windows-${{ github.ref }} + cancel-in-progress: true + +jobs: + + branch_eval: + runs-on: ubuntu-24.04 + outputs: + branches: ${{ steps.determine-branches.outputs.branches }} + steps: + - id: determine-branches + shell: bash + run: | + if [ "${{ github.event.repository.name == 'ci-gha-workflow' }}" = "true" ] ; then + echo "branches=[ '4.x', '5.x' ]" >> "$GITHUB_OUTPUT" + else + echo "branches=[ '${{ github.base_ref }}' ]" >> "$GITHUB_OUTPUT" + fi + + Windows: + runs-on: opencv-cn-win + needs: + - branch_eval + strategy: + # NOTE: Debugging + fail-fast: true + # fail-fast: false + max-parallel: 3 + matrix: + config: + - 'base' + - 'vulkan' + - 'uwp' + + branch: ${{ fromJSON(needs.branch_eval.outputs.branches )}} + + defaults: + run: + shell: bash + env: + EXTRA_CMAKE_OPTIONS: '-DCL_Z_OPTION=/Z7 -DOPENCV_DOWNLOAD_PATH=%BINARIES_CACHE% -DBUILD_EXAMPLES=ON -DOPENCV_ENABLE_NONFREE=ON -DCMAKE_BUILD_TYPE=Release' + OPENCV_TEST_DATA_PATH: ${{ github.workspace }}\opencv_extra\testdata + OPENCV_TEST_REQUIRE_DATA: 1 + OPENCV_TEST_CHECK_OPTIONAL_DATA: 1 + PR_AUTHOR: ${{ github.event.pull_request.user.login }} + PR_AUTHOR_FORK: ${{ github.event.pull_request.head.repo.full_name }} + SOURCE_BRANCH_NAME: ${{ github.head_ref }} + TARGET_BRANCH_NAME: ${{ github.base_ref }} + GTEST_FILTER_STRING: '-Samples.findFile:videoio/videocapture_acceleration.read/yuv420p_libvpxxvp9_mp4_MSMF_NONE_MAT:Drawing.ttf_text' + DOWNLOAD_DNN_MODELS_FILE: 'download_models.py' + + ANT_HOME: '/usr/share/ant' + DNN_MODELS: '/opt/dnn-models' + CCACHE_DIR: '/opt/.ccache' + CCACHE_MAXSIZE: '8G' + OPENCV_DOWNLOAD_PATH: '/opt/binaries_cache' + CMAKE_OPT: >- + -DBUILD_DOCS=ON + -DBUILD_EXAMPLES=ON + -DOPENCV_ENABLE_NONFREE=ON + -DWITH_IMGCODEC_GIF=ON + ${{ matrix.jpegxl && '-DWITH_JPEGXL=ON' }} + ${{ matrix.avif && '-DWITH_AVIF=ON' }} + ${{ matrix.avx2 && '-DCPU_BASELINE=AVX2'}} + ${{ matrix.plugins && '-DVIDEOIO_PLUGIN_LIST=all -DHIGHGUI_PLUGIN_LIST=all' }} + ${{ matrix.limited_api && '-DPYTHON3_LIMITED_API=ON' }} + ${{ matrix.asan && '-DENABLE_OMIT_FRAME_POINTER=OFF -DCMAKE_CXX_FLAGS="-fsanitize=address"' }} + HOME: ${{ contains(matrix.image, '24.04') && '/home/ubuntu' || '/home/ci' }} + MAIN_BUILD_DIR: "${{ (github.event.repository.name != 'opencv_contrib') && 'build' || 'build-contrib' }}" + OPENCV_FOR_THREADS_NUM: 8 + CMAKE_BUILD_PARALLEL_LEVEL: 8 + + # ========== + + steps: + + - name: Checkout workflow repository + uses: actions/checkout@v4 + with: + repository: opencv/ci-gha-workflow + ref: "${{ github.repository == 'opencv/ci-gha-workflow' && github.ref || inputs.workflow_branch }}" + + # - name: Checkout and merge OpenCV + # uses: ./checkout-and-merge + # with: + # target_branch: "${{ matrix.branch }}" + # author: "${{ github.event.pull_request.user.login }}" + # source_branch: "${{ github.event.repository.name == 'ci-gha-workflow' && '' || github.head_ref }}" + # gitcache: '/opt/git_cache' + # home: '${{ env.HOME }}' + # workdir: '${{ env.HOME }}' From a1a399045e778839bb5dd9cdc8ee9e417ac386db Mon Sep 17 00:00:00 2001 From: Maksim Shabunin Date: Fri, 18 Apr 2025 09:33:19 +0300 Subject: [PATCH 02/27] fixup! Unified windows build --- .github/workflows/OCV-PR-Windows.yaml | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/.github/workflows/OCV-PR-Windows.yaml b/.github/workflows/OCV-PR-Windows.yaml index b8cb43c7..573d5a14 100644 --- a/.github/workflows/OCV-PR-Windows.yaml +++ b/.github/workflows/OCV-PR-Windows.yaml @@ -103,12 +103,12 @@ jobs: repository: opencv/ci-gha-workflow ref: "${{ github.repository == 'opencv/ci-gha-workflow' && github.ref || inputs.workflow_branch }}" - # - name: Checkout and merge OpenCV - # uses: ./checkout-and-merge - # with: - # target_branch: "${{ matrix.branch }}" - # author: "${{ github.event.pull_request.user.login }}" - # source_branch: "${{ github.event.repository.name == 'ci-gha-workflow' && '' || github.head_ref }}" - # gitcache: '/opt/git_cache' - # home: '${{ env.HOME }}' - # workdir: '${{ env.HOME }}' + - name: Checkout and merge OpenCV + uses: ./checkout-and-merge + with: + target_branch: "${{ matrix.branch }}" + author: "${{ github.event.pull_request.user.login }}" + source_branch: "${{ github.event.repository.name == 'ci-gha-workflow' && '' || github.head_ref }}" + gitcache: '${{ env.GIT_CACHE }}' + home: '${{ env.HOME }}' + workdir: '${{ github.workspace }}' From 623b131e4aa8fd8e5c1de0beb11a8cf844555d82 Mon Sep 17 00:00:00 2001 From: Maksim Shabunin Date: Fri, 18 Apr 2025 09:52:52 +0300 Subject: [PATCH 03/27] fixup! Unified windows build --- .github/workflows/OCV-PR-Windows.yaml | 34 ++++----------------------- checkout-and-merge/action.yaml | 12 +++------- 2 files changed, 8 insertions(+), 38 deletions(-) diff --git a/.github/workflows/OCV-PR-Windows.yaml b/.github/workflows/OCV-PR-Windows.yaml index 573d5a14..ed7cbc7e 100644 --- a/.github/workflows/OCV-PR-Windows.yaml +++ b/.github/workflows/OCV-PR-Windows.yaml @@ -1,4 +1,4 @@ -name: OCV PR Linux +name: OCV PR Windows on: pull_request: @@ -61,34 +61,11 @@ jobs: run: shell: bash env: - EXTRA_CMAKE_OPTIONS: '-DCL_Z_OPTION=/Z7 -DOPENCV_DOWNLOAD_PATH=%BINARIES_CACHE% -DBUILD_EXAMPLES=ON -DOPENCV_ENABLE_NONFREE=ON -DCMAKE_BUILD_TYPE=Release' - OPENCV_TEST_DATA_PATH: ${{ github.workspace }}\opencv_extra\testdata - OPENCV_TEST_REQUIRE_DATA: 1 - OPENCV_TEST_CHECK_OPTIONAL_DATA: 1 - PR_AUTHOR: ${{ github.event.pull_request.user.login }} - PR_AUTHOR_FORK: ${{ github.event.pull_request.head.repo.full_name }} - SOURCE_BRANCH_NAME: ${{ github.head_ref }} - TARGET_BRANCH_NAME: ${{ github.base_ref }} - GTEST_FILTER_STRING: '-Samples.findFile:videoio/videocapture_acceleration.read/yuv420p_libvpxxvp9_mp4_MSMF_NONE_MAT:Drawing.ttf_text' - DOWNLOAD_DNN_MODELS_FILE: 'download_models.py' - - ANT_HOME: '/usr/share/ant' - DNN_MODELS: '/opt/dnn-models' - CCACHE_DIR: '/opt/.ccache' - CCACHE_MAXSIZE: '8G' - OPENCV_DOWNLOAD_PATH: '/opt/binaries_cache' + OPENCV_DOWNLOAD_PATH: "${{ env.BINARIES_CACHE }}" CMAKE_OPT: >- - -DBUILD_DOCS=ON + -DCL_Z_OPTION=/Z7 -DBUILD_EXAMPLES=ON -DOPENCV_ENABLE_NONFREE=ON - -DWITH_IMGCODEC_GIF=ON - ${{ matrix.jpegxl && '-DWITH_JPEGXL=ON' }} - ${{ matrix.avif && '-DWITH_AVIF=ON' }} - ${{ matrix.avx2 && '-DCPU_BASELINE=AVX2'}} - ${{ matrix.plugins && '-DVIDEOIO_PLUGIN_LIST=all -DHIGHGUI_PLUGIN_LIST=all' }} - ${{ matrix.limited_api && '-DPYTHON3_LIMITED_API=ON' }} - ${{ matrix.asan && '-DENABLE_OMIT_FRAME_POINTER=OFF -DCMAKE_CXX_FLAGS="-fsanitize=address"' }} - HOME: ${{ contains(matrix.image, '24.04') && '/home/ubuntu' || '/home/ci' }} MAIN_BUILD_DIR: "${{ (github.event.repository.name != 'opencv_contrib') && 'build' || 'build-contrib' }}" OPENCV_FOR_THREADS_NUM: 8 CMAKE_BUILD_PARALLEL_LEVEL: 8 @@ -109,6 +86,5 @@ jobs: target_branch: "${{ matrix.branch }}" author: "${{ github.event.pull_request.user.login }}" source_branch: "${{ github.event.repository.name == 'ci-gha-workflow' && '' || github.head_ref }}" - gitcache: '${{ env.GIT_CACHE }}' - home: '${{ env.HOME }}' - workdir: '${{ github.workspace }}' + gitcache: "${{ env.GIT_CACHE }}" + workdir: "${{ github.workspace }}" diff --git a/checkout-and-merge/action.yaml b/checkout-and-merge/action.yaml index c20e2945..cb1668e7 100644 --- a/checkout-and-merge/action.yaml +++ b/checkout-and-merge/action.yaml @@ -32,7 +32,6 @@ runs: run: | echo "::group::Clone opencv" rm -rf opencv - HOME=${{ inputs.home }} \ git clone \ --reference-if-able ${{ inputs.gitcache }}/opencv.git \ --single-branch \ @@ -44,14 +43,13 @@ runs: working-directory: ${{ inputs.workdir }} shell: bash run: | - echo "OPENCV_MAIN_FORK=$(HOME=${{ inputs.home }} git ls-remote --heads https://github.com/${{ inputs.author }}/opencv ${{ inputs.source_branch }})" >> $GITHUB_ENV + echo "OPENCV_MAIN_FORK=$(git ls-remote --heads https://github.com/${{ inputs.author }}/opencv ${{ inputs.source_branch }})" >> $GITHUB_ENV - if: ${{ github.event.repository.name != 'ci-gha-workflow' && contains(inputs.repos, 'main') && inputs.source_branch && env.OPENCV_MAIN_FORK }} working-directory: ${{ inputs.workdir }} shell: bash run: | echo "::group::Merge opencv" - HOME=${{ inputs.home }} \ git -C opencv pull -v "https://github.com/${{ inputs.author }}/opencv" "${{ inputs.source_branch }}" echo "::endgroup::" @@ -63,7 +61,6 @@ runs: run: | echo "::group::Clone opencv_contrib" rm -rf opencv_contrib - HOME=${{ inputs.home }} \ git clone \ --reference-if-able ${{ inputs.gitcache }}/opencv_contrib.git \ --single-branch \ @@ -75,14 +72,13 @@ runs: working-directory: ${{ inputs.workdir }} shell: bash run: | - echo "OPENCV_CONTRIB_FORK=$(HOME=${{ inputs.home }} git ls-remote --heads https://github.com/${{ inputs.author }}/opencv_contrib ${{ inputs.source_branch }})" >> $GITHUB_ENV + echo "OPENCV_CONTRIB_FORK=$(git ls-remote --heads https://github.com/${{ inputs.author }}/opencv_contrib ${{ inputs.source_branch }})" >> $GITHUB_ENV - if: ${{ github.event.repository.name != 'ci-gha-workflow' && contains(inputs.repos, 'contrib') && inputs.source_branch && env.OPENCV_CONTRIB_FORK }} working-directory: ${{ inputs.workdir }} shell: bash run: | echo "::group::Merge opencv_contrib" - HOME=${{ inputs.home }} \ git -C opencv_contrib pull -v "https://github.com/${{ inputs.author }}/opencv_contrib" "${{ inputs.source_branch }}" echo "::endgroup::" @@ -94,7 +90,6 @@ runs: run: | echo "::group::Clone opencv_extra" rm -rf opencv_extra - HOME=${{ inputs.home }} \ git clone \ --reference-if-able ${{ inputs.gitcache }}/opencv_extra.git \ --single-branch \ @@ -106,13 +101,12 @@ runs: working-directory: ${{ inputs.workdir }} shell: bash run: | - echo "OPENCV_EXTRA_FORK=$(HOME=${{ inputs.home }} git ls-remote --heads https://github.com/${{ inputs.author }}/opencv_extra ${{ inputs.source_branch }})" >> $GITHUB_ENV + echo "OPENCV_EXTRA_FORK=$(git ls-remote --heads https://github.com/${{ inputs.author }}/opencv_extra ${{ inputs.source_branch }})" >> $GITHUB_ENV - if: ${{ github.event.repository.name != 'ci-gha-workflow' && contains(inputs.repos, 'extra') && inputs.source_branch && env.OPENCV_EXTRA_FORK }} working-directory: ${{ inputs.workdir }} shell: bash run: | echo "::group::Merge opencv_extra" - HOME=${{ inputs.home }} \ git -C opencv_extra pull -v "https://github.com/${{ inputs.author }}/opencv_extra" "${{ inputs.source_branch }}" echo "::endgroup::" From 3c634811e8d5fbdd30b7ccd453690c832b2c1ee8 Mon Sep 17 00:00:00 2001 From: Maksim Shabunin Date: Fri, 18 Apr 2025 09:57:58 +0300 Subject: [PATCH 04/27] fixup! Unified windows build --- .github/workflows/OCV-PR-Windows.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/OCV-PR-Windows.yaml b/.github/workflows/OCV-PR-Windows.yaml index ed7cbc7e..9f0f5fdb 100644 --- a/.github/workflows/OCV-PR-Windows.yaml +++ b/.github/workflows/OCV-PR-Windows.yaml @@ -61,7 +61,7 @@ jobs: run: shell: bash env: - OPENCV_DOWNLOAD_PATH: "${{ env.BINARIES_CACHE }}" + OPENCV_DOWNLOAD_PATH: "$BINARIES_CACHE" CMAKE_OPT: >- -DCL_Z_OPTION=/Z7 -DBUILD_EXAMPLES=ON From 6948293ac1ac26ea45e629fe1d55ed95761f70ce Mon Sep 17 00:00:00 2001 From: Maksim Shabunin Date: Fri, 18 Apr 2025 10:10:44 +0300 Subject: [PATCH 05/27] fixup! Unified windows build --- .github/workflows/OCV-PR-Windows.yaml | 26 ++++++++++++++++++-------- 1 file changed, 18 insertions(+), 8 deletions(-) diff --git a/.github/workflows/OCV-PR-Windows.yaml b/.github/workflows/OCV-PR-Windows.yaml index 9f0f5fdb..9931f5cb 100644 --- a/.github/workflows/OCV-PR-Windows.yaml +++ b/.github/workflows/OCV-PR-Windows.yaml @@ -80,11 +80,21 @@ jobs: repository: opencv/ci-gha-workflow ref: "${{ github.repository == 'opencv/ci-gha-workflow' && github.ref || inputs.workflow_branch }}" - - name: Checkout and merge OpenCV - uses: ./checkout-and-merge - with: - target_branch: "${{ matrix.branch }}" - author: "${{ github.event.pull_request.user.login }}" - source_branch: "${{ github.event.repository.name == 'ci-gha-workflow' && '' || github.head_ref }}" - gitcache: "${{ env.GIT_CACHE }}" - workdir: "${{ github.workspace }}" + - working-directory: ${{ github.workspace }} + shell: bash + run: | + pwd + ls -l + export + whoami + id + + + # - name: Checkout and merge OpenCV + # uses: ./checkout-and-merge + # with: + # target_branch: "${{ matrix.branch }}" + # author: "${{ github.event.pull_request.user.login }}" + # source_branch: "${{ github.event.repository.name == 'ci-gha-workflow' && '' || github.head_ref }}" + # gitcache: "${{ env.GIT_CACHE }}" + # workdir: "${{ github.workspace }}" From c29374cdb5fcdad0001ace8df268ecc24e1bf436 Mon Sep 17 00:00:00 2001 From: Maksim Shabunin Date: Fri, 18 Apr 2025 10:45:24 +0300 Subject: [PATCH 06/27] fixup! Unified windows build --- .github/workflows/OCV-PR-Windows.yaml | 3 +++ 1 file changed, 3 insertions(+) diff --git a/.github/workflows/OCV-PR-Windows.yaml b/.github/workflows/OCV-PR-Windows.yaml index 9931f5cb..7d120d9b 100644 --- a/.github/workflows/OCV-PR-Windows.yaml +++ b/.github/workflows/OCV-PR-Windows.yaml @@ -88,6 +88,9 @@ jobs: export whoami id + echo "BINARIES_CACHE = ${{ env.BINARIES_CACHE }}" + echo "GIT_CACHE = ${{ env.GIT_CACHE }}" + echo "GIT_CACHE = $GIT_CACHE" # - name: Checkout and merge OpenCV From 5dd66366756beb7b46c013a553c066eaf8417ff3 Mon Sep 17 00:00:00 2001 From: Maksim Shabunin Date: Fri, 18 Apr 2025 10:52:38 +0300 Subject: [PATCH 07/27] fixup! Unified windows build --- .github/workflows/OCV-PR-Windows.yaml | 27 +++++++++++++++++---------- 1 file changed, 17 insertions(+), 10 deletions(-) diff --git a/.github/workflows/OCV-PR-Windows.yaml b/.github/workflows/OCV-PR-Windows.yaml index 7d120d9b..c3ff04b9 100644 --- a/.github/workflows/OCV-PR-Windows.yaml +++ b/.github/workflows/OCV-PR-Windows.yaml @@ -74,6 +74,15 @@ jobs: steps: + - name: Propagate environment + run: | + echo "GIT_CACHE=$GIT_CACHE" >> "$GITHUB_ENV" + echo "GIT_CACHE_PATH=$GIT_CACHE_PATH" >> "$GITHUB_ENV" + echo "DNN_MODELS=$DNN_MODELS" >> "$GITHUB_ENV" + echo "BINARIES_CACHE=$BINARIES_CACHE" >> "$GITHUB_ENV" + echo "OPENCV_DOWNLOAD_PATH=$BINARIES_CACHE" >> "$GITHUB_ENV" + + - name: Checkout workflow repository uses: actions/checkout@v4 with: @@ -90,14 +99,12 @@ jobs: id echo "BINARIES_CACHE = ${{ env.BINARIES_CACHE }}" echo "GIT_CACHE = ${{ env.GIT_CACHE }}" - echo "GIT_CACHE = $GIT_CACHE" - - # - name: Checkout and merge OpenCV - # uses: ./checkout-and-merge - # with: - # target_branch: "${{ matrix.branch }}" - # author: "${{ github.event.pull_request.user.login }}" - # source_branch: "${{ github.event.repository.name == 'ci-gha-workflow' && '' || github.head_ref }}" - # gitcache: "${{ env.GIT_CACHE }}" - # workdir: "${{ github.workspace }}" + - name: Checkout and merge OpenCV + uses: ./checkout-and-merge + with: + target_branch: "${{ matrix.branch }}" + author: "${{ github.event.pull_request.user.login }}" + source_branch: "${{ github.event.repository.name == 'ci-gha-workflow' && '' || github.head_ref }}" + gitcache: "${{ env.GIT_CACHE }}" + workdir: "${{ github.workspace }}" From 2438dd5e3129cc49eb773c59cb8d6d02fdaafca9 Mon Sep 17 00:00:00 2001 From: Maksim Shabunin Date: Fri, 18 Apr 2025 11:03:48 +0300 Subject: [PATCH 08/27] fixup! Unified windows build --- .github/workflows/OCV-PR-Linux.yaml | 2 +- .github/workflows/OCV-PR-Windows.yaml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/OCV-PR-Linux.yaml b/.github/workflows/OCV-PR-Linux.yaml index 8cd23a96..ec6ca0a8 100644 --- a/.github/workflows/OCV-PR-Linux.yaml +++ b/.github/workflows/OCV-PR-Linux.yaml @@ -91,7 +91,7 @@ jobs: # - /mnt/cache/binaries_cache:/opt/binaries_cache # - vol_dnn_models:/opt/dnn-models # NOTE: CN config - - /home/opencv-cn/git_cache/:/opt/git_cache + - /home/opencv-cn/git_cache:/opt/git_cache - /home/opencv-cn/ci_cache/opencv/${{ matrix.version }}:/opt/.ccache - /home/opencv-cn/binaries_cache/${{ matrix.version }}:/opt/binaries_cache - /home/opencv-cn/dnn-models:/opt/dnn-models diff --git a/.github/workflows/OCV-PR-Windows.yaml b/.github/workflows/OCV-PR-Windows.yaml index c3ff04b9..d88745d6 100644 --- a/.github/workflows/OCV-PR-Windows.yaml +++ b/.github/workflows/OCV-PR-Windows.yaml @@ -106,5 +106,5 @@ jobs: target_branch: "${{ matrix.branch }}" author: "${{ github.event.pull_request.user.login }}" source_branch: "${{ github.event.repository.name == 'ci-gha-workflow' && '' || github.head_ref }}" - gitcache: "${{ env.GIT_CACHE }}" + gitcache: "${{ env.GIT_CACHE_PATH }}" workdir: "${{ github.workspace }}" From 1760a007ec8b3c8b86bd0e5d6eff7a296590467f Mon Sep 17 00:00:00 2001 From: Maksim Shabunin Date: Fri, 18 Apr 2025 19:00:05 +0300 Subject: [PATCH 09/27] fixup! Unified windows build --- .github/workflows/OCV-PR-Windows.yaml | 20 +++++++++++++++----- 1 file changed, 15 insertions(+), 5 deletions(-) diff --git a/.github/workflows/OCV-PR-Windows.yaml b/.github/workflows/OCV-PR-Windows.yaml index d88745d6..3c529b26 100644 --- a/.github/workflows/OCV-PR-Windows.yaml +++ b/.github/workflows/OCV-PR-Windows.yaml @@ -89,7 +89,7 @@ jobs: repository: opencv/ci-gha-workflow ref: "${{ github.repository == 'opencv/ci-gha-workflow' && github.ref || inputs.workflow_branch }}" - - working-directory: ${{ github.workspace }} + - working-directory: '${{ github.workspace }}' shell: bash run: | pwd @@ -103,8 +103,18 @@ jobs: - name: Checkout and merge OpenCV uses: ./checkout-and-merge with: - target_branch: "${{ matrix.branch }}" - author: "${{ github.event.pull_request.user.login }}" + target_branch: '${{ matrix.branch }}' + author: '${{ github.event.pull_request.user.login }}' source_branch: "${{ github.event.repository.name == 'ci-gha-workflow' && '' || github.head_ref }}" - gitcache: "${{ env.GIT_CACHE_PATH }}" - workdir: "${{ github.workspace }}" + gitcache: '${{ env.GIT_CACHE_PATH }}' + workdir: '${{ github.workspace }}' + + - name: Update extra dnn models + timeout-minutes: 60 + working-directory: '${{ github.workspace }}' + run: | + ls -lR ${{ env.BINARIES_CACHE }} + python3 opencv_extra\\testdata\\dnn\\download_models.py \ + --cleanup \ + --dst '${{ env.BINARIES_CACHE }}\\dnn' + echo "OPENCV_DNN_TEST_DATA_PATH=${{ env.BINARIES_CACHE }}" >> $GITHUB_ENV From 63a9816a1694ebce3bf472ad3e5fe9fcc7d17c17 Mon Sep 17 00:00:00 2001 From: Maksim Shabunin Date: Fri, 18 Apr 2025 19:11:52 +0300 Subject: [PATCH 10/27] fixup! Unified windows build --- .github/workflows/OCV-PR-Windows.yaml | 20 +++++++++++--------- 1 file changed, 11 insertions(+), 9 deletions(-) diff --git a/.github/workflows/OCV-PR-Windows.yaml b/.github/workflows/OCV-PR-Windows.yaml index 3c529b26..01d73e24 100644 --- a/.github/workflows/OCV-PR-Windows.yaml +++ b/.github/workflows/OCV-PR-Windows.yaml @@ -97,6 +97,8 @@ jobs: export whoami id + wslpath "$BINARIES_CACHE" + wslpath "$GIT_CACHE" echo "BINARIES_CACHE = ${{ env.BINARIES_CACHE }}" echo "GIT_CACHE = ${{ env.GIT_CACHE }}" @@ -109,12 +111,12 @@ jobs: gitcache: '${{ env.GIT_CACHE_PATH }}' workdir: '${{ github.workspace }}' - - name: Update extra dnn models - timeout-minutes: 60 - working-directory: '${{ github.workspace }}' - run: | - ls -lR ${{ env.BINARIES_CACHE }} - python3 opencv_extra\\testdata\\dnn\\download_models.py \ - --cleanup \ - --dst '${{ env.BINARIES_CACHE }}\\dnn' - echo "OPENCV_DNN_TEST_DATA_PATH=${{ env.BINARIES_CACHE }}" >> $GITHUB_ENV + # - name: Update extra dnn models + # timeout-minutes: 60 + # working-directory: '${{ github.workspace }}' + # run: | + # ls -lR ${{ env.BINARIES_CACHE }} + # python3 opencv_extra\\testdata\\dnn\\download_models.py \ + # --cleanup \ + # --dst '${{ env.BINARIES_CACHE }}\\dnn' + # echo "OPENCV_DNN_TEST_DATA_PATH=${{ env.BINARIES_CACHE }}" >> $GITHUB_ENV From 40a9570c89b4a63c9e5866d2ecf96fb243dbbac4 Mon Sep 17 00:00:00 2001 From: Maksim Shabunin Date: Fri, 18 Apr 2025 19:14:52 +0300 Subject: [PATCH 11/27] fixup! Unified windows build --- .github/workflows/OCV-PR-Windows.yaml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/OCV-PR-Windows.yaml b/.github/workflows/OCV-PR-Windows.yaml index 01d73e24..0eda35ce 100644 --- a/.github/workflows/OCV-PR-Windows.yaml +++ b/.github/workflows/OCV-PR-Windows.yaml @@ -97,8 +97,8 @@ jobs: export whoami id - wslpath "$BINARIES_CACHE" - wslpath "$GIT_CACHE" + cygpath -u "$BINARIES_CACHE" + cygpath -u "$GIT_CACHE" echo "BINARIES_CACHE = ${{ env.BINARIES_CACHE }}" echo "GIT_CACHE = ${{ env.GIT_CACHE }}" From 3d1528d5906c8faedd86a70581947ebd2f9d046e Mon Sep 17 00:00:00 2001 From: Maksim Shabunin Date: Fri, 18 Apr 2025 19:17:26 +0300 Subject: [PATCH 12/27] fixup! Unified windows build --- .github/workflows/OCV-PR-Windows.yaml | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) diff --git a/.github/workflows/OCV-PR-Windows.yaml b/.github/workflows/OCV-PR-Windows.yaml index 0eda35ce..f2bf84af 100644 --- a/.github/workflows/OCV-PR-Windows.yaml +++ b/.github/workflows/OCV-PR-Windows.yaml @@ -76,11 +76,10 @@ jobs: - name: Propagate environment run: | - echo "GIT_CACHE=$GIT_CACHE" >> "$GITHUB_ENV" - echo "GIT_CACHE_PATH=$GIT_CACHE_PATH" >> "$GITHUB_ENV" - echo "DNN_MODELS=$DNN_MODELS" >> "$GITHUB_ENV" - echo "BINARIES_CACHE=$BINARIES_CACHE" >> "$GITHUB_ENV" - echo "OPENCV_DOWNLOAD_PATH=$BINARIES_CACHE" >> "$GITHUB_ENV" + echo "GIT_CACHE=$(cygpath -u \"$GIT_CACHE\")" >> "$GITHUB_ENV" + echo "DNN_MODELS=$(cygpath -u \"$DNN_MODELS\")" >> "$GITHUB_ENV" + echo "BINARIES_CACHE=$(cygpath -u \"$BINARIES_CACHE\")" >> "$GITHUB_ENV" + echo "OPENCV_DOWNLOAD_PATH=$(cygpath -u \"$BINARIES_CACHE\")" >> "$GITHUB_ENV" - name: Checkout workflow repository From 4105efcf14e874f4c8150578979e1d891807e5c4 Mon Sep 17 00:00:00 2001 From: Maksim Shabunin Date: Fri, 18 Apr 2025 19:17:48 +0300 Subject: [PATCH 13/27] fixup! Unified windows build --- .github/workflows/OCV-PR-Windows.yaml | 1 - 1 file changed, 1 deletion(-) diff --git a/.github/workflows/OCV-PR-Windows.yaml b/.github/workflows/OCV-PR-Windows.yaml index f2bf84af..42442dcc 100644 --- a/.github/workflows/OCV-PR-Windows.yaml +++ b/.github/workflows/OCV-PR-Windows.yaml @@ -91,7 +91,6 @@ jobs: - working-directory: '${{ github.workspace }}' shell: bash run: | - pwd ls -l export whoami From d1a095510627bbd0f178b016ceb51decd7c33d03 Mon Sep 17 00:00:00 2001 From: Maksim Shabunin Date: Fri, 18 Apr 2025 19:18:41 +0300 Subject: [PATCH 14/27] fixup! Unified windows build --- .github/workflows/OCV-PR-Linux.yaml | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/.github/workflows/OCV-PR-Linux.yaml b/.github/workflows/OCV-PR-Linux.yaml index ec6ca0a8..78c77cfd 100644 --- a/.github/workflows/OCV-PR-Linux.yaml +++ b/.github/workflows/OCV-PR-Linux.yaml @@ -7,11 +7,11 @@ on: paths: - '.github/workflows/OCV-PR-Linux.yaml' # TODO: are following paths necessary? - - 'checkout-and-merge/*' - - 'configure-and-build/*' - - 'run-tests/*' - - 'scripts/runner.py' - - 'scripts/test-plan.json' + # - 'checkout-and-merge/*' + # - 'configure-and-build/*' + # - 'run-tests/*' + # - 'scripts/runner.py' + # - 'scripts/test-plan.json' workflow_call: inputs: workflow_branch: From cddf55636e19795220c5c8118e0c415b8cb122cb Mon Sep 17 00:00:00 2001 From: Maksim Shabunin Date: Fri, 18 Apr 2025 19:20:38 +0300 Subject: [PATCH 15/27] fixup! Unified windows build --- .github/workflows/OCV-PR-Windows.yaml | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/.github/workflows/OCV-PR-Windows.yaml b/.github/workflows/OCV-PR-Windows.yaml index 42442dcc..91bae7a3 100644 --- a/.github/workflows/OCV-PR-Windows.yaml +++ b/.github/workflows/OCV-PR-Windows.yaml @@ -76,10 +76,10 @@ jobs: - name: Propagate environment run: | - echo "GIT_CACHE=$(cygpath -u \"$GIT_CACHE\")" >> "$GITHUB_ENV" - echo "DNN_MODELS=$(cygpath -u \"$DNN_MODELS\")" >> "$GITHUB_ENV" - echo "BINARIES_CACHE=$(cygpath -u \"$BINARIES_CACHE\")" >> "$GITHUB_ENV" - echo "OPENCV_DOWNLOAD_PATH=$(cygpath -u \"$BINARIES_CACHE\")" >> "$GITHUB_ENV" + echo "GIT_CACHE=$(cygpath -u "$GIT_CACHE")" >> "$GITHUB_ENV" + echo "DNN_MODELS=$(cygpath -u "$DNN_MODELS")" >> "$GITHUB_ENV" + echo "BINARIES_CACHE=$(cygpath -u "$BINARIES_CACHE")" >> "$GITHUB_ENV" + echo "OPENCV_DOWNLOAD_PATH=$(cygpath -u "$BINARIES_CACHE")" >> "$GITHUB_ENV" - name: Checkout workflow repository From ca57e3c75bc5998bf211e6c9ef4569e3673cdc9f Mon Sep 17 00:00:00 2001 From: Maksim Shabunin Date: Fri, 18 Apr 2025 19:22:55 +0300 Subject: [PATCH 16/27] fixup! Unified windows build --- .github/workflows/OCV-PR-Windows.yaml | 28 ++++++++++++++------------- 1 file changed, 15 insertions(+), 13 deletions(-) diff --git a/.github/workflows/OCV-PR-Windows.yaml b/.github/workflows/OCV-PR-Windows.yaml index 91bae7a3..6fcb97bd 100644 --- a/.github/workflows/OCV-PR-Windows.yaml +++ b/.github/workflows/OCV-PR-Windows.yaml @@ -95,10 +95,12 @@ jobs: export whoami id - cygpath -u "$BINARIES_CACHE" - cygpath -u "$GIT_CACHE" - echo "BINARIES_CACHE = ${{ env.BINARIES_CACHE }}" - echo "GIT_CACHE = ${{ env.GIT_CACHE }}" + which bash + echo "GIT_CACHE=$GIT_CACHE" + echo "DNN_MODELS=$DNN_MODELS" + echo "BINARIES_CACHE=$BINARIES_CACHE" + echo "OPENCV_DOWNLOAD_PATH=$BINARIES_CACHE" + - name: Checkout and merge OpenCV uses: ./checkout-and-merge @@ -109,12 +111,12 @@ jobs: gitcache: '${{ env.GIT_CACHE_PATH }}' workdir: '${{ github.workspace }}' - # - name: Update extra dnn models - # timeout-minutes: 60 - # working-directory: '${{ github.workspace }}' - # run: | - # ls -lR ${{ env.BINARIES_CACHE }} - # python3 opencv_extra\\testdata\\dnn\\download_models.py \ - # --cleanup \ - # --dst '${{ env.BINARIES_CACHE }}\\dnn' - # echo "OPENCV_DNN_TEST_DATA_PATH=${{ env.BINARIES_CACHE }}" >> $GITHUB_ENV + - name: Update extra dnn models + timeout-minutes: 60 + working-directory: '${{ github.workspace }}' + run: | + ls -lR ${{ env.BINARIES_CACHE }} + python3 opencv_extra/testdata/dnn/download_models.py \ + --cleanup \ + --dst '${{ env.BINARIES_CACHE }}/dnn' + echo "OPENCV_DNN_TEST_DATA_PATH=${{ env.BINARIES_CACHE }}" >> $GITHUB_ENV From 2ca66ad1b6aeee1389766b8c13326ea00ac3fc1c Mon Sep 17 00:00:00 2001 From: Maksim Shabunin Date: Fri, 18 Apr 2025 19:24:32 +0300 Subject: [PATCH 17/27] fixup! Unified windows build --- .github/workflows/OCV-PR-Windows.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/OCV-PR-Windows.yaml b/.github/workflows/OCV-PR-Windows.yaml index 6fcb97bd..f2cad4f9 100644 --- a/.github/workflows/OCV-PR-Windows.yaml +++ b/.github/workflows/OCV-PR-Windows.yaml @@ -108,7 +108,7 @@ jobs: target_branch: '${{ matrix.branch }}' author: '${{ github.event.pull_request.user.login }}' source_branch: "${{ github.event.repository.name == 'ci-gha-workflow' && '' || github.head_ref }}" - gitcache: '${{ env.GIT_CACHE_PATH }}' + gitcache: '${{ env.GIT_CACHE }}' workdir: '${{ github.workspace }}' - name: Update extra dnn models From 5a270c8c99e00e1ef9b19bd67f5dff43a077df1c Mon Sep 17 00:00:00 2001 From: Maksim Shabunin Date: Fri, 18 Apr 2025 19:28:16 +0300 Subject: [PATCH 18/27] fixup! Unified windows build --- .github/workflows/OCV-PR-Windows.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/OCV-PR-Windows.yaml b/.github/workflows/OCV-PR-Windows.yaml index f2cad4f9..7d00bd8e 100644 --- a/.github/workflows/OCV-PR-Windows.yaml +++ b/.github/workflows/OCV-PR-Windows.yaml @@ -115,7 +115,7 @@ jobs: timeout-minutes: 60 working-directory: '${{ github.workspace }}' run: | - ls -lR ${{ env.BINARIES_CACHE }} + ls -lR '${{ env.BINARIES_CACHE }}/dnn' python3 opencv_extra/testdata/dnn/download_models.py \ --cleanup \ --dst '${{ env.BINARIES_CACHE }}/dnn' From ad5b62e75ec4d7c6e7691af10be64148602cc2e4 Mon Sep 17 00:00:00 2001 From: Maksim Shabunin Date: Fri, 18 Apr 2025 19:29:13 +0300 Subject: [PATCH 19/27] fixup! Unified windows build --- .github/workflows/OCV-PR-Windows.yaml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/.github/workflows/OCV-PR-Windows.yaml b/.github/workflows/OCV-PR-Windows.yaml index 7d00bd8e..8911833a 100644 --- a/.github/workflows/OCV-PR-Windows.yaml +++ b/.github/workflows/OCV-PR-Windows.yaml @@ -115,8 +115,8 @@ jobs: timeout-minutes: 60 working-directory: '${{ github.workspace }}' run: | - ls -lR '${{ env.BINARIES_CACHE }}/dnn' + ls -lR '${{ env.DNN_MODELS }}' python3 opencv_extra/testdata/dnn/download_models.py \ --cleanup \ - --dst '${{ env.BINARIES_CACHE }}/dnn' - echo "OPENCV_DNN_TEST_DATA_PATH=${{ env.BINARIES_CACHE }}" >> $GITHUB_ENV + --dst '${{ env.DNN_MODELS }}/dnn' + echo "OPENCV_DNN_TEST_DATA_PATH=${{ env.DNN_MODELS }}" >> $GITHUB_ENV From f67a11fb271509525d1a17b0d9dc9bc770cda555 Mon Sep 17 00:00:00 2001 From: Maksim Shabunin Date: Fri, 18 Apr 2025 19:31:43 +0300 Subject: [PATCH 20/27] fixup! Unified windows build --- .github/workflows/OCV-PR-Windows.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/OCV-PR-Windows.yaml b/.github/workflows/OCV-PR-Windows.yaml index 8911833a..36c37e21 100644 --- a/.github/workflows/OCV-PR-Windows.yaml +++ b/.github/workflows/OCV-PR-Windows.yaml @@ -115,7 +115,7 @@ jobs: timeout-minutes: 60 working-directory: '${{ github.workspace }}' run: | - ls -lR '${{ env.DNN_MODELS }}' + # ls -lR '${{ env.DNN_MODELS }}' python3 opencv_extra/testdata/dnn/download_models.py \ --cleanup \ --dst '${{ env.DNN_MODELS }}/dnn' From 071e98e8d90937e1f7829232f0df7a3f484d3862 Mon Sep 17 00:00:00 2001 From: Maksim Shabunin Date: Fri, 18 Apr 2025 19:34:59 +0300 Subject: [PATCH 21/27] fixup! Unified windows build --- .github/workflows/OCV-PR-Windows.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/OCV-PR-Windows.yaml b/.github/workflows/OCV-PR-Windows.yaml index 36c37e21..7129cf41 100644 --- a/.github/workflows/OCV-PR-Windows.yaml +++ b/.github/workflows/OCV-PR-Windows.yaml @@ -116,7 +116,7 @@ jobs: working-directory: '${{ github.workspace }}' run: | # ls -lR '${{ env.DNN_MODELS }}' - python3 opencv_extra/testdata/dnn/download_models.py \ + python opencv_extra/testdata/dnn/download_models.py \ --cleanup \ --dst '${{ env.DNN_MODELS }}/dnn' echo "OPENCV_DNN_TEST_DATA_PATH=${{ env.DNN_MODELS }}" >> $GITHUB_ENV From 58f6589634cc917b0accd2593fe122015f2381dc Mon Sep 17 00:00:00 2001 From: Maksim Shabunin Date: Fri, 18 Apr 2025 19:57:43 +0300 Subject: [PATCH 22/27] fixup! Unified windows build --- .github/workflows/OCV-PR-Windows.yaml | 20 ++++++++++++++++++-- 1 file changed, 18 insertions(+), 2 deletions(-) diff --git a/.github/workflows/OCV-PR-Windows.yaml b/.github/workflows/OCV-PR-Windows.yaml index 7129cf41..f19fe861 100644 --- a/.github/workflows/OCV-PR-Windows.yaml +++ b/.github/workflows/OCV-PR-Windows.yaml @@ -61,7 +61,6 @@ jobs: run: shell: bash env: - OPENCV_DOWNLOAD_PATH: "$BINARIES_CACHE" CMAKE_OPT: >- -DCL_Z_OPTION=/Z7 -DBUILD_EXAMPLES=ON @@ -115,8 +114,25 @@ jobs: timeout-minutes: 60 working-directory: '${{ github.workspace }}' run: | - # ls -lR '${{ env.DNN_MODELS }}' python opencv_extra/testdata/dnn/download_models.py \ --cleanup \ --dst '${{ env.DNN_MODELS }}/dnn' echo "OPENCV_DNN_TEST_DATA_PATH=${{ env.DNN_MODELS }}" >> $GITHUB_ENV + + + - if: ${{ github.event.repository.name != 'opencv_contrib' }} + name: Configure and build OpenCV + uses: ./configure-and-build + with: + workdir: '${{ github.workspace }}' + builddir: 'build' + generator: 'Visual Studio 16 2019' + options: '-A x64 ${{ env.CMAKE_OPT }}' + + - name: Configure and build OpenCV with contrib + uses: ./configure-and-build + with: + workdir: '${{ github.workspace }}' + builddir: 'build-contrib' + generator: 'Visual Studio 16 2019' + options: '-A x64 -DOPENCV_EXTRA_MODULES_PATH=opencv_contrib/modules ${{ env.CMAKE_OPT }}' From 3fff657686cf62ba44d0c81dbc60d481a8331d74 Mon Sep 17 00:00:00 2001 From: Maksim Shabunin Date: Fri, 18 Apr 2025 20:03:13 +0300 Subject: [PATCH 23/27] fixup! Unified windows build --- .github/workflows/OCV-PR-Windows.yaml | 2 ++ configure-and-build/action.yml | 12 ++++++------ 2 files changed, 8 insertions(+), 6 deletions(-) diff --git a/.github/workflows/OCV-PR-Windows.yaml b/.github/workflows/OCV-PR-Windows.yaml index f19fe861..e126544f 100644 --- a/.github/workflows/OCV-PR-Windows.yaml +++ b/.github/workflows/OCV-PR-Windows.yaml @@ -65,6 +65,8 @@ jobs: -DCL_Z_OPTION=/Z7 -DBUILD_EXAMPLES=ON -DOPENCV_ENABLE_NONFREE=ON + ${{ matrix.config == 'uwp' && -DCMAKE_SYSTEM_NAME=WindowsStore -DCMAKE_SYSTEM_VERSION=10.0 -DBUILD_opencv_gapi=OFF -DWITH_MSMF=OFF -DBUILD_TESTS=OFF -DBUILD_PERF_TESTS=OFF -DBUILD_EXAMPLES=OFF -DBUILD_opencv_apps=OFF }} + ${{ matrix.config == 'vulcan' && '-DWITH_OPENCL=OFF -DWITH_VULKAN=ON' }} MAIN_BUILD_DIR: "${{ (github.event.repository.name != 'opencv_contrib') && 'build' || 'build-contrib' }}" OPENCV_FOR_THREADS_NUM: 8 CMAKE_BUILD_PARALLEL_LEVEL: 8 diff --git a/configure-and-build/action.yml b/configure-and-build/action.yml index 0fde5ebb..aadc8a4c 100644 --- a/configure-and-build/action.yml +++ b/configure-and-build/action.yml @@ -20,12 +20,12 @@ runs: shell: bash run: | echo "::group::Configure" - rm -rf ${{ inputs.builddir }} - mkdir -p ${{ inputs.builddir }} + rm -rf '${{ inputs.builddir }}' + mkdir -p '${{ inputs.builddir }}' cmake \ -S opencv \ - -B ${{ inputs.builddir }} \ - -G ${{ inputs.generator }} \ + -B '${{ inputs.builddir }}' \ + -G '${{ inputs.generator }}' \ ${{ inputs.options }} echo "::endgroup::" @@ -33,14 +33,14 @@ runs: shell: bash run: | echo "::group::Build" - cmake --build ${{ inputs.builddir }} 2>&1 | tee ${{ inputs.builddir }}/log.txt + cmake --build '${{ inputs.builddir }}' 2>&1 | tee '${{ inputs.builddir }}/log.txt' echo "::endgroup::" - shell: bash run: | set +e python3 ./scripts/warnings-handling.py \ - ${{ inputs.workdir }}/${{ inputs.builddir }}/log.txt + '${{ inputs.workdir }}/${{ inputs.builddir }}/log.txt' if [ $? -ne 0 ]; then echo "WARNINGS=1" >> $GITHUB_ENV fi From 2656cd55f1fe37986905e2527bc408fb73eecaab Mon Sep 17 00:00:00 2001 From: Maksim Shabunin Date: Fri, 18 Apr 2025 20:04:23 +0300 Subject: [PATCH 24/27] fixup! Unified windows build --- .github/workflows/OCV-PR-Windows.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/OCV-PR-Windows.yaml b/.github/workflows/OCV-PR-Windows.yaml index e126544f..61635543 100644 --- a/.github/workflows/OCV-PR-Windows.yaml +++ b/.github/workflows/OCV-PR-Windows.yaml @@ -65,7 +65,7 @@ jobs: -DCL_Z_OPTION=/Z7 -DBUILD_EXAMPLES=ON -DOPENCV_ENABLE_NONFREE=ON - ${{ matrix.config == 'uwp' && -DCMAKE_SYSTEM_NAME=WindowsStore -DCMAKE_SYSTEM_VERSION=10.0 -DBUILD_opencv_gapi=OFF -DWITH_MSMF=OFF -DBUILD_TESTS=OFF -DBUILD_PERF_TESTS=OFF -DBUILD_EXAMPLES=OFF -DBUILD_opencv_apps=OFF }} + ${{ matrix.config == 'uwp' && '-DCMAKE_SYSTEM_NAME=WindowsStore -DCMAKE_SYSTEM_VERSION=10.0 -DBUILD_opencv_gapi=OFF -DWITH_MSMF=OFF -DBUILD_TESTS=OFF -DBUILD_PERF_TESTS=OFF -DBUILD_EXAMPLES=OFF -DBUILD_opencv_apps=OFF' }} ${{ matrix.config == 'vulcan' && '-DWITH_OPENCL=OFF -DWITH_VULKAN=ON' }} MAIN_BUILD_DIR: "${{ (github.event.repository.name != 'opencv_contrib') && 'build' || 'build-contrib' }}" OPENCV_FOR_THREADS_NUM: 8 From 7759b80ee2a89b98dd68e41c995c0513125dabd4 Mon Sep 17 00:00:00 2001 From: Maksim Shabunin Date: Fri, 18 Apr 2025 20:35:27 +0300 Subject: [PATCH 25/27] fixup! Unified windows build --- .github/workflows/OCV-PR-Windows.yaml | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/.github/workflows/OCV-PR-Windows.yaml b/.github/workflows/OCV-PR-Windows.yaml index 61635543..ec6378aa 100644 --- a/.github/workflows/OCV-PR-Windows.yaml +++ b/.github/workflows/OCV-PR-Windows.yaml @@ -54,6 +54,11 @@ jobs: - 'base' - 'vulkan' - 'uwp' + include: + - config: 'vulkan' + vulkan: true + - config: 'uwp' + uwp: true branch: ${{ fromJSON(needs.branch_eval.outputs.branches )}} @@ -65,8 +70,8 @@ jobs: -DCL_Z_OPTION=/Z7 -DBUILD_EXAMPLES=ON -DOPENCV_ENABLE_NONFREE=ON - ${{ matrix.config == 'uwp' && '-DCMAKE_SYSTEM_NAME=WindowsStore -DCMAKE_SYSTEM_VERSION=10.0 -DBUILD_opencv_gapi=OFF -DWITH_MSMF=OFF -DBUILD_TESTS=OFF -DBUILD_PERF_TESTS=OFF -DBUILD_EXAMPLES=OFF -DBUILD_opencv_apps=OFF' }} - ${{ matrix.config == 'vulcan' && '-DWITH_OPENCL=OFF -DWITH_VULKAN=ON' }} + ${{ matrix.uwp && '-DCMAKE_SYSTEM_NAME=WindowsStore -DCMAKE_SYSTEM_VERSION=10.0 -DBUILD_opencv_gapi=OFF -DWITH_MSMF=OFF -DBUILD_TESTS=OFF -DBUILD_PERF_TESTS=OFF -DBUILD_EXAMPLES=OFF -DBUILD_opencv_apps=OFF' }} + ${{ matrix.vulcan && '-DWITH_OPENCL=OFF -DWITH_VULKAN=ON' }} MAIN_BUILD_DIR: "${{ (github.event.repository.name != 'opencv_contrib') && 'build' || 'build-contrib' }}" OPENCV_FOR_THREADS_NUM: 8 CMAKE_BUILD_PARALLEL_LEVEL: 8 From 1b8a6df4b99bb8a46f4d8c783c2fd74741da0554 Mon Sep 17 00:00:00 2001 From: Maksim Shabunin Date: Fri, 18 Apr 2025 20:36:21 +0300 Subject: [PATCH 26/27] fixup! Unified windows build --- .github/workflows/OCV-PR-Windows.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/OCV-PR-Windows.yaml b/.github/workflows/OCV-PR-Windows.yaml index ec6378aa..923cebee 100644 --- a/.github/workflows/OCV-PR-Windows.yaml +++ b/.github/workflows/OCV-PR-Windows.yaml @@ -71,7 +71,7 @@ jobs: -DBUILD_EXAMPLES=ON -DOPENCV_ENABLE_NONFREE=ON ${{ matrix.uwp && '-DCMAKE_SYSTEM_NAME=WindowsStore -DCMAKE_SYSTEM_VERSION=10.0 -DBUILD_opencv_gapi=OFF -DWITH_MSMF=OFF -DBUILD_TESTS=OFF -DBUILD_PERF_TESTS=OFF -DBUILD_EXAMPLES=OFF -DBUILD_opencv_apps=OFF' }} - ${{ matrix.vulcan && '-DWITH_OPENCL=OFF -DWITH_VULKAN=ON' }} + ${{ matrix.vulkan && '-DWITH_OPENCL=OFF -DWITH_VULKAN=ON' }} MAIN_BUILD_DIR: "${{ (github.event.repository.name != 'opencv_contrib') && 'build' || 'build-contrib' }}" OPENCV_FOR_THREADS_NUM: 8 CMAKE_BUILD_PARALLEL_LEVEL: 8 From e2830ee504b8c53cebff42a78780c1287bdefcd6 Mon Sep 17 00:00:00 2001 From: Maksim Shabunin Date: Mon, 28 Apr 2025 14:23:12 +0300 Subject: [PATCH 27/27] fixup! Unified windows build --- .github/workflows/OCV-PR-Windows.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/OCV-PR-Windows.yaml b/.github/workflows/OCV-PR-Windows.yaml index 923cebee..839a8b44 100644 --- a/.github/workflows/OCV-PR-Windows.yaml +++ b/.github/workflows/OCV-PR-Windows.yaml @@ -70,7 +70,7 @@ jobs: -DCL_Z_OPTION=/Z7 -DBUILD_EXAMPLES=ON -DOPENCV_ENABLE_NONFREE=ON - ${{ matrix.uwp && '-DCMAKE_SYSTEM_NAME=WindowsStore -DCMAKE_SYSTEM_VERSION=10.0 -DBUILD_opencv_gapi=OFF -DWITH_MSMF=OFF -DBUILD_TESTS=OFF -DBUILD_PERF_TESTS=OFF -DBUILD_EXAMPLES=OFF -DBUILD_opencv_apps=OFF' }} + ${{ matrix.uwp && '-DCMAKE_SYSTEM_NAME=WindowsStore -DCMAKE_SYSTEM_VERSION=10.0 -DCMAKE_SYSTEM_PROCESSOR=x86_64 -DBUILD_opencv_gapi=OFF -DWITH_MSMF=OFF -DBUILD_TESTS=OFF -DBUILD_PERF_TESTS=OFF -DBUILD_EXAMPLES=OFF -DBUILD_opencv_apps=OFF' }} ${{ matrix.vulkan && '-DWITH_OPENCL=OFF -DWITH_VULKAN=ON' }} MAIN_BUILD_DIR: "${{ (github.event.repository.name != 'opencv_contrib') && 'build' || 'build-contrib' }}" OPENCV_FOR_THREADS_NUM: 8