aboutsummaryrefslogtreecommitdiffhomepage
path: root/templates/vsprojects/sln_defs.include
diff options
context:
space:
mode:
authorGravatar Nicolas Noble <nicolasnoble@users.noreply.github.com>2015-05-28 12:32:46 -0700
committerGravatar Nicolas Noble <nicolasnoble@users.noreply.github.com>2015-05-28 12:32:46 -0700
commitbea00481717ed02dba5745fe240bee81359ad6af (patch)
tree4d75985bdde00fdfabb9173856b17d4bf65d5f21 /templates/vsprojects/sln_defs.include
parent2c31a56d4a2af7177e5aaa2f3f40f5f6db8f570f (diff)
parent7692159e90f2c49c3512cd2a89b3820d9e2090ba (diff)
Merge pull request #1770 from jtattermusch/plugin_vcxproj
Provide VS projects for building protoc plugins on Windows
Diffstat (limited to 'templates/vsprojects/sln_defs.include')
-rw-r--r--templates/vsprojects/sln_defs.include50
1 files changed, 50 insertions, 0 deletions
diff --git a/templates/vsprojects/sln_defs.include b/templates/vsprojects/sln_defs.include
new file mode 100644
index 0000000000..ee05d0fbde
--- /dev/null
+++ b/templates/vsprojects/sln_defs.include
@@ -0,0 +1,50 @@
+<%def name="gen_solution(solution_projects)">\
+## Template for Visual Studio solution
+## based on http://msdn.microsoft.com/en-us/library/bb165951(v=vs.90).aspx
+## NOTE: tabs in this file are needed by Visual Studio to correctly interpret
+## the file.
+
+Microsoft Visual Studio Solution File, Format Version 12.00
+# Visual Studio 2013
+VisualStudioVersion = 12.0.21005.1
+MinimumVisualStudioVersion = 10.0.40219.1
+<%
+## Visual Studio uses GUIDs for project types
+## http://msdn.microsoft.com/en-us/library/hb23x61k%28v=vs.80%29.aspx
+cpp_proj_type = "{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}"
+%>\
+% for project in solution_projects:
+Project("${cpp_proj_type}") = "${project.name}", "${project.name}\${project.name}.vcxproj", "${project.vs_project_guid}"
+ % if project.get('deps', None):
+ ProjectSection(ProjectDependencies) = postProject
+ % for dep in project.get('deps', []):
+ ${vsproject_dict[dep].vs_project_guid} = ${vsproject_dict[dep].vs_project_guid}
+ % endfor
+ EndProjectSection
+ % endif
+EndProject
+% endfor
+Global
+ GlobalSection(SolutionConfigurationPlatforms) = preSolution
+ Debug|Win32 = Debug|Win32
+ Debug|x64 = Debug|x64
+ Release|Win32 = Release|Win32
+ Release|x64 = Release|x64
+ EndGlobalSection
+ GlobalSection(ProjectConfigurationPlatforms) = postSolution
+% for project in solution_projects:
+ ${project.vs_project_guid}.Debug|Win32.ActiveCfg = Debug|Win32
+ ${project.vs_project_guid}.Debug|Win32.Build.0 = Debug|Win32
+ ${project.vs_project_guid}.Debug|x64.ActiveCfg = Debug|x64
+ ${project.vs_project_guid}.Debug|x64.Build.0 = Debug|x64
+ ${project.vs_project_guid}.Release|Win32.ActiveCfg = Release|Win32
+ ${project.vs_project_guid}.Release|Win32.Build.0 = Release|Win32
+ ${project.vs_project_guid}.Release|x64.ActiveCfg = Release|x64
+ ${project.vs_project_guid}.Release|x64.Build.0 = Release|x64
+% endfor
+ EndGlobalSection
+ GlobalSection(SolutionProperties) = preSolution
+ HideSolutionNode = FALSE
+ EndGlobalSection
+EndGlobal
+</%def>\ \ No newline at end of file