diff options
| author | Littleboy | 2012-07-11 01:08:22 -0400 | 
|---|---|---|
| committer | Littleboy | 2012-07-14 12:22:09 -0400 | 
| commit | d86c0a44f8452261e7d1e330edf2449642b056fd (patch) | |
| tree | 81f5f327bab12fbbb618ef4ab93511c962586380 /devtools | |
| parent | 4e0f6d346fe3c05157fa89c7881c2050e497763a (diff) | |
| download | scummvm-rg350-d86c0a44f8452261e7d1e330edf2449642b056fd.tar.gz scummvm-rg350-d86c0a44f8452261e7d1e330edf2449642b056fd.tar.bz2 scummvm-rg350-d86c0a44f8452261e7d1e330edf2449642b056fd.zip  | |
CREATE_PROJECT: Add support for Visual Studio 2012 project creation
Diffstat (limited to 'devtools')
| -rw-r--r-- | devtools/README | 2 | ||||
| -rw-r--r-- | devtools/create_project/create_project.cpp | 3 | ||||
| -rw-r--r-- | devtools/create_project/msbuild.cpp | 24 | ||||
| -rw-r--r-- | devtools/create_project/msvc11/create_project.vcxproj | 2 | 
4 files changed, 21 insertions, 10 deletions
diff --git a/devtools/README b/devtools/README index 7db5259e7c..c7f08d6dfa 100644 --- a/devtools/README +++ b/devtools/README @@ -65,7 +65,7 @@ create_lure (dreammaster)  create_project (LordHoto, Littleboy)  -------------- -    Creates project files for Visual Studio 2005, 2008, 2010, Xcode and +    Creates project files for Visual Studio 2005, 2008, 2010, 2012, Xcode and      Code::Blocks out of the configure / Makefile based build system.      It also offers a way to enable or disable certain engines and the use      of external libraries similar to configure. Run the tool without diff --git a/devtools/create_project/create_project.cpp b/devtools/create_project/create_project.cpp index df220f0934..c96b83414a 100644 --- a/devtools/create_project/create_project.cpp +++ b/devtools/create_project/create_project.cpp @@ -221,7 +221,7 @@ int main(int argc, char *argv[]) {  			msvcVersion = atoi(argv[++i]); -			if (msvcVersion != 8 && msvcVersion != 9 && msvcVersion != 10) { +			if (msvcVersion != 8 && msvcVersion != 9 && msvcVersion != 10 && msvcVersion != 11) {  				std::cerr << "ERROR: Unsupported version: \"" << msvcVersion << "\" passed to \"--msvc-version\"!\n";  				return -1;  			} @@ -643,6 +643,7 @@ void displayHelp(const char *exe) {  	        "                           8 stands for \"Visual Studio 2005\"\n"  	        "                           9 stands for \"Visual Studio 2008\"\n"  	        "                           10 stands for \"Visual Studio 2010\"\n" +	        "                           11 stands for \"Visual Studio 2012\"\n"  	        "                           The default is \"9\", thus \"Visual Studio 2008\"\n"  	        " --build-events           Run custom build events as part of the build\n"  	        "                          (default: false)\n" diff --git a/devtools/create_project/msbuild.cpp b/devtools/create_project/msbuild.cpp index a82140c2d3..90a5e3c15b 100644 --- a/devtools/create_project/msbuild.cpp +++ b/devtools/create_project/msbuild.cpp @@ -46,7 +46,13 @@ const char *MSBuildProvider::getPropertiesExtension() {  }  int MSBuildProvider::getVisualStudioVersion() { -	return 2010; +	if (_version == 10) +		return 2010; + +	if (_version == 11) +		return 2012; + +	error("Unsupported version passed to getVisualStudioVersion");  }  namespace { @@ -58,9 +64,10 @@ inline void outputConfiguration(std::ostream &project, const std::string &config  	           "\t\t</ProjectConfiguration>\n";  } -inline void outputConfigurationType(const BuildSetup &setup, std::ostream &project, const std::string &name, const std::string &config) { +inline void outputConfigurationType(const BuildSetup &setup, std::ostream &project, const std::string &name, const std::string &config, int version) {  	project << "\t<PropertyGroup Condition=\"'$(Configuration)|$(Platform)'=='" << config << "'\" Label=\"Configuration\">\n"  	           "\t\t<ConfigurationType>" << ((name == setup.projectName || setup.devTools) ? "Application" : "StaticLibrary") << "</ConfigurationType>\n" +	           "\t\t<PlatformToolset>v" << version << "0</PlatformToolset>"  	           "\t</PropertyGroup>\n";  } @@ -98,17 +105,18 @@ void MSBuildProvider::createProjectFile(const std::string &name, const std::stri  	           "\t\t<ProjectGuid>{" << uuid << "}</ProjectGuid>\n"  	           "\t\t<RootNamespace>" << name << "</RootNamespace>\n"  	           "\t\t<Keyword>Win32Proj</Keyword>\n" +	           "\t\t<VCTargetsPath Condition=\"'$(VCTargetsPath11)' != '' and '$(VSVersion)' == '' and $(VisualStudioVersion) == ''\">$(VCTargetsPath11)</VCTargetsPath>\n"  	           "\t</PropertyGroup>\n";  	// Shared configuration  	project << "\t<Import Project=\"$(VCTargetsPath)\\Microsoft.Cpp.Default.props\" />\n"; -	outputConfigurationType(setup, project, name, "Release|Win32"); -	outputConfigurationType(setup, project, name, "Analysis|Win32"); -	outputConfigurationType(setup, project, name, "Debug|Win32"); -	outputConfigurationType(setup, project, name, "Release|x64"); -	outputConfigurationType(setup, project, name, "Analysis|x64"); -	outputConfigurationType(setup, project, name, "Debug|x64"); +	outputConfigurationType(setup, project, name, "Release|Win32", _version); +	outputConfigurationType(setup, project, name, "Analysis|Win32", _version); +	outputConfigurationType(setup, project, name, "Debug|Win32", _version); +	outputConfigurationType(setup, project, name, "Release|x64", _version); +	outputConfigurationType(setup, project, name, "Analysis|x64", _version); +	outputConfigurationType(setup, project, name, "Debug|x64", _version);  	project << "\t<Import Project=\"$(VCTargetsPath)\\Microsoft.Cpp.props\" />\n"  	           "\t<ImportGroup Label=\"ExtensionSettings\">\n" diff --git a/devtools/create_project/msvc11/create_project.vcxproj b/devtools/create_project/msvc11/create_project.vcxproj index 5947211e35..c87461c049 100644 --- a/devtools/create_project/msvc11/create_project.vcxproj +++ b/devtools/create_project/msvc11/create_project.vcxproj @@ -63,6 +63,7 @@      </Link>      <PostBuildEvent>        <Command>@echo off +xcopy /Y "$(TargetPath)" "$(SolutionDir)\..\..\..\dists\msvc11\"  xcopy /Y "$(TargetPath)" "$(SolutionDir)\..\..\..\dists\msvc10\"  xcopy /Y "$(TargetPath)" "$(SolutionDir)\..\..\..\dists\msvc9\"  xcopy /Y "$(TargetPath)" "$(SolutionDir)\..\..\..\dists\msvc8\" @@ -89,6 +90,7 @@ xcopy /Y "$(TargetPath)" "$(SolutionDir)\..\..\..\dists\iphone\"</Command>      </Link>      <PostBuildEvent>        <Command>@echo off +xcopy /Y "$(TargetPath)" "$(SolutionDir)\..\..\..\dists\msvc11\"  xcopy /Y "$(TargetPath)" "$(SolutionDir)\..\..\..\dists\msvc10\"  xcopy /Y "$(TargetPath)" "$(SolutionDir)\..\..\..\dists\msvc9\"  xcopy /Y "$(TargetPath)" "$(SolutionDir)\..\..\..\dists\msvc8\"  | 
