ResolveDeferredSetup() { // any per-configuration files excluded from the build foreach (var target in this.Targets.Values) { if (null == target.SourcesBuildPhase) { continue; } foreach (var config in target.ConfigurationList) { if (!target.SourcesBuildPhase.IsValueCreated) { continue; } var diff = target.SourcesBuildPhase.Value.BuildFiles.Complement(config.BuildFiles); if (diff.Any()) { var excluded = new MultiConfigurationValue(); foreach (var file in diff) { var fullPath = file.FileRef.Path.ToString(); var package_build_dir = this.Module.Macros["packagebuilddir"].ToString(); var srcRoot = this.Module.Macros["packagedir"].ToString(); if (fullPath.StartsWith(package_build_dir)) { var excluded_path = "$(SYMROOT)" + fullPath.Replace(package_build_dir, ""); excluded.Add(excluded_path); } else if (fullPath.StartsWith(srcRoot)) { var excluded_path = "$(SRCROOT)" + fullPath.Replace(srcRoot, ""); excluded.Add(excluded_path); } else { var excluded_path = System.IO.Path.GetFileName(fullPath); excluded.Add(excluded_path); } } config["EXCLUDED_SOURCE_FILE_NAMES"] = excluded; } } } // any target dependencies (now that all projects have been filled out) foreach (var target in this.Targets.Values) { target.ResolveTargetDependencies(); } }
ResolveDeferredSetup() { // any per-configuration files excluded from the build foreach (var target in this.Targets.Values) { if (null == target.SourcesBuildPhase) { continue; } foreach (var config in target.ConfigurationList) { var diff = target.SourcesBuildPhase.BuildFiles.Complement(config.BuildFiles); if (diff.Count > 0) { var excluded = new MultiConfigurationValue(); foreach (var file in diff) { var fullPath = file.FileRef.Path.Parse(); var filename = System.IO.Path.GetFileName(fullPath); excluded.Add(filename); } config["EXCLUDED_SOURCE_FILE_NAMES"] = excluded; } } } // any target dependencies (now that all projects have been filled out) foreach (var target in this.Targets.Values) { target.ResolveTargetDependencies(); } }
FixupPerConfigurationData() { foreach (var target in this.Targets.Values) { if (null == target.SourcesBuildPhase) { continue; } foreach (var config in target.ConfigurationList) { var diff = target.SourcesBuildPhase.BuildFiles.Complement(config.BuildFiles); if (diff.Count > 0) { var excluded = new MultiConfigurationValue(); foreach (var file in diff) { excluded.Add(file.FileRef.Path.Parse()); } config["EXCLUDED_SOURCE_FILE_NAMES"] = excluded; } } } }
public void FixupPerConfigurationData() { foreach (var target in this.Targets.Values) { if (null == target.SourcesBuildPhase) { continue; } foreach (var config in target.ConfigurationList) { var diff = target.SourcesBuildPhase.BuildFiles.Complement(config.BuildFiles); if (diff.Count > 0) { var excluded = new MultiConfigurationValue(); foreach (var file in diff) { excluded.Add(file.FileRef.Path.Parse()); } config["EXCLUDED_SOURCE_FILE_NAMES"] = excluded; } } } }