hanchenye-llvm-project/libcxx/appveyor.yml

92 lines
3.3 KiB
YAML
Raw Normal View History

version: '{build}'
shallow_clone: true
build:
verbosity: detailed
configuration:
- Debug
environment:
matrix:
- APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2015
COMPILER: Clang-CL 4.0
MSVC_SETUP_PATH: "C:\\Program Files (x86)\\Microsoft Visual Studio 14.0\\VC\\vcvarsall.bat"
- APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2017
COMPILER: Clang-CL 4.0
MSVC_SETUP_PATH: "C:\\Program Files (x86)\\Microsoft Visual Studio\\2017\\Community\\VC\\Auxiliary\\Build\\vcvarsall.bat"
install:
############################################################################
# All external dependencies are installed in C:\projects\deps
############################################################################
- mkdir C:\projects\deps
- cd C:\projects\deps
############################################################################
# Install Ninja
############################################################################
- set NINJA_URL="https://github.com/ninja-build/ninja/releases/download/v1.6.0/ninja-win.zip"
- appveyor DownloadFile %NINJA_URL% -FileName ninja.zip
- 7z x ninja.zip -oC:\projects\deps\ninja > nul
- set PATH=C:\projects\deps\ninja;%PATH%
- ninja --version
############################################################################
# Install a recent CMake
############################################################################
- set CMAKE_URL="https://cmake.org/files/v3.7/cmake-3.7.2-win64-x64.zip"
- appveyor DownloadFile %CMAKE_URL% -FileName cmake.zip
- 7z x cmake.zip -oC:\projects\deps > nul
- move C:\projects\deps\cmake-* C:\projects\deps\cmake # Move to a version-agnostic directory
- set PATH=C:\projects\deps\cmake\bin;%PATH%
- cmake --version
############################################################################
# Setup the path to Clang-cl
############################################################################
- set PATH="C:\Program Files\LLVM\bin";%PATH%
- clang-cl -v
############################################################################
# Setup the cached copy of LLVM
############################################################################
- git clone --depth=1 http://llvm.org/git/llvm.git
before_build:
- call "$MSVC_SETUP_PATH" amd64
- cd C:\projects\libcxx
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 --no-progress-bar --show-xfail --show-unsupported"
C:\projects\libcxx
#############################################################################
# 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