aboutsummaryrefslogtreecommitdiffstatshomepage
diff options
context:
space:
mode:
-rwxr-xr-xrunprebuild.bat18
1 files changed, 13 insertions, 5 deletions
diff --git a/runprebuild.bat b/runprebuild.bat
index 5f75982..ed2def1 100755
--- a/runprebuild.bat
+++ b/runprebuild.bat
@@ -7,11 +7,19 @@ setlocal ENABLEEXTENSIONS
7set KEY_NAME="HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\MSBuild\ToolsVersions\4.0" 7set KEY_NAME="HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\MSBuild\ToolsVersions\4.0"
8set VALUE_NAME=MSBuildToolsPath 8set VALUE_NAME=MSBuildToolsPath
9 9
10rem We have to use find here as req query spits out 4 lines before Windows 7 10rem We have to use grep or find to locate the correct line, because reg query spits
11rem But 2 lines after Windows 7. Unfortunately, this screws up cygwin 11rem out 4 lines before Windows 7 but 2 lines after Windows 7.
12rem as it uses its own find command. This could be fixed but it could be 12rem We use grep if it's on the path; otherwise we use the built-in find command
13rem complex to find the location of find on all windows systems 13rem from Windows. (We must use grep on Cygwin because it overrides the "find" command.)
14FOR /F "usebackq tokens=1-3" %%A IN (`REG QUERY %KEY_NAME% /v %VALUE_NAME% 2^>nul ^| FIND "%VALUE_NAME%"`) DO ( 14
15for %%X in (grep.exe) do (set FOUNDGREP=%%~$PATH:X)
16if defined FOUNDGREP (
17 set FINDCMD=grep
18) else (
19 set FINDCMD=find
20)
21
22FOR /F "usebackq tokens=1-3" %%A IN (`REG QUERY %KEY_NAME% /v %VALUE_NAME% 2^>nul ^| %FINDCMD% "%VALUE_NAME%"`) DO (
15 set ValueName=%%A 23 set ValueName=%%A
16 set ValueType=%%B 24 set ValueType=%%B
17 set ValueValue=%%C 25 set ValueValue=%%C