/// <summary> /// Creates the configuration. /// </summary> /// <param name = "name">The name.</param> /// <returns></returns> public override SolutionItemConfiguration CreateConfiguration (string name) { MonobjcProjectConfiguration configuration = new MonobjcProjectConfiguration (name); configuration.CopyFrom (base.CreateConfiguration (name)); return configuration; }
public override SolutionItemConfiguration CreateConfiguration(string name) { var conf = new MonobjcProjectConfiguration(name); if (LanguageBinding != null) conf.CompilationParameters = LanguageBinding.CreateCompilationParameters(null); return conf; }
/// <summary> /// Initializes a new instance of the <see cref = "MonobjcExecutionCommand" /> class. /// </summary> /// <param name = "configuration">The configuration.</param> public MonobjcExecutionCommand(MonobjcProjectConfiguration configuration) { this.configuration = configuration; }
static IEnumerable<FilePair> GetReferenceFilePairsForProject(DotNetProject proj, ConfigurationSelector configuration, MonobjcProjectConfiguration conf) { var refTypes = new object[] { ReferenceType.Assembly, ReferenceType.Project }; var refs = proj.References .Where(r => r.LocalCopy) .Where(r => refTypes.Contains(r.ReferenceType)); foreach (var r in refs) { var filePath = new FilePath(r.GetReferencedFileNames(configuration)[0]); var destFileName = conf.ResourcesDirectory.Combine(filePath.FileName); yield return new FilePair(filePath, destFileName); if (File.Exists(filePath + ".mdb")) yield return new FilePair(filePath + ".mdb", destFileName + ".mdb"); if (r.ReferenceType == ReferenceType.Project) { var childProj = r.OwnerProject.ParentSolution.FindProjectByName(r.Reference) as DotNetProject; if (childProj != null) { foreach (var pair in GetReferenceFilePairsForProject(childProj, configuration, conf)) { yield return pair; } } } } }