appveyor.yml 2.3 KB

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