aboutsummaryrefslogtreecommitdiff
path: root/scripts/findAnyMSBuildWithCppPlatformToolset.ps1
diff options
context:
space:
mode:
authorflysha <flysha@live.com>2017-01-25 10:01:57 +0800
committerflysha <flysha@live.com>2017-01-25 10:01:57 +0800
commit033c7d0af6a5f5129e73ebb63b1abea0db128da6 (patch)
treef0998507be51a02b1b9fa1e4e3836b95fe826ab8 /scripts/findAnyMSBuildWithCppPlatformToolset.ps1
parentce9741f71b079dad944e177daf984160bb9ce1bb (diff)
parenta4bcf67010a438a554696988e17f1066be629dba (diff)
downloadvcpkg-033c7d0af6a5f5129e73ebb63b1abea0db128da6.tar.gz
vcpkg-033c7d0af6a5f5129e73ebb63b1abea0db128da6.zip
Merge remote-tracking branch 'refs/remotes/origin/master'
Diffstat (limited to 'scripts/findAnyMSBuildWithCppPlatformToolset.ps1')
-rw-r--r--scripts/findAnyMSBuildWithCppPlatformToolset.ps132
1 files changed, 32 insertions, 0 deletions
diff --git a/scripts/findAnyMSBuildWithCppPlatformToolset.ps1 b/scripts/findAnyMSBuildWithCppPlatformToolset.ps1
new file mode 100644
index 000000000..1be4a4e6d
--- /dev/null
+++ b/scripts/findAnyMSBuildWithCppPlatformToolset.ps1
@@ -0,0 +1,32 @@
+[CmdletBinding()]
+param(
+
+)
+
+$scriptsDir = split-path -parent $MyInvocation.MyCommand.Definition
+
+# VS2017
+$VisualStudio2017InstallationInstances = & $scriptsDir\findVisualStudioInstallationInstances.ps1
+foreach ($instance in $VisualStudio2017InstallationInstances)
+{
+ $VCFolder= "$instance\VC\Tools\MSVC\"
+
+ if (Test-Path $VCFolder)
+ {
+ return "$instance\MSBuild\15.0\Bin\MSBuild.exe","v141"
+ }
+}
+
+# VS2015
+$CandidateProgramFiles = "${env:PROGRAMFILES(X86)}", "${env:PROGRAMFILES}"
+foreach ($ProgramFiles in $CandidateProgramFiles)
+{
+ $clExe= "$ProgramFiles\Microsoft Visual Studio 14.0\\VC\bin\cl.exe"
+
+ if (Test-Path $clExe)
+ {
+ return "$ProgramFiles\MSBuild\14.0\Bin\MSBuild.exe","v140"
+ }
+}
+
+throw "Could not find MSBuild with C++ support. VS2015 or above with C++ support need to be installed." \ No newline at end of file