swh:1:snp:f521c49ab17ef7db6ec70b2430e1ed203f50383f
Raw File
Tip revision: de823e2372916621019aa4e1ed27fadc36f41e38 authored by Boyan Meng on 26 November 2021, 17:19:14 UTC
Changed title and introductory text.
Tip revision: de823e2
template-build-win.yml
.template-build-win:
  stage: build
  tags:
    - windows
  extends:
    - .vs2019-environment
    - .test-artifacts
  needs: [meta]
  variables:
  script:
    - $build_directory_full = "..\build\" + $env:CMAKE_PRESET
    - $log_file = $build_directory_full + "\make.txt"
    - (rm -r -fo $build_directory_full)
    - cmd /c if not exist $build_directory_full mkdir $build_directory_full
    - mkdir build
    # Create symlink https://stackoverflow.com/a/34905638/80480
    - cmd /c mklink /D build\$env:CMAKE_PRESET $env:CI_PROJECT_DIR\$build_directory_full
    - $cmake_cmd = "cmake -S . --preset=$env:CMAKE_PRESET -Wno-dev $env:CMAKE_ARGS
      -DOGS_BUILD_PROCESSES=$env:BUILD_PROCESSES"
    - $cmake_cmd
    - Invoke-Expression $cmake_cmd
    - cmake --build --preset=$env:CMAKE_PRESET --target package | Tee-Object -FilePath $log_file
    - if($env:BUILD_TESTS -eq "true") { cmake --build --preset=$env:CMAKE_PRESET --target tests }
    - if($env:BUILD_CTEST -eq "true") { ctest --preset=$env:CMAKE_PRESET --output-junit Tests/ctest.xml }
    - |
      if($env:CHECK_WARNINGS -eq "true" -and (cat $log_file | Select-String -Pattern ': warning') )
      {
          Write-Output 'There were compiler warnings:\n'
          cat $log_file | Select-String -Pattern ': warning'
          exit 1
      }
back to top