public override async Task <IProject> Generate(ISolution solution, string name) { var project = await base.Generate(solution, name); project.ToolChain = IoC.Get <IShell>().ToolChains.FirstOrDefault(tc => tc is ClangGCCToolchain); var settings = ClangGCCToolchain.ProvisionClangSettings(project); project.AddFile(SourceFile.Create(project, project, project.CurrentDirectory, "main.cpp", "int main (void){}")); project.Save(); return(project); }