From c653ad4be64491f1713f0756b370d39752901b33 Mon Sep 17 00:00:00 2001 From: nihui Date: Tue, 7 May 2024 11:31:48 +0800 Subject: [PATCH] unified windows ci (#5424) --- .github/workflows/windows-arm-cpu.yml | 57 ---------- .github/workflows/windows-arm-gpu.yml | 59 ---------- ...{windows-arm64-cpu.yml => windows-arm.yml} | 36 +++++-- .github/workflows/windows-arm64-gpu.yml | 59 ---------- .github/workflows/windows-x64-cpu.yml | 102 ------------------ .github/workflows/windows-x86-cpu.yml | 67 ------------ .github/workflows/windows-x86-gpu.yml | 67 ------------ .../{windows-x64-gpu.yml => windows.yml} | 48 ++++++--- 8 files changed, 61 insertions(+), 434 deletions(-) delete mode 100644 .github/workflows/windows-arm-cpu.yml delete mode 100644 .github/workflows/windows-arm-gpu.yml rename .github/workflows/{windows-arm64-cpu.yml => windows-arm.yml} (67%) delete mode 100644 .github/workflows/windows-arm64-gpu.yml delete mode 100644 .github/workflows/windows-x64-cpu.yml delete mode 100644 .github/workflows/windows-x86-cpu.yml delete mode 100644 .github/workflows/windows-x86-gpu.yml rename .github/workflows/{windows-x64-gpu.yml => windows.yml} (70%) diff --git a/.github/workflows/windows-arm-cpu.yml b/.github/workflows/windows-arm-cpu.yml deleted file mode 100644 index 6cf29356c07..00000000000 --- a/.github/workflows/windows-arm-cpu.yml +++ /dev/null @@ -1,57 +0,0 @@ -name: windows-arm-cpu -on: - push: - branches: [master] - paths: - - '.github/workflows/windows-arm-cpu.yml' - - 'CMakeLists.txt' - - 'cmake/**' - - 'src/*' - - 'src/layer/*' - - 'src/layer/arm/**' - - 'tests/**' - pull_request: - branches: [master] - paths: - - '.github/workflows/windows-arm-cpu.yml' - - 'CMakeLists.txt' - - 'cmake/**' - - 'src/*' - - 'src/layer/*' - - 'src/layer/arm/**' - - 'tests/**' -concurrency: - group: windows-arm-cpu-${{ github.ref }} - cancel-in-progress: true -permissions: - contents: read - -jobs: - windows: - name: ${{ matrix.vs-version }} - runs-on: ${{ matrix.os }} - strategy: - matrix: - include: - - vs-version: vs2019 - toolset-version: v142 - os: windows-2022 - - - vs-version: vs2022 - toolset-version: v143 - os: windows-2022 - - env: - UseMultiToolTask: true - steps: - - uses: actions/checkout@v4 - - name: build - run: | - mkdir build; cd build - cmake -T ${{ matrix.toolset-version }},host=x64 -A arm -DNCNN_BUILD_TESTS=OFF -DNCNN_BUILD_TOOLS=OFF -DNCNN_BUILD_EXAMPLES=OFF .. - cmake --build . --config Release -j 4 - - name: build-shared - run: | - mkdir build-shared; cd build-shared - cmake -T ${{ matrix.toolset-version }},host=x64 -A arm -DNCNN_BUILD_TOOLS=OFF -DNCNN_BUILD_EXAMPLES=OFF -DNCNN_SHARED_LIB=ON .. - cmake --build . --config Release -j 4 diff --git a/.github/workflows/windows-arm-gpu.yml b/.github/workflows/windows-arm-gpu.yml deleted file mode 100644 index 787ffdbdc76..00000000000 --- a/.github/workflows/windows-arm-gpu.yml +++ /dev/null @@ -1,59 +0,0 @@ -name: windows-arm-gpu -on: - push: - branches: [master] - paths: - - '.github/workflows/windows-arm-gpu.yml' - - 'CMakeLists.txt' - - 'cmake/**' - - 'src/*' - - 'src/layer/*' - - 'src/layer/arm/**' - - 'src/layer/vulkan/**' - pull_request: - branches: [master] - paths: - - '.github/workflows/windows-arm-gpu.yml' - - 'CMakeLists.txt' - - 'cmake/**' - - 'src/*' - - 'src/layer/*' - - 'src/layer/arm/**' - - 'src/layer/vulkan/**' -concurrency: - group: windows-arm-gpu-${{ github.ref }} - cancel-in-progress: true -permissions: - contents: read - -jobs: - windows: - name: ${{ matrix.vs-version }} - runs-on: ${{ matrix.os }} - strategy: - matrix: - include: - - vs-version: vs2019 - toolset-version: v142 - os: windows-2022 - - - vs-version: vs2022 - toolset-version: v143 - os: windows-2022 - - env: - UseMultiToolTask: true - steps: - - uses: actions/checkout@v4 - with: - submodules: true - - name: build - run: | - mkdir build; cd build - cmake -T ${{ matrix.toolset-version }},host=x64 -A arm -DNCNN_VULKAN=ON -DNCNN_BUILD_TESTS=OFF -DNCNN_BUILD_TOOLS=OFF -DNCNN_BUILD_EXAMPLES=OFF .. - cmake --build . --config Release -j 4 - - name: build-shared - run: | - mkdir build-shared; cd build-shared - cmake -T ${{ matrix.toolset-version }},host=x64 -A arm -DNCNN_VULKAN=ON -DNCNN_BUILD_TOOLS=OFF -DNCNN_BUILD_EXAMPLES=OFF -DNCNN_SHARED_LIB=ON .. - cmake --build . --config Release -j 4 diff --git a/.github/workflows/windows-arm64-cpu.yml b/.github/workflows/windows-arm.yml similarity index 67% rename from .github/workflows/windows-arm64-cpu.yml rename to .github/workflows/windows-arm.yml index 7032385ead0..6c4c54585f1 100644 --- a/.github/workflows/windows-arm64-cpu.yml +++ b/.github/workflows/windows-arm.yml @@ -1,27 +1,29 @@ -name: windows-arm64-cpu +name: windows-arm on: push: branches: [master] paths: - - '.github/workflows/windows-arm64-cpu.yml' + - '.github/workflows/windows-arm.yml' - 'CMakeLists.txt' - 'cmake/**' - 'src/*' - 'src/layer/*' - 'src/layer/arm/**' + - 'src/layer/vulkan/**' - 'tests/**' pull_request: branches: [master] paths: - - '.github/workflows/windows-arm64-cpu.yml' + - '.github/workflows/windows-arm.yml' - 'CMakeLists.txt' - 'cmake/**' - 'src/*' - 'src/layer/*' - 'src/layer/arm/**' + - 'src/layer/vulkan/**' - 'tests/**' concurrency: - group: windows-arm64-cpu-${{ github.ref }} + group: windows-arm-${{ github.ref }} cancel-in-progress: true permissions: contents: read @@ -43,17 +45,31 @@ jobs: env: UseMultiToolTask: true + NCNN_CMAKE_OPTIONS: -DNCNN_BUILD_TESTS=OFF -DNCNN_BUILD_TOOLS=OFF -DNCNN_BUILD_EXAMPLES=OFF -DNCNN_VULKAN=ON + steps: - uses: actions/checkout@v4 - - name: build + with: + submodules: true + - name: arm64 + run: | + mkdir build-arm64; cd build-arm64 + cmake -T ${{ matrix.toolset-version }},host=x64 -A arm64 ${{ env.NCNN_CMAKE_OPTIONS }} .. + cmake --build . --config Release -j 4 + - name: arm + run: | + mkdir build-arm; cd build-arm + cmake -T ${{ matrix.toolset-version }},host=x64 -A arm ${{ env.NCNN_CMAKE_OPTIONS }} .. + cmake --build . --config Release -j 4 + - name: arm64-shared run: | - mkdir build; cd build - cmake -T ${{ matrix.toolset-version }},host=x64 -A arm64 -DNCNN_BUILD_TESTS=OFF -DNCNN_BUILD_TOOLS=OFF -DNCNN_BUILD_EXAMPLES=OFF .. + mkdir build-arm64-shared; cd build-arm64-shared + cmake -T ${{ matrix.toolset-version }},host=x64 -A arm64 ${{ env.NCNN_CMAKE_OPTIONS }} -DNCNN_SHARED_LIB=ON .. cmake --build . --config Release -j 4 - - name: build-shared + - name: arm-shared run: | - mkdir build-shared; cd build-shared - cmake -T ${{ matrix.toolset-version }},host=x64 -A arm64 -DNCNN_BUILD_TOOLS=OFF -DNCNN_BUILD_EXAMPLES=OFF -DNCNN_SHARED_LIB=ON .. + mkdir build-arm-shared; cd build-arm-shared + cmake -T ${{ matrix.toolset-version }},host=x64 -A arm ${{ env.NCNN_CMAKE_OPTIONS }} -DNCNN_SHARED_LIB=ON .. cmake --build . --config Release -j 4 woa-linux: diff --git a/.github/workflows/windows-arm64-gpu.yml b/.github/workflows/windows-arm64-gpu.yml deleted file mode 100644 index fa1b8994b2c..00000000000 --- a/.github/workflows/windows-arm64-gpu.yml +++ /dev/null @@ -1,59 +0,0 @@ -name: windows-arm64-gpu -on: - push: - branches: [master] - paths: - - '.github/workflows/windows-arm64-gpu.yml' - - 'CMakeLists.txt' - - 'cmake/**' - - 'src/*' - - 'src/layer/*' - - 'src/layer/arm/**' - - 'src/layer/vulkan/**' - pull_request: - branches: [master] - paths: - - '.github/workflows/windows-arm64-gpu.yml' - - 'CMakeLists.txt' - - 'cmake/**' - - 'src/*' - - 'src/layer/*' - - 'src/layer/arm/**' - - 'src/layer/vulkan/**' -concurrency: - group: windows-arm64-gpu-${{ github.ref }} - cancel-in-progress: true -permissions: - contents: read - -jobs: - windows: - name: ${{ matrix.vs-version }} - runs-on: ${{ matrix.os }} - strategy: - matrix: - include: - - vs-version: vs2019 - toolset-version: v142 - os: windows-2022 - - - vs-version: vs2022 - toolset-version: v143 - os: windows-2022 - - env: - UseMultiToolTask: true - steps: - - uses: actions/checkout@v4 - with: - submodules: true - - name: build - run: | - mkdir build; cd build - cmake -T ${{ matrix.toolset-version }},host=x64 -A arm64 -DNCNN_VULKAN=ON -DNCNN_BUILD_TESTS=OFF -DNCNN_BUILD_TOOLS=OFF -DNCNN_BUILD_EXAMPLES=OFF .. - cmake --build . --config Release -j 4 - - name: build-shared - run: | - mkdir build-shared; cd build-shared - cmake -T ${{ matrix.toolset-version }},host=x64 -A arm64 -DNCNN_VULKAN=ON -DNCNN_BUILD_TOOLS=OFF -DNCNN_BUILD_EXAMPLES=OFF -DNCNN_SHARED_LIB=ON .. - cmake --build . --config Release -j 4 diff --git a/.github/workflows/windows-x64-cpu.yml b/.github/workflows/windows-x64-cpu.yml deleted file mode 100644 index 67def785c7c..00000000000 --- a/.github/workflows/windows-x64-cpu.yml +++ /dev/null @@ -1,102 +0,0 @@ -name: windows-x64-cpu -on: - push: - branches: [master] - paths: - - '.github/workflows/windows-x64-cpu.yml' - - 'CMakeLists.txt' - - 'cmake/**' - - 'src/*' - - 'src/layer/*' - - 'src/layer/x86/**' - - 'tests/**' - - 'tools/**' - - '!tools/pnnx/**' - - 'examples/**' - pull_request: - branches: [master] - paths: - - '.github/workflows/windows-x64-cpu.yml' - - 'CMakeLists.txt' - - 'cmake/**' - - 'src/*' - - 'src/layer/*' - - 'src/layer/x86/**' - - 'tests/**' - - 'tools/**' - - '!tools/pnnx/**' - - 'examples/**' -concurrency: - group: windows-x64-cpu-${{ github.ref }} - cancel-in-progress: true -permissions: - contents: read - -jobs: - windows: - name: ${{ matrix.vs-version }} - runs-on: ${{ matrix.os }} - strategy: - matrix: - include: - - vs-version: vs2015 - toolset-version: v140 - os: windows-2019 - - - vs-version: vs2017 - toolset-version: v141 - os: windows-2019 - - - vs-version: vs2019 - toolset-version: v142 - os: windows-2022 - - - vs-version: vs2022 - toolset-version: v143 - os: windows-2022 - - env: - UseMultiToolTask: true - steps: - - uses: actions/checkout@v4 - - name: cache-protobuf - id: cache-protobuf - uses: actions/cache@v4 - with: - path: "protobuf-install" - key: protobuf-${{ matrix.vs-version }}-x64-install-2 - - name: protobuf - if: steps.cache-protobuf.outputs.cache-hit != 'true' - run: | - Invoke-WebRequest -Uri https://github.com/protocolbuffers/protobuf/archive/v3.11.2.zip -OutFile protobuf-3.11.2.zip - 7z x ./protobuf-3.11.2.zip - cd protobuf-3.11.2 - mkdir build-${{ matrix.vs-version }}; cd build-${{ matrix.vs-version }}; cmake -T ${{ matrix.toolset-version }},host=x64 -A x64 -DCMAKE_INSTALL_PREFIX="$env:GITHUB_WORKSPACE\protobuf-install" -Dprotobuf_BUILD_TESTS=OFF -Dprotobuf_MSVC_STATIC_RUNTIME=OFF -DNCNN_BUILD_TESTS=ON ../cmake - cmake --build . --config Release -j 4 - cmake --build . --config Release --target install - - name: build-sse2 - run: | - mkdir build-sse2; cd build-sse2 - cmake -T ${{ matrix.toolset-version }},host=x64 -A x64 -Dprotobuf_DIR="$env:GITHUB_WORKSPACE\protobuf-install\cmake" -DNCNN_RUNTIME_CPU=OFF -DNCNN_AVX2=OFF -DNCNN_AVX=OFF -DNCNN_AVX512=OFF -DNCNN_XOP=OFF -DNCNN_BUILD_TESTS=ON -DNCNN_DISABLE_RTTI=ON -DNCNN_DISABLE_EXCEPTION=ON .. - cmake --build . --config Release -j 4 - - name: test-sse2 - run: cd build-sse2; ctest -C Release --output-on-failure -j 4 - - name: build-shared - run: | - mkdir build-shared; cd build-shared - cmake -T ${{ matrix.toolset-version }},host=x64 -A x64 -Dprotobuf_DIR="$env:GITHUB_WORKSPACE\protobuf-install\cmake" -DNCNN_RUNTIME_CPU=ON -DNCNN_AVX2=ON -DNCNN_SHARED_LIB=ON .. - cmake --build . --config Release -j 4 - - name: build-avx2 - run: | - mkdir build-avx2; cd build-avx2 - cmake -T ${{ matrix.toolset-version }},host=x64 -A x64 -Dprotobuf_DIR="$env:GITHUB_WORKSPACE\protobuf-install\cmake" -DNCNN_RUNTIME_CPU=OFF -DNCNN_AVX2=ON -DNCNN_AVX512=OFF -DNCNN_XOP=OFF -DNCNN_AVXVNNI=OFF -DNCNN_BUILD_TESTS=ON .. - cmake --build . --config Release -j 4 - - name: test-avx2 - run: cd build-avx2; ctest -C Release --output-on-failure -j 4 - - name: build-avx - run: | - mkdir build-avx; cd build-avx - cmake -T ${{ matrix.toolset-version }},host=x64 -A x64 -Dprotobuf_DIR="$env:GITHUB_WORKSPACE\protobuf-install\cmake" -DNCNN_RUNTIME_CPU=OFF -DNCNN_AVX2=OFF -DNCNN_AVX512=OFF -DNCNN_XOP=OFF -DNCNN_AVX=ON -DNCNN_BUILD_TESTS=ON .. - cmake --build . --config Release -j 4 - - name: test-avx - run: cd build-avx; ctest -C Release --output-on-failure -j 4 diff --git a/.github/workflows/windows-x86-cpu.yml b/.github/workflows/windows-x86-cpu.yml deleted file mode 100644 index 68f09157627..00000000000 --- a/.github/workflows/windows-x86-cpu.yml +++ /dev/null @@ -1,67 +0,0 @@ -name: windows-x86-cpu -on: - push: - branches: [master] - paths: - - '.github/workflows/windows-x86-cpu.yml' - - 'CMakeLists.txt' - - 'cmake/**' - - 'src/*' - - 'src/layer/*' - - 'src/layer/x86/**' - - 'tests/**' - pull_request: - branches: [master] - paths: - - '.github/workflows/windows-x86-cpu.yml' - - 'CMakeLists.txt' - - 'cmake/**' - - 'src/*' - - 'src/layer/*' - - 'src/layer/x86/**' - - 'tests/**' -concurrency: - group: windows-x86-cpu-${{ github.ref }} - cancel-in-progress: true -permissions: - contents: read - -jobs: - windows-x86: - name: ${{ matrix.vs-version }} - runs-on: ${{ matrix.os }} - strategy: - matrix: - include: - - vs-version: vs2015 - toolset-version: v140 - os: windows-2019 - - - vs-version: vs2017 - toolset-version: v141 - os: windows-2019 - - - vs-version: vs2019 - toolset-version: v142 - os: windows-2022 - - - vs-version: vs2022 - toolset-version: v143 - os: windows-2022 - - env: - UseMultiToolTask: true - steps: - - uses: actions/checkout@v4 - - name: build - run: | - mkdir build; cd build - cmake -T ${{ matrix.toolset-version }},host=x64 -A Win32 -DNCNN_BUILD_TESTS=ON -DNCNN_BUILD_TOOLS=OFF -DNCNN_BUILD_EXAMPLES=OFF .. - cmake --build . --config Release -j 4 - - name: test - run: cd build; ctest -C Release --output-on-failure -j 4 - - name: build-shared - run: | - mkdir build-shared; cd build-shared - cmake -T ${{ matrix.toolset-version }},host=x64 -A Win32 -DNCNN_BUILD_TOOLS=OFF -DNCNN_BUILD_EXAMPLES=OFF -DNCNN_SHARED_LIB=ON .. - cmake --build . --config Release -j 4 diff --git a/.github/workflows/windows-x86-gpu.yml b/.github/workflows/windows-x86-gpu.yml deleted file mode 100644 index 4f84665b479..00000000000 --- a/.github/workflows/windows-x86-gpu.yml +++ /dev/null @@ -1,67 +0,0 @@ -name: windows-x86-gpu -on: - push: - branches: [master] - paths: - - '.github/workflows/windows-x86-gpu.yml' - - 'CMakeLists.txt' - - 'cmake/**' - - 'src/*' - - 'src/layer/*' - - 'src/layer/x86/**' - - 'src/layer/vulkan/**' - pull_request: - branches: [master] - paths: - - '.github/workflows/windows-x86-gpu.yml' - - 'CMakeLists.txt' - - 'cmake/**' - - 'src/*' - - 'src/layer/*' - - 'src/layer/x86/**' - - 'src/layer/vulkan/**' -concurrency: - group: windows-x86-gpu-${{ github.ref }} - cancel-in-progress: true -permissions: - contents: read - -jobs: - windows-x86: - name: ${{ matrix.vs-version }} - runs-on: ${{ matrix.os }} - strategy: - matrix: - include: - - vs-version: vs2015 - toolset-version: v140 - os: windows-2019 - - - vs-version: vs2017 - toolset-version: v141 - os: windows-2019 - - - vs-version: vs2019 - toolset-version: v142 - os: windows-2022 - - - vs-version: vs2022 - toolset-version: v143 - os: windows-2022 - - env: - UseMultiToolTask: true - steps: - - uses: actions/checkout@v4 - with: - submodules: true - - name: build - run: | - mkdir build; cd build - cmake -T ${{ matrix.toolset-version }},host=x64 -A Win32 -DNCNN_VULKAN=ON -DNCNN_BUILD_TESTS=OFF -DNCNN_BUILD_TOOLS=OFF -DNCNN_BUILD_EXAMPLES=OFF .. - cmake --build . --config Release -j 4 - - name: build-shared - run: | - mkdir build-shared; cd build-shared - cmake -T ${{ matrix.toolset-version }},host=x64 -A Win32 -DNCNN_VULKAN=ON -DNCNN_BUILD_TOOLS=OFF -DNCNN_BUILD_EXAMPLES=OFF -DNCNN_SHARED_LIB=ON .. - cmake --build . --config Release -j 4 diff --git a/.github/workflows/windows-x64-gpu.yml b/.github/workflows/windows.yml similarity index 70% rename from .github/workflows/windows-x64-gpu.yml rename to .github/workflows/windows.yml index 57be84a602f..b171e1c8c8c 100644 --- a/.github/workflows/windows-x64-gpu.yml +++ b/.github/workflows/windows.yml @@ -1,9 +1,9 @@ -name: windows-x64-gpu +name: windows on: push: branches: [master] paths: - - '.github/workflows/windows-x64-gpu.yml' + - '.github/workflows/windows.yml' - 'CMakeLists.txt' - 'cmake/**' - 'src/*' @@ -17,7 +17,7 @@ on: pull_request: branches: [master] paths: - - '.github/workflows/windows-x64-gpu.yml' + - '.github/workflows/windows.yml' - 'CMakeLists.txt' - 'cmake/**' - 'src/*' @@ -29,7 +29,7 @@ on: - '!tools/pnnx/**' - 'examples/**' concurrency: - group: windows-x64-gpu-${{ github.ref }} + group: windows-${{ github.ref }} cancel-in-progress: true permissions: contents: read @@ -106,19 +106,41 @@ jobs: cmake --build . --config Release -j 4 mkdir "$env:GITHUB_WORKSPACE/swiftshader-install" Copy-Item -Path "Windows\*" -Destination "$env:GITHUB_WORKSPACE\swiftshader-install" - - name: build + + - name: x64 run: | - mkdir build; cd build + mkdir build-x64; cd build-x64 cmake -T ${{ matrix.toolset-version }},host=x64 -A x64 -Dprotobuf_DIR="$env:GITHUB_WORKSPACE\protobuf-install\cmake" -DNCNN_VULKAN=ON -DNCNN_BUILD_TESTS=ON .. cmake --build . --config Release -j 4 - - name: test + - name: x64-test if: matrix.vs-version != 'vs2015' run: | - echo "[Processor]`nThreadCount=1`n" > build/tests/Release/SwiftShader.ini - Copy-Item -Path "$env:GITHUB_WORKSPACE\swiftshader-install\vulkan-1.dll" -Destination 'build\tests' - cd build; ctest -C Release --output-on-failure -j 4 - - name: build-shared + echo "[Processor]`nThreadCount=1`n" > build-x64/tests/Release/SwiftShader.ini + Copy-Item -Path "$env:GITHUB_WORKSPACE\swiftshader-install\vulkan-1.dll" -Destination 'build-x64\tests' + cd build-x64; ctest -C Release --output-on-failure -j 4 + + - name: x64-sse2 + run: | + mkdir build-x64-sse2; cd build-x64-sse2 + cmake -T ${{ matrix.toolset-version }},host=x64 -A x64 -DNCNN_RUNTIME_CPU=OFF -DNCNN_XOP=OFF -DNCNN_AVX=OFF -DNCNN_AVX2=OFF -DNCNN_AVX512=OFF -DNCNN_BUILD_TESTS=ON -DNCNN_DISABLE_RTTI=ON -DNCNN_DISABLE_EXCEPTION=ON -DNCNN_BUILD_TOOLS=OFF -DNCNN_BUILD_EXAMPLES=OFF .. + cmake --build . --config Release -j 4 + - name: x64-sse2-test + run: cd build-x64-sse2; ctest -C Release --output-on-failure -j 4 + + - name: x64-avx run: | - mkdir build-shared; cd build-shared - cmake -T ${{ matrix.toolset-version }},host=x64 -A x64 -Dprotobuf_DIR="$env:GITHUB_WORKSPACE\protobuf-install\cmake" -DNCNN_VULKAN=ON -DNCNN_SHARED_LIB=ON .. + mkdir build-x64-avx; cd build-x64-avx + cmake -T ${{ matrix.toolset-version }},host=x64 -A x64 -DNCNN_RUNTIME_CPU=OFF -DNCNN_XOP=OFF -DNCNN_AVX=ON -DNCNN_AVX2=OFF -DNCNN_AVX512=OFF -DNCNN_BUILD_TESTS=ON -DNCNN_DISABLE_RTTI=ON -DNCNN_DISABLE_EXCEPTION=ON -DNCNN_BUILD_TOOLS=OFF -DNCNN_BUILD_EXAMPLES=OFF .. cmake --build . --config Release -j 4 + - name: x64-avx-test + run: cd build-x64-avx; ctest -C Release --output-on-failure -j 4 + + - name: x86 + run: | + mkdir build-x86; cd build-x86 + cmake -T ${{ matrix.toolset-version }},host=x64 -A Win32 -DNCNN_SHARED_LIB=ON -DNCNN_BUILD_TESTS=ON -DNCNN_BUILD_TOOLS=OFF -DNCNN_BUILD_EXAMPLES=OFF .. + cmake --build . --config Release -j 4 + - name: x86-test + run: | + Copy-Item -Path "build-x86\src\Release\ncnn.dll" -Destination 'build-x86\tests' + cd build-x86; ctest -C Release --output-on-failure -j 4