Safer version.h creation.
authorIain Patterson <me@iain.cx>
Sat, 28 Dec 2013 16:13:34 +0000 (16:13 +0000)
committerIain Patterson <me@iain.cx>
Sat, 28 Dec 2013 16:13:34 +0000 (16:13 +0000)
Use a temporary file so Visual Studio doesn't detect a timestamp change
on the file and trigger a rebuild.

version.cmd

index 77045c9..d9ce5d7 100644 (file)
@@ -40,8 +40,11 @@ if "%BUILD_ID%" == "" (set year=) else (
 )\r
 \r
 @rem Create version.h.\r
-@echo>version.h #define NSSM_VERSION _T("%description%")\r
-@echo>>version.h #define NSSM_VERSIONINFO %major%,%minor%,%n%,%BUILD_NUMBER%\r
-@echo>>version.h #define NSSM_DATE _T("%DATE%")\r
-@echo>>version.h #define NSSM_FILEFLAGS %flags%\r
-@echo>>version.h #define NSSM_COPYRIGHT _T("(c) 2003-%year% Iain Patterson")\r
+@echo>version.h.new #define NSSM_VERSION _T("%description%")\r
+@echo>>version.h.new #define NSSM_VERSIONINFO %major%,%minor%,%n%,%BUILD_NUMBER%\r
+@echo>>version.h.new #define NSSM_DATE _T("%DATE%")\r
+@echo>>version.h.new #define NSSM_FILEFLAGS %flags%\r
+@echo>>version.h.new #define NSSM_COPYRIGHT _T("(c) 2003-%year% Iain Patterson")\r
+\r
+fc version.h version.h.new >NUL: 2>NUL:\r
+if %ERRORLEVEL% == 0 (del version.h.new) else (move /y version.h.new version.h)\r