Ensure that InitialTargets and DefaultTargets from imported projects
commitee6e097a193ce9128ebe54884d10c1059a848fdc
authorankit <ankit@e3ebcda4-bce8-0310-ba0a-eca2169e7518>
Fri, 25 Sep 2009 19:50:41 +0000 (25 19:50 +0000)
committerankit <ankit@e3ebcda4-bce8-0310-ba0a-eca2169e7518>
Fri, 25 Sep 2009 19:50:41 +0000 (25 19:50 +0000)
tree8c1b2ad43c7029635e290a64ae111b30c4378481
parentf25b5c46b3063b41d6fb0bcd3cabc561670aad57
Ensure that InitialTargets and DefaultTargets from imported projects
are honored.

In class/Microsoft.Build.Engine/Microsoft.Build.BuildEngine:

* Project.cs: Get InitialTargets from the imported projects also.
The combined list of targets are executed, in the order they were
found.
DefaultTargets are also read in from imported projects, and the first
non-empty DefaultTargets found is used.

In class/Microsoft.Build.Engine/Test/Microsoft.Build.BuildEngine:

* ProjectTest.cs (TestInitialTargetsWithImports):
(TestDefaultTargets):
(TestDefaultTargetsWithImports):
(TestNoDefaultTargetsWithImports):
(TestNoDefaultTargets): New tests.

In tools/xbuild:

* xbuild/Microsoft.Common.targets: Remove _ValidateEssentialProperties
from BuildDependsOn, which was a hack. It will get invoked from the
InitialTargets now.

git-svn-id: svn+ssh://mono-cvs.ximian.com/source/trunk/mcs@142653 e3ebcda4-bce8-0310-ba0a-eca2169e7518
class/Microsoft.Build.Engine/Microsoft.Build.BuildEngine/ChangeLog
class/Microsoft.Build.Engine/Microsoft.Build.BuildEngine/Project.cs
class/Microsoft.Build.Engine/Test/Microsoft.Build.BuildEngine/ChangeLog
class/Microsoft.Build.Engine/Test/Microsoft.Build.BuildEngine/ProjectTest.cs
tools/xbuild/ChangeLog
tools/xbuild/xbuild/Microsoft.Common.targets