summaryrefslogtreecommitdiff
path: root/Master/tlpkg/dev
diff options
context:
space:
mode:
authorNorbert Preining <preining@logic.at>2011-09-05 02:18:07 +0000
committerNorbert Preining <preining@logic.at>2011-09-05 02:18:07 +0000
commita5673e5a8b0e5816d6c0c6a3f99f4777ce8db1ca (patch)
tree444351b73a0d941aa7a56222f342ed048df234f6 /Master/tlpkg/dev
parente157cbbddf3e4a7def7b9c11f0b2305754e60252 (diff)
update multi-source patch to current status, still working ;-)
git-svn-id: svn://tug.org/texlive/trunk@23821 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/tlpkg/dev')
-rw-r--r--Master/tlpkg/dev/dev.multi-source-support-v2.patch122
1 files changed, 61 insertions, 61 deletions
diff --git a/Master/tlpkg/dev/dev.multi-source-support-v2.patch b/Master/tlpkg/dev/dev.multi-source-support-v2.patch
index c6759733d43..365162a3492 100644
--- a/Master/tlpkg/dev/dev.multi-source-support-v2.patch
+++ b/Master/tlpkg/dev/dev.multi-source-support-v2.patch
@@ -1,6 +1,6 @@
Index: tlpkg/TeXLive/TLPDB.pm
===================================================================
---- tlpkg/TeXLive/TLPDB.pm (revision 22666)
+--- tlpkg/TeXLive/TLPDB.pm (revision 23788)
+++ tlpkg/TeXLive/TLPDB.pm (working copy)
@@ -70,20 +70,31 @@
$tlpdb->settings;
@@ -36,9 +36,9 @@ Index: tlpkg/TeXLive/TLPDB.pm
- tlwarn basename download_file merge_into);
+ tlwarn basename download_file merge_into tldie);
use TeXLive::TLPOBJ;
+ use TeXLive::TLWinGoo;
- use File::Temp qw/tempfile/;
-@@ -160,6 +171,10 @@
+@@ -161,6 +172,10 @@
sub add_tlpobj {
my ($self,$tlp) = @_;
@@ -49,7 +49,7 @@ Index: tlpkg/TeXLive/TLPDB.pm
$self->{'tlps'}{$tlp->name} = $tlp;
}
-@@ -208,6 +223,10 @@
+@@ -209,6 +224,10 @@
sub remove_tlpobj {
my ($self,$pkg) = @_;
@@ -60,7 +60,7 @@ Index: tlpkg/TeXLive/TLPDB.pm
if (defined($self->{'tlps'}{$pkg})) {
delete $self->{'tlps'}{$pkg};
} else {
-@@ -228,6 +247,10 @@
+@@ -229,6 +248,10 @@
sub from_file {
my ($self, $path) = @_;
@@ -71,7 +71,7 @@ Index: tlpkg/TeXLive/TLPDB.pm
if (@_ != 2) {
die "$0: from_file needs filename for initialization";
}
-@@ -360,6 +383,10 @@
+@@ -362,6 +385,10 @@
sub writeout {
my $self = shift;
@@ -82,7 +82,7 @@ Index: tlpkg/TeXLive/TLPDB.pm
my $fd = (@_ ? $_[0] : STDOUT);
foreach (sort keys %{$self->{'tlps'}}) {
ddebug("writeout: tlpname=$_ ", $self->{'tlps'}{$_}->name, "\n");
-@@ -379,6 +406,10 @@
+@@ -381,6 +408,10 @@
sub save {
my $self = shift;
@@ -93,7 +93,7 @@ Index: tlpkg/TeXLive/TLPDB.pm
my $path = $self->location;
mkdirhier(dirname($path));
my $tmppath = "$path.tmp";
-@@ -400,6 +431,9 @@
+@@ -402,6 +433,9 @@
sub media {
my $self = shift ;
@@ -103,7 +103,7 @@ Index: tlpkg/TeXLive/TLPDB.pm
return $self->{'media'};
}
-@@ -415,6 +449,18 @@
+@@ -417,6 +451,18 @@
sub available_architectures {
my $self = shift;
@@ -122,7 +122,7 @@ Index: tlpkg/TeXLive/TLPDB.pm
my @archs = $self->setting("available_architectures");
if (! @archs) {
# fall back to the old method checking tex\.*
-@@ -442,6 +488,10 @@
+@@ -444,6 +490,10 @@
sub add_tlpcontainer {
my ($self, $package, $ziplocation, $archrefs, $dest) = @_;
@@ -133,7 +133,7 @@ Index: tlpkg/TeXLive/TLPDB.pm
my @archs;
if (defined($archrefs)) {
@archs = @$archrefs;
-@@ -506,6 +556,29 @@
+@@ -508,6 +558,29 @@
=cut
sub get_package {
@@ -163,7 +163,7 @@ Index: tlpkg/TeXLive/TLPDB.pm
my ($self,$pkg) = @_;
if (defined($self->{'tlps'}{$pkg})) {
my $ret = $self->{'tlps'}{$pkg};
-@@ -517,6 +590,35 @@
+@@ -519,6 +592,35 @@
=pod
@@ -199,7 +199,7 @@ Index: tlpkg/TeXLive/TLPDB.pm
=item C<< $tlpdb->list_packages >>
The C<list_packages> function returns the list of all included packages.
-@@ -525,6 +627,15 @@
+@@ -527,6 +629,15 @@
sub list_packages {
my $self = shift;
@@ -215,7 +215,7 @@ Index: tlpkg/TeXLive/TLPDB.pm
return (sort keys %{$self->{'tlps'}});
}
-@@ -542,6 +653,11 @@
+@@ -544,6 +655,11 @@
The next (or first) argument is the target TLPDB, then a list of
packages.
@@ -227,7 +227,7 @@ Index: tlpkg/TeXLive/TLPDB.pm
We return the closure of the package list with respect to the depends
operator. (Sorry, that was for mathematicians.)
-@@ -565,7 +681,8 @@
+@@ -567,7 +683,8 @@
my %install = ();
my @archs = $totlpdb->available_architectures;
for my $p (@_) {
@@ -237,7 +237,7 @@ Index: tlpkg/TeXLive/TLPDB.pm
}
my $changed = 1;
while ($changed) {
-@@ -574,7 +691,7 @@
+@@ -576,7 +693,7 @@
ddebug("pre_select = @pre_select\n");
for my $p (@pre_select) {
next if ($p =~ m/^00texlive/);
@@ -246,7 +246,7 @@ Index: tlpkg/TeXLive/TLPDB.pm
if (!defined($pkg)) {
debug("W: $p is mentioned somewhere but not available, disabling\n");
$install{$p} = 0;
-@@ -600,16 +717,19 @@
+@@ -602,16 +719,19 @@
if ($p_dep =~ m/^(.*)\.ARCH$/) {
my $foo = "$1";
foreach $a (@archs) {
@@ -269,7 +269,7 @@ Index: tlpkg/TeXLive/TLPDB.pm
}
}
}
-@@ -621,7 +741,9 @@
+@@ -623,7 +743,9 @@
$changed = 1;
}
}
@@ -280,7 +280,7 @@ Index: tlpkg/TeXLive/TLPDB.pm
}
=pod
-@@ -633,6 +755,7 @@
+@@ -635,6 +757,7 @@
=cut
@@ -288,7 +288,7 @@ Index: tlpkg/TeXLive/TLPDB.pm
sub find_file {
my ($self,$fn) = @_;
my @ret;
-@@ -866,6 +989,10 @@
+@@ -868,6 +991,10 @@
sub root {
my $self = shift;
@@ -299,7 +299,7 @@ Index: tlpkg/TeXLive/TLPDB.pm
if (@_) { $self->{'root'} = shift }
return $self->{'root'};
}
-@@ -884,7 +1011,11 @@
+@@ -886,7 +1013,11 @@
=cut
sub location {
@@ -312,7 +312,7 @@ Index: tlpkg/TeXLive/TLPDB.pm
return "$self->{'root'}/$InfraLocation/$DatabaseName";
}
-@@ -935,8 +1066,14 @@
+@@ -937,8 +1068,14 @@
sub config_src_container {
my $self = shift;
@@ -329,7 +329,7 @@ Index: tlpkg/TeXLive/TLPDB.pm
if ($d =~ m!^container_split_src_files/(.*)$!) {
return "$1";
}
-@@ -956,8 +1093,14 @@
+@@ -958,8 +1095,14 @@
sub config_doc_container {
my $self = shift;
@@ -346,7 +346,7 @@ Index: tlpkg/TeXLive/TLPDB.pm
if ($d =~ m!^container_split_doc_files/(.*)$!) {
return "$1";
}
-@@ -976,8 +1119,14 @@
+@@ -978,8 +1121,14 @@
sub config_container_format {
my $self = shift;
@@ -363,7 +363,7 @@ Index: tlpkg/TeXLive/TLPDB.pm
if ($d =~ m!^container_format/(.*)$!) {
return "$1";
}
-@@ -996,8 +1145,14 @@
+@@ -998,8 +1147,14 @@
sub config_release {
my $self = shift;
@@ -380,7 +380,7 @@ Index: tlpkg/TeXLive/TLPDB.pm
if ($d =~ m!^release/(.*)$!) {
return "$1";
}
-@@ -1016,8 +1171,14 @@
+@@ -1018,8 +1173,14 @@
sub config_minrelease {
my $self = shift;
@@ -397,7 +397,7 @@ Index: tlpkg/TeXLive/TLPDB.pm
if ($d =~ m!^minrelease/(.*)$!) {
return "$1";
}
-@@ -1037,8 +1198,14 @@
+@@ -1039,8 +1200,14 @@
sub config_revision {
my $self = shift;
@@ -414,7 +414,7 @@ Index: tlpkg/TeXLive/TLPDB.pm
if ($d =~ m!^revision/(.*)$!) {
return "$1";
}
-@@ -1064,12 +1231,12 @@
+@@ -1066,12 +1233,12 @@
sub sizes_of_packages {
my ($self, $opt_src, $opt_doc, @packs) = @_;
@packs || ( @packs = $self->list_packages() );
@@ -428,7 +428,7 @@ Index: tlpkg/TeXLive/TLPDB.pm
if (!defined($tlpobjs{$p})) {
warn "STRANGE: $p not to be found in ", $self->root;
next;
-@@ -1093,7 +1260,7 @@
+@@ -1095,7 +1262,7 @@
$size += $tlpobj->srccontainersize if $opt_src;
$size += $tlpobj->doccontainersize if $opt_doc;
} else {
@@ -437,7 +437,7 @@ Index: tlpkg/TeXLive/TLPDB.pm
# installation of src and doc file
$size = $tlpobj->runsize;
$size += $tlpobj->srcsize if $opt_src;
-@@ -1108,31 +1275,46 @@
+@@ -1110,31 +1277,46 @@
=pod
@@ -498,7 +498,7 @@ Index: tlpkg/TeXLive/TLPDB.pm
} else {
my $container_src_split = $fromtlpdb->config_src_container;
my $container_doc_split = $fromtlpdb->config_doc_container;
-@@ -1180,7 +1362,7 @@
+@@ -1182,7 +1364,7 @@
next;
}
} elsif (&media eq 'NET') {
@@ -507,7 +507,7 @@ Index: tlpkg/TeXLive/TLPDB.pm
}
$self->_install_package ($container, $reloc, \@installfiles, $totlpdb)
|| return(0);
-@@ -1254,23 +1436,21 @@
+@@ -1256,23 +1438,21 @@
$totlpdb->save;
# compute the return value
TeXLive::TLUtils::announce_execute_actions("enable", $tlpobj);
@@ -545,7 +545,7 @@ Index: tlpkg/TeXLive/TLPDB.pm
}
return 1;
}
-@@ -1523,7 +1703,7 @@
+@@ -1525,7 +1705,7 @@
# the postaction code part cannot be evaluated now since the
# files are already removed.
# Again, desktop integration maps to desktop and menu links
@@ -554,7 +554,7 @@ Index: tlpkg/TeXLive/TLPDB.pm
&TeXLive::TLUtils::do_postaction("remove", $tlp,
$localtlpdb->option("file_assocs"),
$localtlpdb->option("desktop_integration"),
-@@ -1555,7 +1735,12 @@
+@@ -1557,7 +1737,12 @@
sub _set_value_pkg {
my ($self,$pkgname,$pre,$key,$value) = @_;
my $k = "$pre$key";
@@ -568,7 +568,7 @@ Index: tlpkg/TeXLive/TLPDB.pm
my @newdeps;
if (!defined($pkg)) {
$pkg = new TeXLive::TLPOBJ;
-@@ -1593,8 +1778,14 @@
+@@ -1595,8 +1780,14 @@
sub _value_pkg {
my ($self,$pkg,$pre,$key) = @_;
my $k = "$pre$key";
@@ -585,7 +585,7 @@ Index: tlpkg/TeXLive/TLPDB.pm
if ($d =~ m!^$k:(.*)$!) {
return "$1";
}
-@@ -1707,7 +1898,12 @@
+@@ -1709,7 +1900,12 @@
my ($self, $pre, $hr) = @_;
my @allowed = keys %$hr;
my %ret;
@@ -599,7 +599,7 @@ Index: tlpkg/TeXLive/TLPDB.pm
if (defined($pkg)) {
foreach my $d ($pkg->depends) {
if ($d =~ m!^$pre([^:]*):(.*)!) {
-@@ -1856,6 +2052,329 @@
+@@ -1858,6 +2054,329 @@
=back
@@ -931,7 +931,7 @@ Index: tlpkg/TeXLive/TLPDB.pm
=head1 OPTIONS
Index: tlpkg/TeXLive/TLUtils.pm
===================================================================
---- tlpkg/TeXLive/TLUtils.pm (revision 22666)
+--- tlpkg/TeXLive/TLUtils.pm (revision 23788)
+++ tlpkg/TeXLive/TLUtils.pm (working copy)
@@ -62,6 +62,7 @@
TeXLive::TLUtils::setup_programs($bindir, $platform);
@@ -941,7 +941,7 @@ Index: tlpkg/TeXLive/TLUtils.pm
=head2 Installer Functions
-@@ -180,6 +181,7 @@
+@@ -184,6 +185,7 @@
&setup_persistent_downloads
&mktexupd
&nulldev
@@ -949,7 +949,7 @@ Index: tlpkg/TeXLive/TLUtils.pm
);
@EXPORT = qw(setup_programs download_file process_logging_options
tldie tlwarn info log debug ddebug dddebug debug_hash
-@@ -2398,6 +2400,31 @@
+@@ -2438,6 +2440,31 @@
return (&win32)? 'nul' : '/dev/null';
}
@@ -983,7 +983,7 @@ Index: tlpkg/TeXLive/TLUtils.pm
Index: texmf/scripts/texlive/tlmgr.pl
===================================================================
---- texmf/scripts/texlive/tlmgr.pl (revision 22666)
+--- texmf/scripts/texlive/tlmgr.pl (revision 23788)
+++ texmf/scripts/texlive/tlmgr.pl (working copy)
@@ -124,6 +124,7 @@
"package-logfile" => "=s",
@@ -993,7 +993,7 @@ Index: texmf/scripts/texlive/tlmgr.pl
"pause" => 1,
"print-platform|print-arch" => 1,
"version" => 1,
-@@ -481,6 +482,12 @@
+@@ -483,6 +484,12 @@
} elsif ($action =~ m/^option$/i) {
action_option();
finish(0);
@@ -1006,7 +1006,7 @@ Index: texmf/scripts/texlive/tlmgr.pl
} elsif ($action =~ m/^list$/i) {
action_list();
finish(0);
-@@ -1942,7 +1949,12 @@
+@@ -2027,7 +2034,12 @@
# intersection, don't check A\B and B\A
next if $newpkgs_full{$p};
next if $removals_full{$p};
@@ -1020,7 +1020,7 @@ Index: texmf/scripts/texlive/tlmgr.pl
my $tlp = $localtlpdb->get_package($p);
if (!defined($tlp)) {
if ($opts{"reinstall-forcibly-removed"}) {
-@@ -2043,12 +2055,15 @@
+@@ -2128,12 +2140,15 @@
$ret = 1;
shift;
}
@@ -1039,7 +1039,7 @@ Index: texmf/scripts/texlive/tlmgr.pl
$str .= "\n";
return($str) if $ret;
print $str;
-@@ -2572,19 +2587,32 @@
+@@ -2657,19 +2672,32 @@
my $unwind_package;
my $remove_unwind_container = 0;
my $rev = $tlp->revision;
@@ -1075,7 +1075,7 @@ Index: texmf/scripts/texlive/tlmgr.pl
}
$updated{$pkg} = 1;
next;
-@@ -2625,10 +2653,10 @@
+@@ -2710,10 +2738,10 @@
}
if ($::machinereadable) {
@@ -1088,7 +1088,7 @@ Index: texmf/scripts/texlive/tlmgr.pl
}
$donesize += $sizes{$pkg};
$currnr++;
-@@ -2671,7 +2699,7 @@
+@@ -2756,7 +2784,7 @@
}
if ($remotetlpdb->install_package($pkg, $localtlpdb)) {
# installation succeeded because we got a reference
@@ -1097,7 +1097,7 @@ Index: texmf/scripts/texlive/tlmgr.pl
unlink($unwind_package) if $remove_unwind_container;
# remember successful update
$updated{$pkg} = 1;
-@@ -2699,7 +2727,7 @@
+@@ -2784,7 +2812,7 @@
# now in fact we should do some cleanup, removing files and
# dirs from the new package before re-installing the old one.
# TODO
@@ -1106,7 +1106,7 @@ Index: texmf/scripts/texlive/tlmgr.pl
tlwarn("\n\nInstallation of new version of $pkg did fail, trying to unwind.\n");
if (win32()) {
# w32 is notorious for not releasing a file immediately
-@@ -2740,12 +2768,25 @@
+@@ -2825,12 +2853,25 @@
unless $::machinereadable;
} else {
# install new packages
@@ -1120,7 +1120,7 @@ Index: texmf/scripts/texlive/tlmgr.pl
+ $mediatlp = $remotetlpdb->get_package($pkg);
+ }
if (!defined($mediatlp)) {
- tlwarn("\nShould not happen: $pkg not found in $location");
+ tlwarn("\nShould not happen: $pkg not found in $location\n");
next;
}
my $mediarev = $mediatlp->revision;
@@ -1133,7 +1133,7 @@ Index: texmf/scripts/texlive/tlmgr.pl
my ($estrem, $esttot);
if (!$opts{"list"}) {
($estrem, $esttot) = TeXLive::TLUtils::time_estimate($totalsize,
-@@ -2755,14 +2796,16 @@
+@@ -2840,14 +2881,16 @@
my @maargs = ($pkg, $FLAG_AUTOINSTALL, "-", $mediatlp->revision, $sizes{$pkg});
if (!$opts{"list"}) {
push @maargs, $estrem, $esttot;
@@ -1153,7 +1153,7 @@ Index: texmf/scripts/texlive/tlmgr.pl
}
}
$currnr++;
-@@ -2770,7 +2813,7 @@
+@@ -2855,7 +2898,7 @@
next if ($opts{"dry-run"} || $opts{"list"});
if ($remotetlpdb->install_package($pkg, $localtlpdb)) {
# installation succeeded because we got a reference
@@ -1162,7 +1162,7 @@ Index: texmf/scripts/texlive/tlmgr.pl
$nrupdated++;
} else {
tlwarn("$0: couldn't install new package $pkg\n");
-@@ -2909,6 +2952,7 @@
+@@ -3002,6 +3045,7 @@
if (!(@new || @updated)) {
info("tlmgr: no updates available\n");
if ($remotetlpdb->media ne "NET"
@@ -1170,7 +1170,7 @@ Index: texmf/scripts/texlive/tlmgr.pl
&& !$opts{"dry-run"}
&& !$opts{"repository"}
) {
-@@ -2987,6 +3031,14 @@
+@@ -3080,6 +3124,14 @@
@packs = $remotetlpdb->expand_dependencies($localtlpdb, @packs) unless $opts{"no-depends"};
}
#
@@ -1185,7 +1185,7 @@ Index: texmf/scripts/texlive/tlmgr.pl
# installation order of packages:
# first all normal packages, then collections, then schemes
# isn't already installed, but the collection already updated, it will
-@@ -2994,7 +3046,7 @@
+@@ -3087,7 +3139,7 @@
my @inst_packs;
my @inst_colls;
my @inst_schemes;
@@ -1194,7 +1194,7 @@ Index: texmf/scripts/texlive/tlmgr.pl
# we do name checking here, not to load all tlpobj again and again
if ($pkg =~ m/^scheme-/) {
push @inst_schemes, $pkg;
-@@ -3013,7 +3065,11 @@
+@@ -3106,7 +3158,11 @@
my @todo;
for my $pkg (@inst_packs, @inst_colls, @inst_schemes) {
my $pkgrev = 0;
@@ -1207,7 +1207,7 @@ Index: texmf/scripts/texlive/tlmgr.pl
if (!defined($mediatlp)) {
tlwarn("package $pkg not present in package repository.\n");
next;
-@@ -3061,13 +3117,26 @@
+@@ -3154,13 +3210,26 @@
my ($estrem, $esttot) = TeXLive::TLUtils::time_estimate($totalsize,
$donesize, $starttime);
my $kb = int($sizes{$pkg} / 1024) + 1;
@@ -1237,7 +1237,7 @@ Index: texmf/scripts/texlive/tlmgr.pl
logpackage("${re}install: $pkg");
}
$donesize += $sizes{$pkg};
-@@ -3124,7 +3193,150 @@
+@@ -3217,7 +3286,150 @@
return;
}
@@ -1388,7 +1388,7 @@ Index: texmf/scripts/texlive/tlmgr.pl
# OPTION
#
sub action_option {
-@@ -4471,6 +4683,82 @@
+@@ -4578,6 +4790,82 @@
#
sub init_tlmedia
{
@@ -1471,7 +1471,7 @@ Index: texmf/scripts/texlive/tlmgr.pl
if (defined($remotetlpdb) && ($remotetlpdb->root eq $location)) {
# nothing to be done
return;
-@@ -4484,11 +4772,29 @@
+@@ -4591,11 +4879,29 @@
$location =~ s,^$TeXLiveServerURL,$mirrorbase,;
}
@@ -1501,7 +1501,7 @@ Index: texmf/scripts/texlive/tlmgr.pl
# if we talk about a net location try to download the hash of the tlpdb
# - if that is possible, check for the locally saved file and if the hash
# agrees load the local copy if present instead of the remote one,
-@@ -4633,8 +4939,30 @@
+@@ -4740,8 +5046,30 @@
close($tlfh);
}
}