diff options
Diffstat (limited to 'systems/texlive/tlnet/tlpkg/TeXLive')
-rw-r--r-- | systems/texlive/tlnet/tlpkg/TeXLive/TLUtils.pm | 10 |
1 files changed, 6 insertions, 4 deletions
diff --git a/systems/texlive/tlnet/tlpkg/TeXLive/TLUtils.pm b/systems/texlive/tlnet/tlpkg/TeXLive/TLUtils.pm index 08c146a9a3..a2693143d1 100644 --- a/systems/texlive/tlnet/tlpkg/TeXLive/TLUtils.pm +++ b/systems/texlive/tlnet/tlpkg/TeXLive/TLUtils.pm @@ -1,4 +1,4 @@ -# $Id: TLUtils.pm 50493 2019-03-20 22:57:54Z karl $ +# $Id: TLUtils.pm 52189 2019-09-27 00:31:10Z preining $ # TeXLive::TLUtils.pm - the inevitable utilities for TeX Live. # Copyright 2007-2019 Norbert Preining, Reinhard Kotucha # This file is licensed under the GNU General Public License version 2 @@ -6,7 +6,7 @@ package TeXLive::TLUtils; -my $svnrev = '$Revision: 50493 $'; +my $svnrev = '$Revision: 52189 $'; my $_modulerevision = ($svnrev =~ m/: ([0-9]+) /) ? $1 : "unknown"; sub module_revision { return $_modulerevision; } @@ -1143,8 +1143,10 @@ sub copy { } if (-l "$infile") { - symlink (readlink $infile, "$destdir/$filename") - || die "symlink(readlink $infile, $destdir/$filename) failed: $!"; + # the link target might be relative, so we need to start from + # the directory of $infile for the link + symlink (Cwd::abs_path(dirname($infile)) . "/" . readlink($infile), "$destdir/$filename") + || die "symlink(dirname($infile) . \"/\" . readlink($infile), $destdir/$filename) failed: $!"; } else { if (! open (IN, $infile)) { warn "open($infile) failed, not copying: $!"; |