summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorelliott_c <ocielliottc@users.noreply.github.com>2011-03-03 18:52:40 +0000
committerelliott_c <ocielliottc@users.noreply.github.com>2011-03-03 18:52:40 +0000
commitaa9350cf1b2fa70eec852073c598b91deb2222d6 (patch)
treea99cf08be1562dcb6258ff6dc5285954b238f23d
parentaee94483473ae11ac413e812cfa1f2a5ad39452d (diff)
downloadMPC-aa9350cf1b2fa70eec852073c598b91deb2222d6.tar.gz
ChangeLogTag: Thu Mar 3 18:51:23 UTC 2011 Chad Elliott <elliott_c@ociweb.com>
-rw-r--r--ChangeLog13
-rw-r--r--docs/html/RpmSpec.html13
-rw-r--r--modules/WorkspaceCreator.pm18
3 files changed, 37 insertions, 7 deletions
diff --git a/ChangeLog b/ChangeLog
index f9450b6e..a167f243 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -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);
+ }
+ }
}
}