aboutsummaryrefslogtreecommitdiffhomepage
path: root/templates/vsprojects
diff options
context:
space:
mode:
Diffstat (limited to 'templates/vsprojects')
-rw-r--r--templates/vsprojects/buildtests_c.sln.template8
-rw-r--r--templates/vsprojects/grpc_csharp_ext.sln.template2
-rw-r--r--templates/vsprojects/sln_defs.include10
3 files changed, 17 insertions, 3 deletions
diff --git a/templates/vsprojects/buildtests_c.sln.template b/templates/vsprojects/buildtests_c.sln.template
index 21312ab79a..9b18c7445d 100644
--- a/templates/vsprojects/buildtests_c.sln.template
+++ b/templates/vsprojects/buildtests_c.sln.template
@@ -2,6 +2,12 @@
--- |
<%namespace file="sln_defs.include" import="gen_solution"/>\
<%
- solution_projects = [p for p in vsprojects if p.build not in ['protoc', 'fuzzer'] and p.language == 'c' and not p.boringssl and not p.zlib]
+ solution_projects = [
+ p for p in vsprojects
+ if p.build in ['test', 'tool']
+ and p.language == 'c'
+ and not p.boringssl
+ and not p.zlib
+ ]
%>\
${gen_solution(solution_projects, use_dlls='yes')}
diff --git a/templates/vsprojects/grpc_csharp_ext.sln.template b/templates/vsprojects/grpc_csharp_ext.sln.template
index 1013d7bd97..9b09f5ef28 100644
--- a/templates/vsprojects/grpc_csharp_ext.sln.template
+++ b/templates/vsprojects/grpc_csharp_ext.sln.template
@@ -2,6 +2,6 @@
--- |
<%namespace file="sln_defs.include" import="gen_solution"/>\
<%
- solution_projects = [p for p in vsprojects if p.build == 'all' and p.language in ['c', 'csharp']]
+ solution_projects = [p for p in vsprojects if p.build == 'all' and p.language == 'csharp']
%>\
${gen_solution(solution_projects, use_dlls='only')}
diff --git a/templates/vsprojects/sln_defs.include b/templates/vsprojects/sln_defs.include
index a0489411c6..cc525781a0 100644
--- a/templates/vsprojects/sln_defs.include
+++ b/templates/vsprojects/sln_defs.include
@@ -1,4 +1,4 @@
-<%def name="gen_solution(solution_projects, use_dlls = 'no')">\
+<%def name="gen_solution(solution_top_level_projects, use_dlls = 'no')">\
## 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
@@ -12,6 +12,14 @@ 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}"
+
+all_projects = set()
+for project in solution_top_level_projects:
+ for dep in project.deps:
+ all_projects.add(dep)
+ all_projects.add(project.name)
+
+solution_projects = [vsproject_dict[project] for project in sorted(list(all_projects))]
%>\
% for project in solution_projects:
Project("${cpp_proj_type}") = "${project.name}", "vcxproj\${project.vs_proj_dir}\${project.name}\${project.name}.vcxproj", "${project.vs_project_guid}"