summaryrefslogtreecommitdiff
path: root/Master/tlpkg
diff options
context:
space:
mode:
Diffstat (limited to 'Master/tlpkg')
-rw-r--r--Master/tlpkg/TeXLive/TLMedia.pm32
-rw-r--r--Master/tlpkg/TeXLive/TLPDB.pm14
-rw-r--r--Master/tlpkg/texlive.tlpdb1
-rw-r--r--Master/tlpkg/tlpsrc/00texlive-installation.config.tlpsrc1
4 files changed, 31 insertions, 17 deletions
diff --git a/Master/tlpkg/TeXLive/TLMedia.pm b/Master/tlpkg/TeXLive/TLMedia.pm
index 7ac2901f415..d1cdb14d627 100644
--- a/Master/tlpkg/TeXLive/TLMedia.pm
+++ b/Master/tlpkg/TeXLive/TLMedia.pm
@@ -193,23 +193,25 @@ sub install_package {
my %ret;
merge_into(\%ret, $tlpobj->make_return_hash_from_executes("enable"));
# now install all the depends if they are not already present
- if (!$nodepends) {
- foreach my $d ($tlpobj->depends) {
- if ($d =~ m/^(.*)\.ARCH$/) {
- my $foo = $1;
- foreach my $a ($totlpdb->available_architectures) {
- if (!defined($totlpdb->get_package("$foo.$a"))) {
- merge_into(\%ret,
- $self->install_package("$foo.$a", $totlpdb, $nodepends, $fallbackmedia));
- }
- }
- } elsif ($d =~ m/^(.*).win32$/) {
- # install only of win32 is under the available archs
- if (TeXLive::TLUtils::member("win32",$totlpdb->available_architectures)) {
+ # NOTE: installation of .ARCH dependencies is done in *ANY*CASE*, regardless
+ # of the $nodepends setting
+ foreach my $d ($tlpobj->depends) {
+ if ($d =~ m/^(.*)\.ARCH$/) {
+ my $foo = $1;
+ foreach my $a ($totlpdb->available_architectures) {
+ if (!defined($totlpdb->get_package("$foo.$a"))) {
merge_into(\%ret,
- $self->install_package($d, $totlpdb, $nodepends, $fallbackmedia));
+ $self->install_package("$foo.$a", $totlpdb, $nodepends, $fallbackmedia));
}
- } else {
+ }
+ } elsif ($d =~ m/^(.*).win32$/) {
+ # install only of win32 is under the available archs
+ if (TeXLive::TLUtils::member("win32",$totlpdb->available_architectures)) {
+ merge_into(\%ret,
+ $self->install_package($d, $totlpdb, $nodepends, $fallbackmedia));
+ }
+ } else {
+ if (!$nodepends) {
if (!defined($totlpdb->get_package($d))) {
# we have to install it!
merge_into(\%ret,
diff --git a/Master/tlpkg/TeXLive/TLPDB.pm b/Master/tlpkg/TeXLive/TLPDB.pm
index 54105de6777..dff38e4948c 100644
--- a/Master/tlpkg/TeXLive/TLPDB.pm
+++ b/Master/tlpkg/TeXLive/TLPDB.pm
@@ -284,13 +284,17 @@ sub save {
=item C<< $tlpdb->available_architectures >>
The C<available_architectures> functions returns the list of available
-architectures by checking for binfiles in the "bin-tex" TLPOBJ. If this
-package does not exist, die.
+architectures as set in the options section (i.e., using option_archs)
=cut
sub available_architectures {
my $self = shift;
+ return $self->option_archs;
+}
+
+sub old_available_architectures {
+ my $self = shift;
my @packs = $self->list_packages;
my @archs;
# map { s@^$tltree/@@ ; push @nf, $_; } @files;
@@ -806,6 +810,12 @@ sub _option_value {
return;
}
+sub option_archs {
+ my $self = shift;
+ if (@_) { $self->_set_option_value("archs","@_"); }
+ my @archs = split ' ', $self->_option_value("archs");
+ return @archs;
+}
sub option_symlinks {
my $self = shift;
if (@_) { $self->_set_option_value("symlinks", shift); }
diff --git a/Master/tlpkg/texlive.tlpdb b/Master/tlpkg/texlive.tlpdb
index 552dda13d04..ebd7932c052 100644
--- a/Master/tlpkg/texlive.tlpdb
+++ b/Master/tlpkg/texlive.tlpdb
@@ -2,6 +2,7 @@ name 00texlive-installation.config
category TLCore
revision 7888
depend platform:
+depend archs:alpha-linux hppa-hpux i386-darwin i386-freebsd i386-linux i386-openbsd i386-solaris mips-irix powerpc-aix powerpc-darwin powerpc-linux sparc-linux sparc-solaris win32 x86_64-linux
depend location:__MASTER__
depend paper:a4
depend formats:0
diff --git a/Master/tlpkg/tlpsrc/00texlive-installation.config.tlpsrc b/Master/tlpkg/tlpsrc/00texlive-installation.config.tlpsrc
index ceedb22e802..421fa7ec8de 100644
--- a/Master/tlpkg/tlpsrc/00texlive-installation.config.tlpsrc
+++ b/Master/tlpkg/tlpsrc/00texlive-installation.config.tlpsrc
@@ -1,6 +1,7 @@
name 00texlive-installation.config
category TLCore
depend platform:
+depend archs:alpha-linux hppa-hpux i386-darwin i386-freebsd i386-linux i386-openbsd i386-solaris mips-irix powerpc-aix powerpc-darwin powerpc-linux sparc-linux sparc-solaris win32 x86_64-linux
depend location:__MASTER__
depend paper:a4
depend formats:0