예제 #1
0
 private static void ProcessAntFile(GraphBuildContext context, Target target, XElement targetElement)
 {
     var calls = targetElement.Descendants("ant");
     foreach (var call in calls)
     {
         var calledTarget = ResolveTarget(context, ResolveTargetElement(context, SafeAttribute(call, "antfile"), SafeAttribute(call, "target")));
         target.AddDependency(calledTarget, ">");
     }
 }
예제 #2
0
 private static void ProcessAntCalls(GraphBuildContext context, Target target, XElement targetElement)
 {
     var calls = targetElement.Descendants("antcall");
     foreach (var call in calls)
     {
         var calledTarget = ResolveTarget(context, targetElement.Document.FindTarget(call.Attribute("target").Value));
         target.AddDependency(calledTarget, "+");
     }
 }
예제 #3
0
        private static void ProcessDependencies(GraphBuildContext context, Target target, XElement targetElement)
        {
            var dependencies = SafeAttribute(targetElement, "depends");
            if (string.IsNullOrWhiteSpace(dependencies)) return;

            foreach (var dependency in dependencies.Split(',').Select(d => d.Trim()))
            {
                context.PushScript();
                var targetDependency = context.FindTarget(dependency) ??
                                       ResolveTarget(context, ResolveTargetElement(context, targetElement.Document, dependency));

                context.PopScript();
                target.AddDependency(targetDependency);
            }
        }