From a81740dbc6000c7523cee4b164a1a410535be3d1 Mon Sep 17 00:00:00 2001 From: Norbert Preining Date: Wed, 28 Aug 2019 10:42:39 +0900 Subject: TLPOBJ::make_container: generate versioned containers by default add links in the system case (not for user backup containers) --- Master/tlpkg/TeXLive/TLPOBJ.pm | 16 +++++++++++++++- 1 file changed, 15 insertions(+), 1 deletion(-) diff --git a/Master/tlpkg/TeXLive/TLPOBJ.pm b/Master/tlpkg/TeXLive/TLPOBJ.pm index 7b00afe5dc2..1b6d17d1e3b 100644 --- a/Master/tlpkg/TeXLive/TLPOBJ.pm +++ b/Master/tlpkg/TeXLive/TLPOBJ.pm @@ -631,7 +631,11 @@ sub make_container { $selfcopy->writeout(\*TMP); close(TMP); push(@files, "$tlpobjdir/$self->{'name'}.tlpobj"); - $tarname = "$containername.tar"; + # Switch to versioned containers + # $tarname = "$containername.tar"; + $tarname = "$containername.r" . $self->revision . ".tar"; + my $unversionedtar; + $unversionedtar = "$containername.tar" if (! $user); # start the fun my $tar = $::progs{'tar'}; @@ -720,6 +724,7 @@ sub make_container { # Run tar. Unlink both here in case the container is also plain tar. unlink("$destdir/$tarname"); + unlink("$destdir/$unversionedtar") if (! $user); unlink("$destdir/$containername"); xsystem(@cmdline); @@ -751,6 +756,15 @@ sub make_container { # most strange cases. unlink("$destdir/$tarname") if ((-r "$destdir/$tarname") && (-r "$destdir/$containername")); + # in case of system containers also create the links to the + # versioned containers + if (! $user) { + my $linkname = "$destdir/$unversionedtar.$compressorextension"; + unlink($linkname) if (-r $linkname); + if (!symlink($containername, $linkname)) { + tlwarn("$0: Couldn't generate link $linkname -> $containername?\n"); + } + } } else { tlwarn("$0: Couldn't find $destdir/$tarname to run $compressor\n"); return (0, 0, ""); -- cgit v1.2.3