summaryrefslogtreecommitdiff
path: root/Master
diff options
context:
space:
mode:
Diffstat (limited to 'Master')
-rw-r--r--Master/tlpkg/TeXLive/TLPOBJ.pm11
-rw-r--r--Master/tlpkg/TeXLive/TLPSRC.pm9
2 files changed, 17 insertions, 3 deletions
diff --git a/Master/tlpkg/TeXLive/TLPOBJ.pm b/Master/tlpkg/TeXLive/TLPOBJ.pm
index dcd22ff99eb..cdaa93b2db2 100644
--- a/Master/tlpkg/TeXLive/TLPOBJ.pm
+++ b/Master/tlpkg/TeXLive/TLPOBJ.pm
@@ -199,13 +199,16 @@ sub from_fh {
}
sub recompute_revision {
- my ($self,$tltree) = @_;
+ my ($self,$tltree, $revtlpsrc) = @_;
my @files = $self->all_files;
my $filemax = 0;
foreach my $f (@files) {
$filemax = $tltree->file_svn_lastrevision($f);
$self->revision(($filemax > $self->revision) ? $filemax : $self->revision);
}
+ if (defined($revtlpsrc)) {
+ $self->revision( $filemax > $revtlpsrc ? $filemax : $revtlpsrc );
+ }
}
sub recompute_sizes {
@@ -930,9 +933,13 @@ which the files should be taken.
recomputes the sizes based on the information present in C<$tltree>.
-=item C<recompute_revision($tltree)>
+=item C<recompute_revision($tltree [, $revtlpsrc ])>
recomputes the revision based on the information present in C<$tltree>.
+The optional argument C<$rectlpsrc> can be an additional revision number
+which is taken into account. C<$tlpsrc->make_tlpobj> adds the revision
+number of the C<tlpsrc> file here so that collections (which do not
+contain files) also have revision number.
=item C<update_from_catalogue($texcatalogue)>
diff --git a/Master/tlpkg/TeXLive/TLPSRC.pm b/Master/tlpkg/TeXLive/TLPSRC.pm
index f1afcbdc550..030846abe6e 100644
--- a/Master/tlpkg/TeXLive/TLPSRC.pm
+++ b/Master/tlpkg/TeXLive/TLPSRC.pm
@@ -317,8 +317,15 @@ sub make_tlpobj
$tlp->remove_binfiles($arch,@{$archmatches{$arch}});
}
}
+ # for collections and schemes we add the revision number of the .tlpsrc
+ # file to the compute list:
+ my $addnr = 0;
+ if (($self->category eq "Collection") || ($self->category eq "Scheme")) {
+ my $fn = "tlpk/tlpsrc/" . $self->name . ".tlpsrc";
+ $addnr = $tltree->file_svn_lastrevision($fn);
+ }
+ $tlp->recompute_revision($tltree, $addnr);
$tlp->recompute_sizes($tltree);
- $tlp->recompute_revision($tltree);
return $tlp;
}