From 37e4e33c501da8c4acd2376b3341d4f79c9d87ce Mon Sep 17 00:00:00 2001 From: Joerg Bornemann Date: Thu, 14 Feb 2013 15:32:19 +0100 Subject: fix MSVC build for non-standard command line interpreters In our incremental linking command block we relied on del never returning a non-zero exit code. Other command line interpreters than cmd.exe, e.g. TCC, behave differently. We now check for existence before trying to delete the manifest file. Task-number: QTBUG-29698 Change-Id: I94d125998da6f2c0377104f7e83cdd9e8b838329 Reviewed-by: Oswald Buddenhagen --- qmake/generators/win32/msvc_nmake.cpp | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/qmake/generators/win32/msvc_nmake.cpp b/qmake/generators/win32/msvc_nmake.cpp index 263988cd30..8b40d4e935 100644 --- a/qmake/generators/win32/msvc_nmake.cpp +++ b/qmake/generators/win32/msvc_nmake.cpp @@ -414,7 +414,8 @@ void NmakeMakefileGenerator::writeBuildRulesPart(QTextStream &t) << cQuoted(unescapeFilePath(manifest)) << ">" << manifest_rc; if (generateManifest) { - t << "\n\tif not exist $(DESTDIR_TARGET) del " << manifest << ">NUL 2>&1"; + t << "\n\tif not exist $(DESTDIR_TARGET) if exist " << manifest + << " del " << manifest; t << "\n\tif exist " << manifest << " copy /Y " << manifest << ' ' << manifest_bak; const QString extraInlineFileContent = "\n!IF EXIST(" + manifest_res + ")\n" + manifest_res + "\n!ENDIF"; t << "\n\t"; -- cgit v1.2.3