From d2f3bc39b46073ce3c4b76093919a45b340f9233 Mon Sep 17 00:00:00 2001
From: Johannes Schickel
Date: Wed, 9 Mar 2016 18:33:27 +0100
Subject: DEVTOOLS: Fix path separator in MSBuild's global props output.
---
devtools/create_project/msbuild.cpp | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
(limited to 'devtools/create_project/msbuild.cpp')
diff --git a/devtools/create_project/msbuild.cpp b/devtools/create_project/msbuild.cpp
index a326bd721a..7a43130b56 100644
--- a/devtools/create_project/msbuild.cpp
+++ b/devtools/create_project/msbuild.cpp
@@ -374,7 +374,7 @@ void MSBuildProvider::outputGlobalPropFile(const BuildSetup &setup, std::ofstrea
"\t\t$(" << LIBS_DEFINE << ")\\lib\\" << (bits == 32 ? "x86" : "x64") << ";$(LibraryPath)\n"
"\t\t$(" << LIBS_DEFINE << ")\\include;$(" << LIBS_DEFINE << ")\\include\\SDL;$(IncludePath)\n"
"\t\t$(Configuration)" << bits << "\\\n"
- "\t\t$(Configuration)" << bits << "/$(ProjectName)\\\n"
+ "\t\t$(Configuration)" << bits << "\\$(ProjectName)\\\n"
"\t\n"
"\t\n"
"\t\t\n"
--
cgit v1.2.3
From d3dba1b08671d4fcd71c1d927a9a8c371b7f3119 Mon Sep 17 00:00:00 2001
From: Johannes Schickel
Date: Wed, 9 Mar 2016 18:34:54 +0100
Subject: DEVTOOLS: Do not specify SCUMMVM_LIBS include dir twice for MSBuild.
---
devtools/create_project/msbuild.cpp | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
(limited to 'devtools/create_project/msbuild.cpp')
diff --git a/devtools/create_project/msbuild.cpp b/devtools/create_project/msbuild.cpp
index 7a43130b56..46f09935dd 100644
--- a/devtools/create_project/msbuild.cpp
+++ b/devtools/create_project/msbuild.cpp
@@ -380,7 +380,7 @@ void MSBuildProvider::outputGlobalPropFile(const BuildSetup &setup, std::ofstrea
"\t\t\n"
"\t\t\ttrue\n"
"\t\t\t" << warnings << ";%(DisableSpecificWarnings)\n"
- "\t\t\t$(" << LIBS_DEFINE << ")\\include;.;" << prefix << ";" << prefix << "\\engines;" << (setup.tests ? prefix + "\\test\\cxxtest;" : "") << "$(TargetDir);%(AdditionalIncludeDirectories)\n"
+ "\t\t\t.;" << prefix << ";" << prefix << "\\engines;" << (setup.tests ? prefix + "\\test\\cxxtest;" : "") << "$(TargetDir);%(AdditionalIncludeDirectories)\n"
"\t\t\t" << definesList << "%(PreprocessorDefinitions)\n"
"\t\t\t" << ((setup.devTools || setup.tests) ? "Sync" : "") << "\n";
--
cgit v1.2.3
From 24558307c25d46b1b28e1e61e516c741701a17f0 Mon Sep 17 00:00:00 2001
From: Johannes Schickel
Date: Wed, 9 Mar 2016 18:35:59 +0100
Subject: DEVTOOLS: Do not hardcode runtime libraries for MSVC2015.
---
devtools/create_project/msbuild.cpp | 6 ------
1 file changed, 6 deletions(-)
(limited to 'devtools/create_project/msbuild.cpp')
diff --git a/devtools/create_project/msbuild.cpp b/devtools/create_project/msbuild.cpp
index 46f09935dd..96680220c0 100644
--- a/devtools/create_project/msbuild.cpp
+++ b/devtools/create_project/msbuild.cpp
@@ -319,12 +319,6 @@ void MSBuildProvider::outputProjectSettings(std::ofstream &project, const std::s
for (StringList::const_iterator i = setup.libraries.begin(); i != setup.libraries.end(); ++i)
libraries += *i + ".lib;";
- if (_version == 14) {
- std::string debug = isRelease ? "" : "d";
- libraries += "libvcruntime" + debug + ".lib;";
- libraries += "libucrt" + debug + ".lib;";
- }
-
project << "\t\t\n"
"\t\t\t$(OutDir)" << ((setup.devTools || setup.tests) ? name : setup.projectName) << ".exe\n"
"\t\t\t" << libraries << "%(AdditionalDependencies)\n"
--
cgit v1.2.3
From 1c2dc2f89d181edfdffa001c7055df73d0ff8e77 Mon Sep 17 00:00:00 2001
From: Johannes Schickel
Date: Wed, 9 Mar 2016 18:36:53 +0100
Subject: DEVTOOLS: Do not ignore libcmt.lib for MSBuild output.
This hints at broken library builds and thus should not be set for us.
---
devtools/create_project/msbuild.cpp | 3 +--
1 file changed, 1 insertion(+), 2 deletions(-)
(limited to 'devtools/create_project/msbuild.cpp')
diff --git a/devtools/create_project/msbuild.cpp b/devtools/create_project/msbuild.cpp
index 96680220c0..8a33b6bf3b 100644
--- a/devtools/create_project/msbuild.cpp
+++ b/devtools/create_project/msbuild.cpp
@@ -457,8 +457,7 @@ void MSBuildProvider::createBuildProp(const BuildSetup &setup, bool isRelease, b
properties << "\t\t\n"
"\t\t\n"
"\t\t\ttrue\n"
- "\t\t\tfalse\n"
- "\t\t\tlibcmt.lib;%(IgnoreSpecificDefaultLibraries)\n";
+ "\t\t\tfalse\n";
}
properties << "\t\t\n"
--
cgit v1.2.3
From 46ef80963f36b46aa7fd494b56c266f5d27cd48d Mon Sep 17 00:00:00 2001
From: Johannes Schickel
Date: Wed, 9 Mar 2016 18:43:52 +0100
Subject: DEVTOOLS: Enable Edit&Continue on x64 for MSVC2015+.
---
devtools/create_project/msbuild.cpp | 12 +++++++++---
1 file changed, 9 insertions(+), 3 deletions(-)
(limited to 'devtools/create_project/msbuild.cpp')
diff --git a/devtools/create_project/msbuild.cpp b/devtools/create_project/msbuild.cpp
index 8a33b6bf3b..191135fd88 100644
--- a/devtools/create_project/msbuild.cpp
+++ b/devtools/create_project/msbuild.cpp
@@ -444,9 +444,15 @@ void MSBuildProvider::createBuildProp(const BuildSetup &setup, bool isRelease, b
"\t\t\tEnableFastChecks\n"
"\t\t\tMultiThreadedDebug\n"
"\t\t\ttrue\n"
- "\t\t\tfalse\n"
- "\t\t\t" << (isWin32 ? "EditAndContinue" : "ProgramDatabase") << "\n" // For x64 format Edit and continue is not supported, thus we default to Program Database
- "\t\t\t" << (configuration == "Analysis" ? "true" : "false") << "\n";
+ "\t\t\tfalse\n";
+ if (_version >= 14) {
+ // Since MSVC 2015 Edit and Continue is support for x64 too.
+ properties << "\t\t\t" << "EditAndContinue" << "\n";
+ } else {
+ // Older MSVC versions did not support Edit and Continue for x64, thus we do not use it.
+ properties << "\t\t\t" << (isWin32 ? "EditAndContinue" : "ProgramDatabase") << "\n";
+ }
+ properties << "\t\t\t" << (configuration == "Analysis" ? "true" : "false") << "\n";
if (configuration == "LLVM") {
// FIXME The LLVM cl wrapper does not seem to work properly with the $(TargetDir) path so we hard-code the build folder until the issue is resolved
--
cgit v1.2.3
From 7127fadc96821148ca0c64bb8f47e597e3daecec Mon Sep 17 00:00:00 2001
From: Johannes Schickel
Date: Wed, 9 Mar 2016 19:03:04 +0100
Subject: DEVTOOLS: Use DLL runtime for MSBuild output.
---
devtools/create_project/msbuild.cpp | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
(limited to 'devtools/create_project/msbuild.cpp')
diff --git a/devtools/create_project/msbuild.cpp b/devtools/create_project/msbuild.cpp
index 191135fd88..5714e2e0d7 100644
--- a/devtools/create_project/msbuild.cpp
+++ b/devtools/create_project/msbuild.cpp
@@ -431,7 +431,7 @@ void MSBuildProvider::createBuildProp(const BuildSetup &setup, bool isRelease, b
"\t\t\ttrue\n"
"\t\t\tfalse\n"
"\t\t\t\n"
- "\t\t\tMultiThreaded\n"
+ "\t\t\tMultiThreadedDLL\n"
"\t\t\t" << (configuration == "Analysis" ? "true" : "false") << "\n"
"\t\t\n"
"\t\t\n"
@@ -442,7 +442,7 @@ void MSBuildProvider::createBuildProp(const BuildSetup &setup, bool isRelease, b
"\t\t\tWIN32;" << (configuration == "LLVM" ? "_CRT_SECURE_NO_WARNINGS;" : "") << "%(PreprocessorDefinitions)\n"
"\t\t\ttrue\n"
"\t\t\tEnableFastChecks\n"
- "\t\t\tMultiThreadedDebug\n"
+ "\t\t\tMultiThreadedDebugDLL\n"
"\t\t\ttrue\n"
"\t\t\tfalse\n";
if (_version >= 14) {
--
cgit v1.2.3
From 66a74cf3f3767604ccdbf4c18c87cbe22cf4f6be Mon Sep 17 00:00:00 2001
From: Johannes Schickel
Date: Wed, 9 Mar 2016 19:30:49 +0100
Subject: DEVTOOLS: Check configuration and architecture specific directories
for MSBuild.
---
devtools/create_project/msbuild.cpp | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
(limited to 'devtools/create_project/msbuild.cpp')
diff --git a/devtools/create_project/msbuild.cpp b/devtools/create_project/msbuild.cpp
index 5714e2e0d7..0f9819c308 100644
--- a/devtools/create_project/msbuild.cpp
+++ b/devtools/create_project/msbuild.cpp
@@ -364,8 +364,8 @@ void MSBuildProvider::outputGlobalPropFile(const BuildSetup &setup, std::ofstrea
"= 12 ? _version : 4) << ".0\" xmlns=\"http://schemas.microsoft.com/developer/msbuild/2003\">\n"
"\t\n"
"\t\t<_PropertySheetDisplayName>" << setup.projectDescription << "_Global\n"
- "\t\t$(" << LIBS_DEFINE << ")\\bin;$(ExecutablePath)\n"
- "\t\t$(" << LIBS_DEFINE << ")\\lib\\" << (bits == 32 ? "x86" : "x64") << ";$(LibraryPath)\n"
+ "\t\t$(" << LIBS_DEFINE << ")\\bin;$(" << LIBS_DEFINE << ")\\bin\\" << (bits == 32 ? "x86" : "x64") << ";$(ExecutablePath)\n"
+ "\t\t$(" << LIBS_DEFINE << ")\\lib\\" << (bits == 32 ? "x86" : "x64") << ";$(" << LIBS_DEFINE << ")\\lib\\" << (bits == 32 ? "x86" : "x64") << "\\$(Configuration);$(LibraryPath)\n"
"\t\t$(" << LIBS_DEFINE << ")\\include;$(" << LIBS_DEFINE << ")\\include\\SDL;$(IncludePath)\n"
"\t\t$(Configuration)" << bits << "\\\n"
"\t\t$(Configuration)" << bits << "\\$(ProjectName)\\\n"
--
cgit v1.2.3
From edfc84b67ad625b288192c4bc65bce0fe3c12169 Mon Sep 17 00:00:00 2001
From: Johannes Schickel
Date: Sun, 13 Mar 2016 20:33:50 +0100
Subject: DEVTOOLS: Use LTCG for Release configurations in MSBuild project
files.
Silences linker output that LTCG is used anyway because whole program
optimization is enabled for these configurations.
---
devtools/create_project/msbuild.cpp | 4 ++++
1 file changed, 4 insertions(+)
(limited to 'devtools/create_project/msbuild.cpp')
diff --git a/devtools/create_project/msbuild.cpp b/devtools/create_project/msbuild.cpp
index 0f9819c308..a804205c42 100644
--- a/devtools/create_project/msbuild.cpp
+++ b/devtools/create_project/msbuild.cpp
@@ -434,7 +434,11 @@ void MSBuildProvider::createBuildProp(const BuildSetup &setup, bool isRelease, b
"\t\t\tMultiThreadedDLL\n"
"\t\t\t" << (configuration == "Analysis" ? "true" : "false") << "\n"
"\t\t\n"
+ "\t\t\n"
+ "\t\t\ttrue\n"
+ "\t\t\n"
"\t\t\n"
+ "\t\t\tUseLinkTimeCodeGeneration\n"
"\t\t\t%(IgnoreSpecificDefaultLibraries)\n"
"\t\t\ttrue\n";
} else {
--
cgit v1.2.3