diff options
author | Konstantin Tokarev <annulen@yandex.ru> | 2016-11-16 16:32:17 +0300 |
---|---|---|
committer | Konstantin Tokarev <annulen@yandex.ru> | 2016-11-16 21:25:32 +0000 |
commit | f8e075a67932714c35764b098045c276c26c0c2e (patch) | |
tree | 7ba2408a8afcfc409ba8e064f663851ebe279a45 /coin/provisioning/common/03-conan.ps1 | |
parent | f910b2bbf964571014ac4ce193eb8c995c48614d (diff) |
Install conan from pip instead of exe
This allows us to get it working on 32-bit Windows.
Also renamed conan.ps1 and python.ps1 to get proper provisioning order.
Change-Id: I2f21db7dd0edbacb4e44024d1c70b315fba55801
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
Diffstat (limited to 'coin/provisioning/common/03-conan.ps1')
-rw-r--r-- | coin/provisioning/common/03-conan.ps1 | 46 |
1 files changed, 46 insertions, 0 deletions
diff --git a/coin/provisioning/common/03-conan.ps1 b/coin/provisioning/common/03-conan.ps1 new file mode 100644 index 00000000..3c1dbbcf --- /dev/null +++ b/coin/provisioning/common/03-conan.ps1 @@ -0,0 +1,46 @@ +. "$PSScriptRoot\helpers.ps1" + +& pip install --upgrade conan==0.15.0 + +[Environment]::SetEnvironmentVariable("CI_CONAN_BUILDINFO_DIR", "C:\Utils\conanbuildinfos", "Machine") + +function Start-Process-Logged +{ + Write-Host "Start-Process", $args + Start-Process @args +} + +function Run-Conan-Install +{ + Param ( + [string]$ConanfilesDir, + [string]$BuildinfoDir, + [string]$Arch, + [string]$Compiler, + [string]$CompilerVersion, + [string]$CompilerRuntime, + [string]$CompilerLibcxx + ) + + if ($CompilerRuntime) { + $extraArgs = "-s compiler.runtime=$($CompilerRuntime)" + } + + if ($CompilerLibcxx) { + $extraArgs = "-s compiler.libcxx=$($CompilerLibcxx)" + } + + Get-ChildItem -Path "$ConanfilesDir\*.txt" | + ForEach-Object { + $outpwd = "C:\Utils\conanbuildinfos\$($BuildinfoDir)\$($_.BaseName)" + $manifestsDir = "$($_.DirectoryName)\$($_.BaseName).manifests" + New-Item $outpwd -Type directory -Force + Start-Process-Logged ` + conan ` + -WorkingDirectory $outpwd ` + -ArgumentList "install -f $($_.FullName) --verify $($manifestsDir)", ` + '-s', ('compiler="' + $Compiler + '"'), ` + "-s os=Windows -s arch=$($Arch) -s compiler.version=$($CompilerVersion) $($extraArgs)" ` + -NoNewWindow -Wait -Verbose + } +} |