public void Execute(IDictionary<string, ProjectFileCreator.ProjectConfigurationData> newProjects)
{
Console.WriteLine("Updating solution files in {0}", Path.GetFullPath(Options.SdkRootFolder));
// transfer the new projects into our set-to-process, then scan for and augment the
// collection with existing projects.
foreach (var projectKey in newProjects.Keys)
{
_allProjects.Add(projectKey, newProjects[projectKey]);
}
AddSupportProjects();
ScanForExistingProjects();
// build one uber-solution for every project and platform
GenerateAllPlatformsSolution("AWSSDK.All.sln", ProjectFileConfigurations);
GenerateCombinedSolution("AWSSDK.Desktop.sln", true,
new List<ProjectFileConfiguration> {
GetProjectConfig(ProjectTypes.Net35),
GetProjectConfig(ProjectTypes.Net45)
});
GenerateCombinedSolution("AWSSDK.PCL.sln", true,
new List<ProjectFileConfiguration> {
GetProjectConfig(ProjectTypes.PCL),
GetProjectConfig(ProjectTypes.Android),
GetProjectConfig(ProjectTypes.IOS),
GetProjectConfig(ProjectTypes.Win8),
GetProjectConfig(ProjectTypes.WinPhone81),
GetProjectConfig(ProjectTypes.WinPhoneSilverlight8)
});
GenerateCombinedSolution("AWSSDK.Unity.sln", false,
new List<ProjectFileConfiguration>{
GetProjectConfig(ProjectTypes.Unity)
});
GenerateCoreCLRSolution();
// Include solutions that Travis CI can build
GeneratePlatformSpecificSolution(GetProjectConfig(ProjectTypes.Net35), false, true, "AWSSDK.Net35.Travis.sln");
GeneratePlatformSpecificSolution(GetProjectConfig(ProjectTypes.Net45), false, true, "AWSSDK.Net45.Travis.sln");
}