azure: Remove MSVC tools from PATH for clang-cl job

Add Windows SDK tools to PATH (for rc).  This requires INCLUDE to be set.

lld-link doesn't seem to default to searching the correct directories, so
LIB needs to be set.

The easiest way to get the correct setting of INLCUDE and LIB env vars seems
to be to import the VS env vars, then revert the PATH.
pull/4250/head
Jon Turney 6 years ago
parent d2172a4780
commit d63a919e0e
No known key found for this signature in database
GPG Key ID: C7C86F0370285C81
  1. 11
      ci/azure-steps.yml

@ -48,6 +48,7 @@ steps:
# add downloads to PATH
$env:Path = "$env:SYSTEM_WORKFOLDER;$env:Path"
$origPath = $env:Path
# import visual studio variables
if ($env:compiler -eq 'msvc2015') {
$vsver = $env:compiler.Replace('msvc', '')
@ -59,14 +60,20 @@ steps:
Install-Module VSSetup -Scope CurrentUser
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') {
# drop visual studio from PATH
# (but leave INCLUDE, LIB and WindowsSdkDir environment variables set)
$env:Path = $origPath
# install llvm for clang-cl builds
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"
# and use Windows SDK tools
$env:Path = "$env:WindowsSdkDir\bin\$env:Arch;$env:Path"
}
# add .NET framework tools to path for resgen for C# tests

Loading…
Cancel
Save