diff options
author | elliott_c <elliott_c@ae88bc3d-4319-0410-8dbf-d08b4c9d3795> | 2003-11-11 18:22:49 +0000 |
---|---|---|
committer | elliott_c <elliott_c@ae88bc3d-4319-0410-8dbf-d08b4c9d3795> | 2003-11-11 18:22:49 +0000 |
commit | 4cd2bddb9ea2087d9fff5cdb541e68bdb4392859 (patch) | |
tree | 1b440b2941db04f026b416dd02e52802adc1bdc4 /bin | |
parent | 8f0365a8367570b71faa487524abdce64e26c2f1 (diff) | |
download | ATCD-4cd2bddb9ea2087d9fff5cdb541e68bdb4392859.tar.gz |
ChangeLogTag: Tue Nov 11 12:20:14 2003 Chad Elliott <elliott_c@ociweb.com>
Diffstat (limited to 'bin')
-rw-r--r-- | bin/MakeProjectCreator/modules/WorkspaceCreator.pm | 21 | ||||
-rw-r--r-- | bin/MakeProjectCreator/templates/gnu.mpd | 3 |
2 files changed, 21 insertions, 3 deletions
diff --git a/bin/MakeProjectCreator/modules/WorkspaceCreator.pm b/bin/MakeProjectCreator/modules/WorkspaceCreator.pm index 5a6eb1dbce5..e806741417c 100644 --- a/bin/MakeProjectCreator/modules/WorkspaceCreator.pm +++ b/bin/MakeProjectCreator/modules/WorkspaceCreator.pm @@ -938,7 +938,8 @@ sub add_implicit_project_dependencies { my($append) = $generator->translate_value('after', $key); my($file) = $self->{'project_file_list'}->{$ikey}->[0]; my($dir) = $self->{'project_file_list'}->{$ikey}->[1]; - + my($cfile) = $self->escape_regex_special( + $generator->translate_value('after', $ikey)); ## Remove our starting directory from the projects directory ## to get the right part of the directory to prepend. $dir =~ s/^$cwd[\/\\]*//; @@ -946,8 +947,22 @@ sub add_implicit_project_dependencies { $file = "$dir/$file"; } - ## Append the dependency - $self->{'project_info'}->{$file}->[1] .= " $append"; + ## Turn the append value into a key for 'project_info' + my($ccheck) = $append; + $ccheck =~ s/"//g; + if ($dir ne '') { + $ccheck = "$dir/$ccheck"; + } + + ## If the append value key contains a reference to the project + ## that we were going to append the dependency value, then + ## ignore the generated dependency. It is redundant and + ## quite possibly wrong. + if (defined $self->{'project_info'}->{$ccheck} && + $self->{'project_info'}->{$ccheck}->[1] !~ /$cfile/) { + ## Append the dependency + $self->{'project_info'}->{$file}->[1] .= " $append"; + } } } } diff --git a/bin/MakeProjectCreator/templates/gnu.mpd b/bin/MakeProjectCreator/templates/gnu.mpd index d9ef3fc53ff..be74a474951 100644 --- a/bin/MakeProjectCreator/templates/gnu.mpd +++ b/bin/MakeProjectCreator/templates/gnu.mpd @@ -361,6 +361,9 @@ endif INSTALL_CHECK = <%if(dllout)%><%dllout%><%else%><%libout%><%endif%> ifeq ($(INSTALL_CHECK),.) + ifeq ($(PWD),) + PWD=$(shell pwd) + endif INSLIB = $(PWD) else INSLIB = $(INSTALL_CHECK) |