projects
/
mono.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
|
inline
| side by side (parent:
f29e8e4
)
[xbuild] Set @(CollectedBuildOutput) for projects build from .sln .
author
Ankit Jain
<radical@corewars.org>
Thu, 3 Mar 2011 22:47:22 +0000
(
04:17
+0530)
committer
Ankit Jain
<radical@corewars.org>
Thu, 3 Mar 2011 22:48:29 +0000
(
04:18
+0530)
mcs/tools/xbuild/SolutionParser.cs
patch
|
blob
|
history
diff --git
a/mcs/tools/xbuild/SolutionParser.cs
b/mcs/tools/xbuild/SolutionParser.cs
index 67bce1c6afb0519ab3f4d138f1cbbc1f32b20a8d..e59375a0df69fa299fd17cbcc4c9202e32ae8071 100644
(file)
--- a/
mcs/tools/xbuild/SolutionParser.cs
+++ b/
mcs/tools/xbuild/SolutionParser.cs
@@
-776,8
+776,12
@@
namespace Mono.XBuild.CommandLine {
ProjectInfo project = projectInfo.Value;
foreach (string buildTarget in buildTargets) {
string target_name = GetTargetNameForProject (project.Name, buildTarget);
ProjectInfo project = projectInfo.Value;
foreach (string buildTarget in buildTargets) {
string target_name = GetTargetNameForProject (project.Name, buildTarget);
+ bool is_build_or_rebuild = buildTarget == "Build" || buildTarget == "Rebuild";
Target target = p.Targets.AddNewTarget (target_name);
target.Condition = "'$(CurrentSolutionConfigurationContents)' != ''";
Target target = p.Targets.AddNewTarget (target_name);
target.Condition = "'$(CurrentSolutionConfigurationContents)' != ''";
+
+ if (is_build_or_rebuild)
+ target.Outputs = "@(CollectedBuildOutput)";
if (project.Dependencies.Count > 0)
target.DependsOnTargets = String.Join (";",
project.Dependencies.Values.Select (
if (project.Dependencies.Count > 0)
target.DependsOnTargets = String.Join (";",
project.Dependencies.Values.Select (
@@
-795,6
+799,8
@@
namespace Mono.XBuild.CommandLine {
task = target.AddNewTask ("MSBuild");
task.SetParameterValue ("Projects", project.FileName);
task.SetParameterValue ("ToolsVersion", "$(ProjectToolsVersion)");
task = target.AddNewTask ("MSBuild");
task.SetParameterValue ("Projects", project.FileName);
task.SetParameterValue ("ToolsVersion", "$(ProjectToolsVersion)");
+ if (is_build_or_rebuild)
+ task.AddOutputItem ("TargetOutputs", "CollectedBuildOutput");
if (buildTarget != "Build")
task.SetParameterValue ("Targets", buildTarget);
if (buildTarget != "Build")
task.SetParameterValue ("Targets", buildTarget);
@@
-877,7
+883,11
@@
namespace Mono.XBuild.CommandLine {
{
foreach (string buildTarget in buildTargets) {
Target t = p.Targets.AddNewTarget (buildTarget);
{
foreach (string buildTarget in buildTargets) {
Target t = p.Targets.AddNewTarget (buildTarget);
+ bool is_build_or_rebuild = buildTarget == "Build" || buildTarget == "Rebuild";
+
t.Condition = "'$(CurrentSolutionConfigurationContents)' != ''";
t.Condition = "'$(CurrentSolutionConfigurationContents)' != ''";
+ if (is_build_or_rebuild)
+ t.Outputs = "@(CollectedBuildOutput)";
BuildTask task = null;
for (int i = 0; i < num_levels; i ++) {
BuildTask task = null;
for (int i = 0; i < num_levels; i ++) {
@@
-893,6
+903,8
@@
namespace Mono.XBuild.CommandLine {
//FIXME: change this to BuildInParallel=true, when parallel
// build support gets added
task.SetParameterValue ("RunEachTargetSeparately", "true");
//FIXME: change this to BuildInParallel=true, when parallel
// build support gets added
task.SetParameterValue ("RunEachTargetSeparately", "true");
+ if (is_build_or_rebuild)
+ task.AddOutputItem ("TargetOutputs", "CollectedBuildOutput");
level_str = String.Format ("SkipLevel{0}", i);
task = t.AddNewTask ("Message");
level_str = String.Format ("SkipLevel{0}", i);
task = t.AddNewTask ("Message");