aboutsummaryrefslogtreecommitdiff
path: root/scripts/bootstrap.ps1
diff options
context:
space:
mode:
Diffstat (limited to 'scripts/bootstrap.ps1')
-rw-r--r--scripts/bootstrap.ps131
1 files changed, 31 insertions, 0 deletions
diff --git a/scripts/bootstrap.ps1 b/scripts/bootstrap.ps1
new file mode 100644
index 000000000..568f56995
--- /dev/null
+++ b/scripts/bootstrap.ps1
@@ -0,0 +1,31 @@
+[CmdletBinding()]
+param(
+ [ValidateNotNullOrEmpty()]
+ [string]$disableMetrics = "0"
+)
+
+$vcpkgRoot = (get-item $PSScriptRoot).parent.FullName
+
+$gitHash = git rev-parse HEAD
+Write-Verbose("Git hash is " + $gitHash)
+$gitStartOfHash = $gitHash.substring(0,6)
+$vcpkgSourcesPath = "$vcpkgRoot\toolsrc"
+Write-Verbose("vcpkg Path " + $vcpkgSourcesPath)
+
+if (!(Test-Path $vcpkgSourcesPath))
+{
+ New-Item -ItemType directory -Path $vcpkgSourcesPath -force | Out-Null
+}
+
+try{
+ pushd $vcpkgSourcesPath
+ cmd /c "$env:VS140COMNTOOLS..\..\VC\vcvarsall.bat" x86 "&" msbuild "/p:VCPKG_VERSION=-$gitHash" "/p:DISABLE_METRICS=$disableMetrics" /p:Configuration=Release /p:Platform=x86 /m
+
+ Write-Verbose("Placing vcpkg.exe in the correct location")
+
+ Copy-Item $vcpkgSourcesPath\Release\vcpkg.exe $vcpkgRoot\vcpkg.exe | Out-Null
+ Copy-Item $vcpkgSourcesPath\Release\vcpkgmetricsuploader.exe $vcpkgRoot\scripts\vcpkgmetricsuploader.exe | Out-Null
+}
+finally{
+ popd
+}