summaryrefslogtreecommitdiff
path: root/Master/tlpkg
diff options
context:
space:
mode:
authorNorbert Preining <preining@logic.at>2008-03-29 19:38:26 +0000
committerNorbert Preining <preining@logic.at>2008-03-29 19:38:26 +0000
commitd3528d245bb8205140e8efe76a15c64111a7e640 (patch)
tree708147e73587641960f0b2375fc0f66cde508c1f /Master/tlpkg
parent4d66e5d1bdfb3882f09301e84da4fd2be9600ec9 (diff)
fixes to TLMedia (installation from dvd), TLUtils (need to write tlpobj
files), and tlpsrc2tlpdb (func call in string) git-svn-id: svn://tug.org/texlive/trunk@7231 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/tlpkg')
-rw-r--r--Master/tlpkg/TeXLive/TLMedia.pm19
-rw-r--r--Master/tlpkg/TeXLive/TLUtils.pm8
-rwxr-xr-xMaster/tlpkg/bin/tlpsrc2tlpdb2
3 files changed, 23 insertions, 6 deletions
diff --git a/Master/tlpkg/TeXLive/TLMedia.pm b/Master/tlpkg/TeXLive/TLMedia.pm
index 8d38ff3c184..061e369b6a8 100644
--- a/Master/tlpkg/TeXLive/TLMedia.pm
+++ b/Master/tlpkg/TeXLive/TLMedia.pm
@@ -164,22 +164,22 @@ sub install_package {
my @installfiles;
my $location = $self->location;
foreach ($tlpobj->runfiles) {
- s!^!$location/!;
+ # s!^!$location/!;
push @installfiles, $_;
}
foreach ($tlpobj->allbinfiles) {
- s!^!$location/!;
+ # s!^!$location/!;
push @installfiles, $_;
}
if ($opt_src) {
foreach ($tlpobj->srcfiles) {
- s!^!$location/!;
+ # s!^!$location/!;
push @installfiles, $_;
}
}
if ($opt_doc) {
foreach ($tlpobj->docfiles) {
- s!^!$location/!;
+ # s!^!$location/!;
push @installfiles, $_;
}
}
@@ -229,6 +229,14 @@ sub install_package {
if (!$opt_doc) {
$tlpobj->clear_docfiles;
}
+ # we have to write out the tlpobj file since it is contained in the
+ # archives (.tar.lzma) but at DVD install time we don't have them
+ my $tlpod = $totlpdb->root . "/tlpkg/tlpobj";
+ mkdirhier( $tlpod );
+ open(TMP,">$tlpod/".$tlpobj->name.".tlpobj") or
+ die("Cannot open tlpobj file for ".$tlpobj->name);
+ $tlpobj->writeout(\*TMP);
+ close(TMP);
$totlpdb->add_tlpobj($tlpobj);
$totlpdb->save;
# compute the return value
@@ -304,12 +312,13 @@ sub _install_package {
}
if (ref $what) {
# we are getting a ref to a list of files, so install from DVD
+ my $location = $self->location;
foreach my $file (@$what) {
# @what is taken, not @filelist!
# is this still needed?
my $dn=dirname($file);
mkdirhier("$target/$dn");
- copy "$file", "$target/$dn";
+ copy "$location/$file", "$target/$dn";
}
} elsif ($what =~ m,http://|ftp://,) {
# we are installing from the NET
diff --git a/Master/tlpkg/TeXLive/TLUtils.pm b/Master/tlpkg/TeXLive/TLUtils.pm
index 14fbc8bc8cc..5d4044e08ec 100644
--- a/Master/tlpkg/TeXLive/TLUtils.pm
+++ b/Master/tlpkg/TeXLive/TLUtils.pm
@@ -596,6 +596,14 @@ sub install_packages {
$tlpobj->clear_docfiles;
}
$totlpdb->add_tlpobj($tlpobj);
+ # we have to write out the tlpobj file since it is contained in the
+ # archives (.tar.lzma) but at DVD install time we don't have them
+ my $tlpod = $totlpdb->root . "/tlpkg/tlpobj";
+ mkdirhier( $tlpod );
+ open(TMP,">$tlpod/".$tlpobj->name.".tlpobj") or
+ die("Cannot open tlpobj file for ".$tlpobj->name);
+ $tlpobj->writeout(\*TMP);
+ close(TMP);
}
$totlpdb->save;
}
diff --git a/Master/tlpkg/bin/tlpsrc2tlpdb b/Master/tlpkg/bin/tlpsrc2tlpdb
index 57832facb6a..51ac8240bbf 100755
--- a/Master/tlpkg/bin/tlpsrc2tlpdb
+++ b/Master/tlpkg/bin/tlpsrc2tlpdb
@@ -115,7 +115,7 @@ sub main
if ($opt_all) {
$tldb->root("$opt_master");
$tldb->save;
- tllog($::LOG_NORMAL, "$0: wrote $src_count packages to $tldb->root.\n");
+ tllog($::LOG_NORMAL, "$0: wrote $src_count packages to ". $tldb->root . ".\n");
} else {
$tldb->writeout;
}