diff --git a/.gitea/workflows/build_and_test.yml b/.gitea/workflows/build_and_test.yml index f3dee41f..eb1c7f0f 100644 --- a/.gitea/workflows/build_and_test.yml +++ b/.gitea/workflows/build_and_test.yml @@ -239,17 +239,32 @@ jobs: build-rugnux-windows: name: build:rugnux:windows runs-on: windows-11-cuda-qt + timeout-minutes: 120 steps: - uses: actions/checkout@v4 + # cmd, not bash: the Windows runner has no bash, and every cmake invocation needs the MSVC + # environment from vcvars64.bat first -- same shape as build-windows above. No Qt in + # CMAKE_PREFIX_PATH: JFJOCH_RUGNUX_ONLY is the portable subtree minus viewer/, so C:/deps + # (Eigen, ZLIB) is all it needs. - name: Configure rugnux build - shell: bash - # No Qt needed: JFJOCH_RUGNUX_ONLY is the portable subtree minus viewer/. + shell: cmd run: | - cmake -S . -B build-rugnux -DJFJOCH_RUGNUX_ONLY=ON -DJFJOCH_USE_CUDA=ON \ - ${{ env.MSVC_ARCH_CMAKE_FLAGS }} -DCMAKE_BUILD_TYPE=Release + for /f "usebackq tokens=*" %%i in (`"%ProgramFiles(x86)%\Microsoft Visual Studio\Installer\vswhere.exe" -latest -property installationPath`) do set "VSPATH=%%i" + call "%VSPATH%\VC\Auxiliary\Build\vcvars64.bat" + cmake -G Ninja -B build-rugnux -DJFJOCH_RUGNUX_ONLY=ON -DJFJOCH_USE_CUDA=ON -DCMAKE_BUILD_TYPE=Release ${{ env.MSVC_ARCH_CMAKE_FLAGS }} -DCMAKE_PREFIX_PATH="C:/deps" + - name: Build rugnux + shell: cmd + run: | + for /f "usebackq tokens=*" %%i in (`"%ProgramFiles(x86)%\Microsoft Visual Studio\Installer\vswhere.exe" -latest -property installationPath`) do set "VSPATH=%%i" + call "%VSPATH%\VC\Auxiliary\Build\vcvars64.bat" + cmake --build build-rugnux - name: Build rugnux zip - shell: bash - run: cmake --build build-rugnux --config Release --target PACKAGE -j + shell: cmd + run: | + for /f "usebackq tokens=*" %%i in (`"%ProgramFiles(x86)%\Microsoft Visual Studio\Installer\vswhere.exe" -latest -property installationPath`) do set "VSPATH=%%i" + call "%VSPATH%\VC\Auxiliary\Build\vcvars64.bat" + cd build-rugnux + cpack - name: Upload rugnux zip to release if: github.ref_type == 'tag' shell: powershell