summaryrefslogtreecommitdiff
path: root/modules/VC8WorkspaceCreator.pm
diff options
context:
space:
mode:
authorelliott_c <ocielliottc@users.noreply.github.com>2010-02-28 15:10:02 +0000
committerelliott_c <ocielliottc@users.noreply.github.com>2010-02-28 15:10:02 +0000
commit388a74999eafdbd31d3b904ce3dcc23b35e028a3 (patch)
treecf63cc79b5be94d44b786138bd65a237f3a658b4 /modules/VC8WorkspaceCreator.pm
parent61e7a1bff682ef695d0fe2204b9b2e0918b47fb5 (diff)
downloadMPC-388a74999eafdbd31d3b904ce3dcc23b35e028a3.tar.gz
ChangeLogTag: Sun Feb 28 15:08:56 UTC 2010 Chad Elliott <elliott_c@ociweb.com>
Diffstat (limited to 'modules/VC8WorkspaceCreator.pm')
-rw-r--r--modules/VC8WorkspaceCreator.pm15
1 files changed, 15 insertions, 0 deletions
diff --git a/modules/VC8WorkspaceCreator.pm b/modules/VC8WorkspaceCreator.pm
index 60dfd7c7..1291e831 100644
--- a/modules/VC8WorkspaceCreator.pm
+++ b/modules/VC8WorkspaceCreator.pm
@@ -99,9 +99,24 @@ sub post_workspace {
## If the current project is managed, then the reference
## project must be managed or a non-c++ project.
if (!$managed || ($managed && $gmap{$dep}->[1])) {
+ ## See if the dependency has an associated attribute.
+ ## If it does, split it into name value pairs for use in
+ ## the resulting generated XML.
+ my %attr;
+ my $attr = $creator->get_dependency_attribute($dep);
+ if (defined $attr) {
+ foreach my $a (split(',', $attr)) {
+ my @nvp = split('=', $a);
+ $attr{lc($nvp[0])} = $nvp[1]if (defined $nvp[0] &&
+ defined $nvp[1]);
+ }
+ }
+
push(@read, $spc . '<ProjectReference' . $crlf .
$spc . "\tReferencedProjectIdentifier=" .
"\"\{$gmap{$dep}->[0]\}\"$crlf" .
+ (defined $attr{'copylocal'} ? $spc .
+ "\tCopyLocal=\"" . $attr{'copylocal'} . "\"$crlf" : '') .
$spc . "\tRelativePathToProject=\"$relative\"$crlf" .
$spc . '/>' . $crlf);
}