| version: '{build}' |
| |
| shallow_clone: true |
| |
| build: |
| verbosity: detailed |
| |
| configuration: |
| - Debug |
| |
| environment: |
| matrix: |
| - APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2017 |
| CLANG_VERSION: ToT |
| MSVC_SETUP_PATH: C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Auxiliary\Build\vcvarsall.bat |
| MSVC_SETUP_ARG: x86 |
| APPVEYOR_SAVE_CACHE_ON_ERROR: true |
| - APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2015 |
| CLANG_VERSION: 4 |
| MSVC_SETUP_PATH: C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\vcvarsall.bat |
| MSVC_SETUP_ARG: x86_amd64 |
| APPVEYOR_SAVE_CACHE_ON_ERROR: true |
| |
| install: |
| ############################################################################ |
| # All external dependencies are installed in C:\projects\deps |
| ############################################################################ |
| - call "%APPVEYOR_BUILD_FOLDER%\\install-appveyor-reqs.cmd" |
| |
| before_build: |
| - call "%MSVC_SETUP_PATH%" %MSVC_SETUP_ARG% |
| - cd %APPVEYOR_BUILD_FOLDER% |
| |
| build_script: |
| - md C:\projects\build-libcxx |
| - cd C:\projects\build-libcxx |
| - echo %configuration% |
| |
| ############################################################################# |
| # Configuration Step |
| ############################################################################# |
| - cmake -G Ninja %extra_cmake_flags% |
| -DCMAKE_C_COMPILER=clang-cl.exe -DCMAKE_CXX_COMPILER=clang-cl.exe |
| "-DCMAKE_BUILD_TYPE=%configuration%" |
| "-DLLVM_PATH=C:\projects\deps\llvm" -DLIBCXX_ENABLE_EXPERIMENTAL_LIBRARY=OFF |
| -DLLVM_LIT_ARGS="-sv --show-xfail --show-unsupported" |
| %APPVEYOR_BUILD_FOLDER% |
| |
| ############################################################################# |
| # Build Step |
| ############################################################################# |
| - ninja |
| |
| test_script: |
| - ninja check-cxx |
| |
| on_failure: |
| - appveyor PushArtifact CMakeFiles/CMakeOutput.log |
| - appveyor PushArtifact CMakeFiles/CMakeError.log |
| |
| artifacts: |
| - path: '_build/CMakeFiles/*.log' |
| name: logs |
| |
| cache: |
| - C:\projects\deps\ninja |
| - C:\projects\deps\cmake |
| - C:\projects\deps\llvm-installer.exe |