diff options
author | Norbert Preining <preining@logic.at> | 2008-03-29 19:38:26 +0000 |
---|---|---|
committer | Norbert Preining <preining@logic.at> | 2008-03-29 19:38:26 +0000 |
commit | d3528d245bb8205140e8efe76a15c64111a7e640 (patch) | |
tree | 708147e73587641960f0b2375fc0f66cde508c1f | |
parent | 4d66e5d1bdfb3882f09301e84da4fd2be9600ec9 (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
-rw-r--r-- | Master/tlpkg/TeXLive/TLMedia.pm | 19 | ||||
-rw-r--r-- | Master/tlpkg/TeXLive/TLUtils.pm | 8 | ||||
-rwxr-xr-x | Master/tlpkg/bin/tlpsrc2tlpdb | 2 |
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; } |