Package: lintian
Version: 1.23.10
Severity: normal
Tags: patch

(Bug severity because this is an incorrect error.)

A Build-Depends entry like:

    libopenafs-dev [alpha amd64 hppa i386 ia64 powerpc s390 sparc]

triggers invalid-arch-string-in-source-relation because of amd64.   The
reported information also refers the user to policy 5.6.7, which is the
section on the Package field.  I assume that 5.6.8 was intended.

The attached patch (against 1.23.11) downgrades a non-standard
architecture in a source dependency to info, following the precedent of
the Architecture field.

I didn't repeat the architecture list from non-standard-architecture
in the new non-standard-arch-in-source-relation tag; it seemed like yet
one more thing to keep in sync and didn't seem particularly necessary
there.

-- System Information:
Debian Release: testing/unstable
  APT prefers testing
  APT policy: (990, 'testing'), (500, 'unstable')
Architecture: i386 (i686)
Shell:  /bin/sh linked to /bin/bash
Kernel: Linux 2.4.30
Locale: LANG=C, LC_CTYPE=C (charmap=ANSI_X3.4-1968) (ignored: LC_ALL set to C)

Versions of packages lintian depends on:
ii  binutils                   2.16.1-2      The GNU assembler, linker and bina
ii  diffstat                   1.39-1        produces graph of changes introduc
ii  file                       4.12-1        Determines file type using "magic"
ii  gettext                    0.14.5-2      GNU Internationalization utilities
ii  intltool-debian            0.30+20040213 Help i18n of RFC822 compliant conf
ii  man-db                     2.4.3-1       The on-line manual pager
ii  perl [libdigest-md5-perl]  5.8.7-3       Larry Wall's Practical Extraction 

lintian recommends no packages.

-- no debconf information
diff -rupN lintian-1.23.11.orig/checks/fields lintian-1.23.11/checks/fields
--- lintian-1.23.11.orig/checks/fields  2005-07-11 06:08:12.000000000 -0700
+++ lintian-1.23.11/checks/fields       2005-08-09 23:28:57.000000000 -0700
@@ -448,8 +448,11 @@ if ($type eq "source") {
                                        my ($d_pkg, $d_version, $d_arch, $rest, 
$part_d_orig) = @$part_d;
 
                                        for my $arch (@{$d_arch->[0]}) {
-                                               tag 
"invalid-arch-string-in-source-relation", "$arch [$field: $part_d_orig]"
-                                                   unless ($known_archs{$arch} 
|| $arch eq "any" || $arch eq "all");
+                                               if ($non_standard_archs{$arch}) 
{
+                                                       tag 
"non-standard-arch-in-source-relation", "$arch [$field: $part_d_orig]";
+                                               } elsif (!$known_archs{$arch} 
&& $arch ne "any" && $arch ne "all") {
+                                                       tag 
"invalid-arch-string-in-source-relation", "$arch [$field: $part_d_orig]"
+                                               }
                                        }
 
                                        tag 
"depends-on-build-essential-package-without-using-version", "$d_pkg [$field: 
$part_d_orig]"
diff -rupN lintian-1.23.11.orig/checks/fields.desc 
lintian-1.23.11/checks/fields.desc
--- lintian-1.23.11.orig/checks/fields.desc     2005-06-27 02:10:02.000000000 
-0700
+++ lintian-1.23.11/checks/fields.desc  2005-08-09 23:23:49.000000000 -0700
@@ -379,11 +379,16 @@ Info: The package declares a depends on 
 
 Tag: invalid-arch-string-in-source-relation
 Type: error
-Ref: policy 5.6.7
+Ref: policy 5.6.8
 Info: The architecture string in the source relation does not follow policy.
  A common cause of this is a comma in the arch, i.e. [i386, m68k], it should
  be [i386 m68k].
 
+Tag: non-standard-arch-in-source-relation
+Type: info
+Info: The architecture string in the source relation is one of the
+ architectures still waiting to be included in the archive.
+
 Tag: depends-on-build-essential-package-without-using-version
 Type: error
 Info: The package declares a depends on a build essential package without

Reply via email to