From 5025f01a4b3c55c160efa55b5db78ef5dfc3bc6c Mon Sep 17 00:00:00 2001 From: Norbert Preining Date: Thu, 26 Jun 2008 16:50:24 +0000 Subject: get rid of some warnings, and fix some tlpsrc git-svn-id: svn://tug.org/texlive/trunk@9059 c570f23f-e606-0410-a88d-b1316a301751 --- Master/tlpkg/TeXLive/TLPSRC.pm | 23 +++++++++++++++++++++-- Master/tlpkg/TeXLive/TLTREE.pm | 13 ++++++++----- 2 files changed, 29 insertions(+), 7 deletions(-) (limited to 'Master/tlpkg/TeXLive') diff --git a/Master/tlpkg/TeXLive/TLPSRC.pm b/Master/tlpkg/TeXLive/TLPSRC.pm index 099864ecc96..7a36a3b1f59 100644 --- a/Master/tlpkg/TeXLive/TLPSRC.pm +++ b/Master/tlpkg/TeXLive/TLPSRC.pm @@ -331,9 +331,28 @@ sub make_tlpobj # many patterns are special for w32, don't complain about those. # conversely, w32 fails to have many standard programs, don't # complain about those either. + my $warnit = 1; + if ($p =~ m,bin/([-a-z0-9]+)/,) { + if ($1 ne "$arch") { + # don't warn on specific platform patterns + $warnit = 0; + } + } + if ($p =~ m,/(\S+)\s+,) { + # that is an arch specific pattern + # don't warn if we the archs do not agree + $warnit = 0 if ($1 ne "$arch"); + } + if ($p =~ m,\$\{ARCH\}, && $arch eq "win32") { + # w32 fails to have many standard programs, don't complain + # about those either + $warnit = 0; + } + if ($self->{name} =~ m/\.win32/ && $arch ne "win32") { + $warnit = 0; + } tlwarn("$self->{name} ($arch): no hit on binpattern $p\n") - unless ($p =~ m,/win32, && $arch ne "win32") - || ($p =~ m,\$\{ARCH\}, && $arch eq "win32"); + if $warnit; } $tlp->add_binfiles($arch,@archfiles); } diff --git a/Master/tlpkg/TeXLive/TLTREE.pm b/Master/tlpkg/TeXLive/TLTREE.pm index 286518d44ee..a7b0e4cd5d8 100644 --- a/Master/tlpkg/TeXLive/TLTREE.pm +++ b/Master/tlpkg/TeXLive/TLTREE.pm @@ -179,15 +179,18 @@ sub size_of { sub get_matching_files { my ($self, $type, $p) = @_; if ($type eq "bin") { + my %returnfiles; # binpatterns can have an additions specifier after the prefix: /ARCH # which specifies that these patterns are ONLY for the specified arch! - if ($p =~ m!^(\w+)/(\w+)\s+(.*)$!) { - my @foo = $self->_get_matching_files($type,"$1 $3"); - $returnfiles{$2} = [ @foo ]; + if ($p =~ m!^(\w+)/([-a-z0-9]+)\s+(.*)$!) { + my $pt = $1; + my $aa = $2; + my $pr = $3; + my @foo = $self->_get_matching_files($type,"$pt $pr"); + $returnfiles{$aa} = [ @foo ]; return(\%returnfiles); } # we first substitute arch for ${ARCH} - my %returnfiles; foreach $a ($self->architectures) { # return empty list of arch!=win32 and pattern matches bin/win32 if (($p =~ m@f bin/win32/@) && ($a ne "win32")) { @@ -215,7 +218,7 @@ sub _get_matching_files { if ($pattype eq "t") { @matchfiles = $self->_get_files_matching_dir_pattern($type,$patdata,@rest); } elsif ($pattype eq "f") { - @matchfiles = $self->_get_files_matching_glob_pattern($type,$patdata,$arch); + @matchfiles = $self->_get_files_matching_glob_pattern($type,$patdata); } elsif ($pattype eq "r") { @matchfiles = $self->_get_files_matching_regexp_pattern($type,$patdata); } elsif ($pattype eq "d") { -- cgit v1.2.3