This commit is contained in:
Robert Schumacher 2018-02-07 17:47:53 -08:00
commit 1e3435e32b
5 changed files with 26 additions and 25 deletions

View File

@ -190,10 +190,10 @@ function vcpkgInvokeCommandClean()
Write-Verbose "Clean-Executing: ${executable} ${arguments}"
$scriptsDir = split-path -parent $script:MyInvocation.MyCommand.Definition
$cleanEnvScript = "$scriptsDir\VcpkgPowershellUtils-ClearEnvironment.ps1"
$command = "& `"$cleanEnvScript`"; & `"$executable`" $arguments"
$bytes = [System.Text.Encoding]::Unicode.GetBytes($command)
$encodedCommand = [Convert]::ToBase64String($bytes)
$arg = "-NoProfile -ExecutionPolicy Bypass -encodedCommand $encodedCommand"
$tripleQuotes = "`"`"`""
$argumentsWithEscapedQuotes = $arguments -replace "`"", $tripleQuotes
$command = ". $tripleQuotes$cleanEnvScript$tripleQuotes; & $tripleQuotes$executable$tripleQuotes $argumentsWithEscapedQuotes"
$arg = "-NoProfile", "-ExecutionPolicy Bypass", "-command $command"
$process = Start-Process -FilePath powershell.exe -ArgumentList $arg -PassThru -NoNewWindow
Wait-Process -InputObject $process
@ -226,3 +226,23 @@ function vcpkgFormatElapsedTime([TimeSpan]$ts)
throw $ts
}
function vcpkgFindFileRecursivelyUp()
{
param(
[ValidateNotNullOrEmpty()]
[Parameter(Mandatory=$true)][string]$startingDir,
[ValidateNotNullOrEmpty()]
[Parameter(Mandatory=$true)][string]$filename
)
$currentDir = $startingDir
while (!($currentDir -eq "") -and !(Test-Path "$currentDir\$filename"))
{
Write-Verbose "Examining $currentDir for $filename"
$currentDir = Split-path $currentDir -Parent
}
Write-Verbose "Examining $currentDir for $filename - Found"
return $currentDir
}

View File

@ -6,7 +6,7 @@ param(
$scriptsDir = split-path -parent $script:MyInvocation.MyCommand.Definition
. "$scriptsDir\VcpkgPowershellUtils.ps1"
$vcpkgRootDir = & $scriptsDir\findFileRecursivelyUp.ps1 $scriptsDir .vcpkg-root
$vcpkgRootDir = vcpkgFindFileRecursivelyUp $scriptsDir .vcpkg-root
Write-Verbose("vcpkg Path " + $vcpkgRootDir)

View File

@ -7,7 +7,7 @@ $scriptsDir = split-path -parent $script:MyInvocation.MyCommand.Definition
. "$scriptsDir\VcpkgPowershellUtils.ps1"
Write-Verbose "Fetching dependency: $Dependency"
$vcpkgRootDir = & $scriptsDir\findFileRecursivelyUp.ps1 $scriptsDir .vcpkg-root
$vcpkgRootDir = vcpkgFindFileRecursivelyUp $scriptsDir .vcpkg-root
$downloadsDir = "$vcpkgRootDir\downloads"

View File

@ -1,18 +0,0 @@
[CmdletBinding()]
param(
[ValidateNotNullOrEmpty()]
[Parameter(Mandatory=$true)][string]$startingDir,
[ValidateNotNullOrEmpty()]
[Parameter(Mandatory=$true)][string]$filename
)
$ErrorActionPreference = "Stop"
$currentDir = $startingDir
while (!($currentDir -eq "") -and !(Test-Path "$currentDir\$filename"))
{
Write-Verbose "Examining $currentDir for $filename"
$currentDir = Split-path $currentDir -Parent
}
Write-Verbose "Examining $currentDir for $filename - Found"
return $currentDir

View File

@ -16,7 +16,6 @@ Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "scripts", "scripts", "{F589
..\scripts\bootstrap.ps1 = ..\scripts\bootstrap.ps1
..\scripts\fetchDependency.ps1 = ..\scripts\fetchDependency.ps1
..\scripts\findAnyMSBuildWithCppPlatformToolset.ps1 = ..\scripts\findAnyMSBuildWithCppPlatformToolset.ps1
..\scripts\findFileRecursivelyUp.ps1 = ..\scripts\findFileRecursivelyUp.ps1
..\scripts\findVisualStudioInstallationInstances.ps1 = ..\scripts\findVisualStudioInstallationInstances.ps1
..\scripts\get_triplet_environment.cmake = ..\scripts\get_triplet_environment.cmake
..\scripts\getProgramFiles32bit.ps1 = ..\scripts\getProgramFiles32bit.ps1