summaryrefslogtreecommitdiff
path: root/Master/tlpkg/TeXLive/TLPDB.pm
diff options
context:
space:
mode:
Diffstat (limited to 'Master/tlpkg/TeXLive/TLPDB.pm')
-rw-r--r--Master/tlpkg/TeXLive/TLPDB.pm24
1 files changed, 15 insertions, 9 deletions
diff --git a/Master/tlpkg/TeXLive/TLPDB.pm b/Master/tlpkg/TeXLive/TLPDB.pm
index e90124f57f0..10e377ec05e 100644
--- a/Master/tlpkg/TeXLive/TLPDB.pm
+++ b/Master/tlpkg/TeXLive/TLPDB.pm
@@ -242,7 +242,6 @@ installers. This function will probably go away.
sub generate_listfiles {
my ($self,$destdir) = @_;
- die "NEEDS TO BE REWRITTEN USING TLConfig!!!\n";
if (not(defined($destdir))) {
$destdir = TeXLive::TLPDB->listdir;
}
@@ -275,13 +274,15 @@ sub _generate_listfile {
&mkpath("$destdir") if (! -d "$destdir");
my (@lop, @lot);
foreach my $d ($tlp->depends) {
- die "NEED TO BE ADJUSTED\n";
- if ($d =~ m/^(Package|Documentation|TLCore)\/(.*)$/) {
- push @lop, $2;
- } elsif ($d =~ m/^Collection\/(.*)$/) {
- push @lot, $1;
+ my $subtlp = $self->get_package($d);
+ if (defined($subtlp)) {
+ if ($subtlp->is_meta_package) {
+ push @lot, $d;
+ } else {
+ push @lop, $d;
+ }
} else {
- warn "strange depends line: $d\n";
+ warn "Strange: $tlp->name depends on $d, but this package does not exists!\n";
}
}
open(TMP, ">$destdir/$listname") or die "Cannot open $destdir/$listname!";
@@ -322,8 +323,13 @@ sub _generate_listfile {
foreach my $c (@lot) {
my $coll = $self->get_package($c);
foreach my $d ($coll->depends) {
- if ($d =~ m/^(Package|Documentation|TLCore)\/(.*)$/) {
- TeXLive::TLUtils::push_uniq(\@collpkg,$2);
+ my $subtlp = $self->get_package($d);
+ if (defined($subtlp)) {
+ if (!($subtlp->is_meta_package)) {
+ TeXLive::TLUtils::push_uniq(\@collpkg,$d);
+ }
+ } else {
+ warn "Strange: $coll->name depends on $d, but this does not exists!\n";
}
}
}