1version: '{build}' 2 3shallow_clone: true 4 5build: 6 verbosity: detailed 7 8configuration: 9 - Debug 10 11environment: 12 matrix: 13 - APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2017 14 CMAKE_OPTIONS: -DCMAKE_C_COMPILER=clang-cl.exe -DCMAKE_CXX_COMPILER=clang-cl.exe 15 CLANG_VERSION: ToT 16 MSVC_SETUP_PATH: C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Auxiliary\Build\vcvarsall.bat 17 MSVC_SETUP_ARG: x86 18 GENERATOR: Ninja 19 MAKE_PROGRAM: ninja 20 APPVEYOR_SAVE_CACHE_ON_ERROR: true 21# TODO: Maybe re-enable this configuration? Do we want to support MSVC 2015's runtime? 22# - APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2015 23# MINGW_PATH: C:\mingw-w64\i686-6.3.0-posix-dwarf-rt_v5-rev1\mingw32\bin 24# GENERATOR: MinGW Makefiles 25# MAKE_PROGRAM: mingw32-make 26# APPVEYOR_SAVE_CACHE_ON_ERROR: true 27 28install: 29 ############################################################################ 30 # All external dependencies are installed in C:\projects\deps 31 ############################################################################ 32 - call "%APPVEYOR_BUILD_FOLDER%\\appveyor-reqs-install.cmd" 33 34before_build: 35 - if DEFINED MSVC_SETUP_PATH call "%MSVC_SETUP_PATH%" %MSVC_SETUP_ARG% 36 - cd %APPVEYOR_BUILD_FOLDER% 37 38build_script: 39 - md C:\projects\build-libcxx 40 - cd C:\projects\build-libcxx 41 - echo %configuration% 42 43 ############################################################################# 44 # Configuration Step 45 ############################################################################# 46 - cmake -G "%GENERATOR%" %CMAKE_OPTIONS% 47 "-DCMAKE_BUILD_TYPE=%configuration%" 48 "-DLLVM_PATH=C:\projects\deps\llvm" -DLIBCXX_ENABLE_EXPERIMENTAL_LIBRARY=OFF 49 -DLLVM_LIT_ARGS="-sv --show-xfail --show-unsupported" 50 %APPVEYOR_BUILD_FOLDER% 51 52 ############################################################################# 53 # Build Step 54 ############################################################################# 55 - "%MAKE_PROGRAM%" 56 57test_script: 58 - "%MAKE_PROGRAM% check-cxx" 59 60on_failure: 61 - appveyor PushArtifact CMakeFiles/CMakeOutput.log 62 - appveyor PushArtifact CMakeFiles/CMakeError.log 63 64artifacts: 65 - path: '_build/CMakeFiles/*.log' 66 name: logs 67 68cache: 69 - C:\projects\deps\ninja 70 - C:\projects\deps\cmake 71 - C:\projects\deps\llvm-installer.exe 72