diff options
author | elliott_c <ocielliottc@users.noreply.github.com> | 2014-06-30 12:34:00 +0000 |
---|---|---|
committer | elliott_c <ocielliottc@users.noreply.github.com> | 2014-06-30 12:34:00 +0000 |
commit | a9b200b18c2558e0689805bdb18b8623b02ffcbc (patch) | |
tree | 45a1cbf3269711dfed979c556039cb1c96aa4b1b /modules/VC8WorkspaceCreator.pm | |
parent | cd00a66d16ad42f8beb5f6bf2c534b528d1acd98 (diff) | |
download | MPC-a9b200b18c2558e0689805bdb18b8623b02ffcbc.tar.gz |
ChangeLogTag: Mon Jun 30 12:28:49 UTC 2014 Chad Elliott <elliott_c@ociweb.com>
Diffstat (limited to 'modules/VC8WorkspaceCreator.pm')
-rw-r--r-- | modules/VC8WorkspaceCreator.pm | 22 |
1 files changed, 16 insertions, 6 deletions
diff --git a/modules/VC8WorkspaceCreator.pm b/modules/VC8WorkspaceCreator.pm index f8404553..576b852f 100644 --- a/modules/VC8WorkspaceCreator.pm +++ b/modules/VC8WorkspaceCreator.pm @@ -130,12 +130,22 @@ sub post_workspace { ## unmanaged c++ libraries. If it's a managed project or ## it's not a c++ project, it's ok to add a reference. elsif ($gmap{$dep}->[1]) { - push(@read, $spc . '<ProjectReference Include="' . - $relative . '">' . $crlf, - $spc . ' <Project>{' . $gmap{$dep}->[0] . - '}</Project>' . $crlf, - $spc . ' <Name>' . $dep . '</Name>' . $crlf, - $spc . '</ProjectReference>' . $crlf); + ## There are situations where, in C#, we want a dependency + ## between projects but not want them linked together (via a + ## ProjectReference). There is a build dependency, i.e., + ## this project needs to be built if some other project is + ## built. But, that's where the dependency ends. Setting + ## the ProjectReference attribute to false allows us to do + ## that. + my $attr = $creator->get_dependency_attribute($dep); + if (!defined $attr || $attr !~ /ProjectReference=false/i) { + push(@read, $spc . '<ProjectReference Include="' . + $relative . '">' . $crlf, + $spc . ' <Project>{' . $gmap{$dep}->[0] . + '}</Project>' . $crlf, + $spc . ' <Name>' . $dep . '</Name>' . $crlf, + $spc . '</ProjectReference>' . $crlf); + } } ## Indicate that we need to re-write the file |