diff options
author | elliott_c <ocielliottc@users.noreply.github.com> | 2011-03-03 18:52:40 +0000 |
---|---|---|
committer | elliott_c <ocielliottc@users.noreply.github.com> | 2011-03-03 18:52:40 +0000 |
commit | aa9350cf1b2fa70eec852073c598b91deb2222d6 (patch) | |
tree | a99cf08be1562dcb6258ff6dc5285954b238f23d | |
parent | aee94483473ae11ac413e812cfa1f2a5ad39452d (diff) | |
download | MPC-aa9350cf1b2fa70eec852073c598b91deb2222d6.tar.gz |
ChangeLogTag: Thu Mar 3 18:51:23 UTC 2011 Chad Elliott <elliott_c@ociweb.com>
-rw-r--r-- | ChangeLog | 13 | ||||
-rw-r--r-- | docs/html/RpmSpec.html | 13 | ||||
-rw-r--r-- | modules/WorkspaceCreator.pm | 18 |
3 files changed, 37 insertions, 7 deletions
@@ -1,3 +1,16 @@ +Thu Mar 3 18:51:23 UTC 2011 Chad Elliott <elliott_c@ociweb.com> + + * docs/html/RpmSpec.html: + + Fixed html errors and warnings. + + * modules/WorkspaceCreator.pm: + + Fixed a bug where a project added by an aggregated workspace + containing a relative path would not be recognized as a duplicate + if the same project were added by another workspace without a + relative path. + Tue Feb 15 16:02:17 UTC 2011 Adam Mitz <mitza@ociweb.com> * MPC version 3.9.0 released. diff --git a/docs/html/RpmSpec.html b/docs/html/RpmSpec.html index 355f806c..514f3ef6 100644 --- a/docs/html/RpmSpec.html +++ b/docs/html/RpmSpec.html @@ -18,6 +18,7 @@ <div> <h3 class="Head2">Background/Abstract</h3> + <ul> <li class="body">The <em>RpmSpec Type</em> generates <samp>.spec</samp> files suitable for use by the <samp><a href="http://docs.fedoraproject.org/en-US/Fedora_Draft_Documentation/0.1/html/RPM_Guide/ch-rpmbuild.html">rpmbuild</a></samp> @@ -38,7 +39,7 @@ work on platforms for which an RPM port exists, but such success would be coincidental and neither intended, tested, nor guaranteed.</li> - + </ul> </div> <div> @@ -91,7 +92,7 @@ <div> <h3 class="Head2">Adapting/Writing Projects for Packaging</h3> - <h4><a name-"mwcnotes"></a>Creating Workspaces</h4> + <h4><a name="mwcnotes"></a>Creating Workspaces</h4> <p>The RpmSpec type uses <a href="MakeProjectCreator.html#AggregatedWorkspace">aggregate workspaces</a> to define the scope of a package. In other words, @@ -118,8 +119,8 @@ workspace { } </pre> Details on the variables allowed in the <samp>specific</samp> - clause can be found in <a href="../templates/rpmspec.txt">the - <samp>$MPC_ROOT/docs/templates/rpmspec.txt</samp> file.</a> + clause can be found in the <a href="../templates/rpmspec.txt"> + <samp>$MPC_ROOT/docs/templates/rpmspec.txt</samp></a> file. <p>If you use workspaces as a part of building right now, you may wish to write additional @@ -144,6 +145,7 @@ workspace { developer can augment or replace MPC's guesses using <samp>Install*_Files</samp> groupings. See the documentation on the <samp>gnuace</samp> installation feature for details. + </div> </div> <div> @@ -195,6 +197,5 @@ workspace { <hr> -<address></address> -<!-- hhmts start --> Last modified: Fri Dec 24 09:28:45 CST 2010 <!-- hhmts end --> +<!-- hhmts start --> Last modified: Fri Jan 14 09:09:04 CST 2011 <!-- hhmts end --> </body> </html> diff --git a/modules/WorkspaceCreator.pm b/modules/WorkspaceCreator.pm index f0fd5239..bb64e9bc 100644 --- a/modules/WorkspaceCreator.pm +++ b/modules/WorkspaceCreator.pm @@ -726,7 +726,23 @@ sub handle_scoped_unknown { } elsif (defined $self->{'scoped_basedir'}) { if ($self->path_is_relative($line)) { - $line = $self->{'scoped_basedir'} . ($line ne '.' ? "/$line" : ''); + if ($line eq '.') { + $line = $self->{'scoped_basedir'}; + } + else { + ## This is a relative path and the project may have been added + ## previously without a relative path. We need to convert the + ## relative path into an absolute path and, if possible, remove + ## the current working directory from the front. This will get + ## it down to a path that's relative to the current directory and + ## likely to match up with the addition of this file or directory + ## from an upper workspace. + my $cwd = $self->getcwd(); + $line = Cwd::abs_path($self->{'scoped_basedir'} . "/$line"); + if (index($line, $cwd) == 0) { + $line = substr($line, length($cwd) + 1); + } + } } } |