aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLittleboy2011-04-22 14:10:14 -0400
committerLittleboy2011-04-22 14:45:12 -0400
commit1f660237a4c5b4e80af6515848e6cf0bcd7c74bc (patch)
tree1f6b67fa59cfa7ca2ebc797f355480f2bf41a6ed
parent8f1a26ea3e86f1278d1fce58db13f3684b5d391f (diff)
downloadscummvm-rg350-1f660237a4c5b4e80af6515848e6cf0bcd7c74bc.tar.gz
scummvm-rg350-1f660237a4c5b4e80af6515848e6cf0bcd7c74bc.tar.bz2
scummvm-rg350-1f660237a4c5b4e80af6515848e6cf0bcd7c74bc.zip
CREATE_PROJECT: Change build events to also be run in release builds
Unofficial builds using MSVC in release mode will benefit from having a revision number available
-rw-r--r--devtools/create_project/msbuild.cpp11
-rw-r--r--devtools/create_project/visualstudio.cpp34
2 files changed, 23 insertions, 22 deletions
diff --git a/devtools/create_project/msbuild.cpp b/devtools/create_project/msbuild.cpp
index 73511218b4..070d7fea60 100644
--- a/devtools/create_project/msbuild.cpp
+++ b/devtools/create_project/msbuild.cpp
@@ -267,13 +267,10 @@ void MSBuildProvider::outputProjectSettings(std::ofstream &project, const std::s
"\t\t</Link>\n";
if (setup.runBuildEvents) {
- // Only generate revision number in debug builds
- if (!isRelease) {
- project << "\t\t<PreBuildEvent>\n"
- "\t\t\t<Message>Generate internal_version.h</Message>\n"
- "\t\t\t<Command>" << getPreBuildEvent() << "</Command>\n"
- "\t\t</PreBuildEvent>\n";
- }
+ project << "\t\t<PreBuildEvent>\n"
+ "\t\t\t<Message>Generate internal_version_build.h</Message>\n"
+ "\t\t\t<Command>" << getPreBuildEvent() << "</Command>\n"
+ "\t\t</PreBuildEvent>\n";
// Copy data files to the build folder
project << "\t\t<PostBuildEvent>\n"
diff --git a/devtools/create_project/visualstudio.cpp b/devtools/create_project/visualstudio.cpp
index 2b7c8908cb..390d0fba1f 100644
--- a/devtools/create_project/visualstudio.cpp
+++ b/devtools/create_project/visualstudio.cpp
@@ -57,13 +57,24 @@ int VisualStudioProvider::getVisualStudioVersion() {
error("Unsupported version passed to createScummVMSolution");
}
-#define OUTPUT_CONFIGURATION_SCUMMVM(config, platform, props) { \
+#define OUTPUT_BUILD_EVENTS(isWin32) \
+ if (setup.runBuildEvents) { \
+ project << "\t\t\t<Tool\tName=\"VCPreBuildEventTool\"\n" \
+ "\t\t\t\tCommandLine=\"" << getPreBuildEvent() << "\"\n" \
+ "\t\t\t/>\n" \
+ "\t\t\t<Tool\tName=\"VCPostBuildEventTool\"\n" \
+ "\t\t\t\tCommandLine=\"" << getPostBuildEvent(isWin32) << "\"\n" \
+ "\t\t\t/>\n"; \
+ }
+
+#define OUTPUT_CONFIGURATION_SCUMMVM(config, platform, props, isWin32) { \
project << "\t\t<Configuration Name=\"" << config << "|" << platform << "\" ConfigurationType=\"1\" InheritedPropertySheets=\".\\ScummVM_" << config << props << ".vsprops\">\n" \
"\t\t\t<Tool\tName=\"VCCLCompilerTool\" DisableLanguageExtensions=\"false\" />\n" \
"\t\t\t<Tool\tName=\"VCLinkerTool\" OutputFile=\"$(OutDir)/scummvm.exe\"\n" \
"\t\t\t\tAdditionalDependencies=\"" << libraries << "\"\n" \
- "\t\t\t/>\n" \
- "\t\t</Configuration>\n"; \
+ "\t\t\t/>\n"; \
+ OUTPUT_BUILD_EVENTS(isWin32) \
+ project << "\t\t</Configuration>\n"; \
}
#define OUTPUT_CONFIGURATION_SCUMMVM_DEBUG(config, platform, props, isWin32) { \
@@ -72,14 +83,7 @@ int VisualStudioProvider::getVisualStudioVersion() {
"\t\t\t<Tool\tName=\"VCLinkerTool\" OutputFile=\"$(OutDir)/scummvm.exe\"\n" \
"\t\t\t\tAdditionalDependencies=\"" << libraries << "\"\n" \
"\t\t\t/>\n"; \
- if (setup.runBuildEvents) { \
- project << "\t\t\t<Tool\tName=\"VCPreBuildEventTool\"\n" \
- "\t\t\t\tCommandLine=\"" << getPreBuildEvent() << "\"\n" \
- "\t\t\t/>\n" \
- "\t\t\t<Tool\tName=\"VCPostBuildEventTool\"\n" \
- "\t\t\t\tCommandLine=\"" << getPostBuildEvent(isWin32) << "\"\n" \
- "\t\t\t/>\n"; \
- } \
+ OUTPUT_BUILD_EVENTS(isWin32) \
project << "\t\t</Configuration>\n"; \
}
@@ -127,15 +131,15 @@ void VisualStudioProvider::createProjectFile(const std::string &name, const std:
// Win32
OUTPUT_CONFIGURATION_SCUMMVM_DEBUG("Debug", "Win32", "", true);
OUTPUT_CONFIGURATION_SCUMMVM_DEBUG("Analysis", "Win32", "", true);
- OUTPUT_CONFIGURATION_SCUMMVM("Release", "Win32", "");
+ OUTPUT_CONFIGURATION_SCUMMVM("Release", "Win32", "", true);
// x64
// For 'x64' we must disable NASM support. Usually we would need to disable the "nasm" feature for that and
// re-create the library list, BUT since NASM doesn't link any additional libraries, we can just use the
// libraries list created for IA-32. If that changes in the future, we need to adjust this part!
- OUTPUT_CONFIGURATION_SCUMMVM_DEBUG("Debug", "x64", "64", true);
- OUTPUT_CONFIGURATION_SCUMMVM_DEBUG("Analysis", "x64", "64", true);
- OUTPUT_CONFIGURATION_SCUMMVM("Release", "x64", "64");
+ OUTPUT_CONFIGURATION_SCUMMVM_DEBUG("Debug", "x64", "64", false);
+ OUTPUT_CONFIGURATION_SCUMMVM_DEBUG("Analysis", "x64", "64", false);
+ OUTPUT_CONFIGURATION_SCUMMVM("Release", "x64", "64", false);
} else {
std::string warnings = "";