-
Notifications
You must be signed in to change notification settings - Fork 1.2k
/
Copy pathadd_msbuild_path.cmd
94 lines (70 loc) · 2.78 KB
/
add_msbuild_path.cmd
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
::-------------------------------------------------------------------------------------------------------
:: Copyright (C) Microsoft. All rights reserved.
:: Licensed under the MIT license. See LICENSE.txt file in the project root for full license information.
::-------------------------------------------------------------------------------------------------------
:: add_msbuild_path.cmd
::
:: Locate msbuild.exe and add it to the PATH
set FORCE_MSBUILD_VERSION=%1
if "%FORCE_MSBUILD_VERSION%" == "msbuild14" (
echo Skipping Dev15 and trying Dev14...
goto :LABEL_USE_MSBUILD_14
)
where /q msbuild.exe
if "%ERRORLEVEL%" == "0" (
goto :SkipMsBuildSetup
)
REM Try Dev15 first
echo Trying to locate Dev15...
:LABEL_USE_MSBUILD_15
set MSBUILD_VERSION=15.0
set "MSBUILD_PATH=%ProgramFiles(x86)%\Microsoft Visual Studio\Preview\Enterprise\MSBuild\15.0\Bin"
if not exist "%MSBUILD_PATH%\msbuild.exe" (
set "MSBUILD_PATH=%VSINSTALLDIR%MSBuild\%MSBUILD_VERSION%\Bin"
)
if not exist "%MSBUILD_PATH%\msbuild.exe" (
set "MSBUILD_PATH=%ProgramFiles%\Microsoft Visual Studio\2017\Enterprise\MSBuild\%MSBUILD_VERSION%\Bin\x86"
)
if not exist "%MSBUILD_PATH%\msbuild.exe" (
set "MSBUILD_PATH=%ProgramFiles(x86)%\Microsoft Visual Studio\2017\Enterprise\MSBuild\%MSBUILD_VERSION%\Bin"
)
if not exist "%MSBUILD_PATH%\msbuild.exe" (
set "MSBUILD_PATH=%ProgramFiles(x86)%\Microsoft Visual Studio\2017\Enterprise\MSBuild\%MSBUILD_VERSION%\Bin\amd64"
)
if exist "%MSBUILD_PATH%\msbuild.exe" (
goto :MSBuildFound
)
echo Dev15 not found, trying to locate Dev14...
:LABEL_USE_MSBUILD_14
set MSBUILD_VERSION=14.0
set "MSBUILD_PATH=%ProgramFiles%\msbuild\%MSBUILD_VERSION%\Bin\x86"
if not exist "%MSBUILD_PATH%\msbuild.exe" (
set "MSBUILD_PATH=%ProgramFiles(x86)%\msbuild\%MSBUILD_VERSION%\Bin"
)
if not exist "%MSBUILD_PATH%\msbuild.exe" (
set "MSBUILD_PATH=%ProgramFiles(x86)%\msbuild\%MSBUILD_VERSION%\Bin\amd64"
)
if exist "%MSBUILD_PATH%\msbuild.exe" (
goto :MSBuildFound
)
echo Dev14 not found, trying to locate Dev12...
:LABEL_USE_MSBUILD_12
set MSBUILD_VERSION=12.0
set "MSBUILD_PATH=%ProgramFiles%\msbuild\%MSBUILD_VERSION%\Bin\x86"
echo Dev14 not found, trying Dev %MSBUILD_VERSION%
if not exist "%MSBUILD_PATH%\msbuild.exe" (
set "MSBUILD_PATH=%ProgramFiles(x86)%\msbuild\%MSBUILD_VERSION%\Bin"
)
if not exist "%MSBUILD_PATH%\msbuild.exe" (
set "MSBUILD_PATH=%ProgramFiles(x86)%\msbuild\%MSBUILD_VERSION%\Bin\amd64"
)
if not exist "%MSBUILD_PATH%\msbuild.exe" (
echo Can't find msbuild.exe in "%MSBUILD_PATH%"
goto :SkipMsBuildSetup
)
:MSBuildFound
echo MSBuild located at "%MSBUILD_PATH%"
set "PATH=%MSBUILD_PATH%;%PATH%"
set USE_MSBUILD_12=
set MSBUILD_PATH=
:SkipMsBuildSetup