## Template for Visual Studio solution ## based on http://msdn.microsoft.com/en-us/library/bb165951(v=vs.90).aspx 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 lib in libs: lib.is_library = True for target in targets: target.is_library = False projects = [] projects.extend(libs) projects.extend(targets) projects = [project for project in projects if project.get('vs_project_guid', None)] ## Exclude C++ projects for now projects = [project for project in projects if not project.get('c++', False)] for p in projects: p.deps = p.get('deps',[]) project_dict = dict([(p.name, p) for p in projects]) %>\ % for project in projects: Project("${cpp_proj_type}") = "${project.name}", "${project.name}.vcxproj", "${project.vs_project_guid}" % if project.deps: ProjectSection(ProjectDependencies) = postProject % for dep in project.deps: ${project_dict[dep].vs_project_guid} = ${project_dict[dep].vs_project_guid} % endfor EndProjectSection % endif EndProject % endfor Global GlobalSection(SolutionConfigurationPlatforms) = preSolution Debug|Win32 = Debug|Win32 Release|Win32 = Release|Win32 EndGlobalSection GlobalSection(ProjectConfigurationPlatforms) = postSolution % for project in projects: ${project.vs_project_guid}.Debug|Win32.ActiveCfg = Debug|Win32 ${project.vs_project_guid}.Debug|Win32.Build.0 = Debug|Win32 ${project.vs_project_guid}.Release|Win32.ActiveCfg = Release|Win32 ${project.vs_project_guid}.Release|Win32.Build.0 = Release|Win32 % endfor EndGlobalSection GlobalSection(SolutionProperties) = preSolution HideSolutionNode = FALSE EndGlobalSection EndGlobal