bool BuildDependencies(out bool executeOnErrors) { executeOnErrors = false; if (String.IsNullOrEmpty(DependsOnTargets)) { return(true); } var expr = new Expression(); expr.Parse(DependsOnTargets, ParseOptions.AllowItemsNoMetadataAndSplit); string [] targetNames = (string [])expr.ConvertTo(Project, typeof(string [])); bool result = BuildOtherTargets(targetNames, tname => engine.LogError("Target '{0}', a dependency of target '{1}', not found.", tname, Name), out executeOnErrors); if (!result && executeOnErrors) { ExecuteOnErrors(); } return(result); }