win: vcbuild.bat should attempt to run vcvarsall.bat
authorBert Belder <bertbelder@gmail.com>
Sun, 4 Sep 2011 22:35:42 +0000 (00:35 +0200)
committerBert Belder <bertbelder@gmail.com>
Mon, 5 Sep 2011 00:10:12 +0000 (02:10 +0200)
vcbuild.bat

index 654421b23e390b7b6d5d039e0301ea0a6cbebb31..90e89d91dbf9ad7f01cfb14c8b335c56363dc83d 100644 (file)
@@ -53,8 +53,19 @@ echo Project files generated.
 @rem Skip project generation if requested.
 if defined nobuild goto run
 
-if not defined VCINSTALLDIR echo Build skipped. To build, this file needs to run from VS cmd prompt.& goto run
-
+@rem Bail out early if not running in VS build env.
+if defined VCINSTALLDIR goto msbuild-found
+if not defined VS100COMNTOOLS goto msbuild-not-found
+if not exist "%VS100COMNTOOLS%\..\..\vc\vcvarsall.bat" goto msbuild-not-found
+call "%VS100COMNTOOLS%\..\..\vc\vcvarsall.bat"
+if not defined VCINSTALLDIR goto msbuild-not-found
+goto msbuild-found
+
+:msbuild-not-found
+echo Build skipped. To build, this file needs to run from VS cmd prompt.
+goto run
+
+:msbuild-found
 @rem Build the sln with msbuild.
 msbuild node.sln /t:%target% /p:Configuration=%config% /clp:NoSummary;NoItemAndPropertyList;Verbosity=minimal /nologo
 if errorlevel 1 goto exit