diff options
author | Jon Turney <jon.turney@dronecode.org.uk> | 2018-10-18 23:06:58 +0100 |
---|---|---|
committer | Jon Turney <jon.turney@dronecode.org.uk> | 2018-11-04 15:42:06 +0000 |
commit | 48351e70cd4732b913c49f6fd42621ff8b6d87f4 (patch) | |
tree | 28385958f0db0edaaf3d88cd5bac5c341323a991 | |
parent | bb0bbfc2abad8925425f13775f2ee514f76ee069 (diff) | |
download | meson-48351e70cd4732b913c49f6fd42621ff8b6d87f4.zip meson-48351e70cd4732b913c49f6fd42621ff8b6d87f4.tar.gz meson-48351e70cd4732b913c49f6fd42621ff8b6d87f4.tar.bz2 |
azure: Add clang-cl/ninja to matrix
Note that Vs2017 tools are also in PATH for llvm build
-rw-r--r-- | azure-pipelines.yml | 4 | ||||
-rw-r--r-- | ci/azure-steps.yml | 16 |
2 files changed, 19 insertions, 1 deletions
diff --git a/azure-pipelines.yml b/azure-pipelines.yml index 8c36abd..5f7e3c4 100644 --- a/azure-pipelines.yml +++ b/azure-pipelines.yml @@ -44,6 +44,10 @@ jobs: arch: x64 compiler: msvc2017 backend: vs2017 + clangclx64ninja: + arch: x64 + compiler: clang-cl + backend: ninja steps: - template: ci/azure-steps.yml diff --git a/ci/azure-steps.yml b/ci/azure-steps.yml index 5c4a058..40581c1 100644 --- a/ci/azure-steps.yml +++ b/ci/azure-steps.yml @@ -49,12 +49,26 @@ steps: $env:Path = "$env:SYSTEM_WORKFOLDER;$env:Path" # import visual studio variables + if ($env:compiler -eq 'msvc2015') { + $vsver = $env:compiler.Replace('msvc', '') + } else { + $vsver = '2017' + } Set-PSRepository -Name PSGallery -InstallationPolicy Trusted Install-Module Pscx -Scope CurrentUser -AllowClobber Install-Module VSSetup -Scope CurrentUser - $vsver = $env:compiler.Replace('msvc', '') Import-VisualStudioVars -VisualStudioVersion $vsver -Architecture $(arch) + # install llvm for clang-cl builds + # (note that we use LIB, WINDRES from VS, so leave those in PATH) + if ($env:compiler -eq 'clang-cl') { + DownloadFile -Source 'http://releases.llvm.org/7.0.0/LLVM-7.0.0-win64.exe' -Destination LLVM-7.0.0-win64.exe + Start-Process .\LLVM-7.0.0-win64.exe -ArgumentList '/S' -Wait + $env:Path = "C:\Program Files\LLVM\bin;$env:Path" + $env:CC = "clang-cl" + $env:CXX = "clang-cl" + } + # add .NET framework tools to path for resgen for C# tests # (always use 32-bit tool, as there doesn't seem to be a 64-bit tool) if ((Get-Command "resgen.exe" -ErrorAction SilentlyContinue) -eq $null) { |