[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#249414: lintian: Fails to detect usr-doc-symlink



Package: lintian
Version: 1.23.0
Severity: normal

My plplot packages are not lintian-clean anymore in testing and unstable as
they used to be two weeks ago.  I am getting the following lintian errors:

$ lintian *.deb
E: python-plplot: usr-doc-symlink-without-dependency libplplot9
E: plplot9-driver-xwin: usr-doc-symlink-without-dependency libplplot9
E: plplot9-driver-gnome: usr-doc-symlink-without-dependency libplplot9
E: plplot9-driver-gd: usr-doc-symlink-without-dependency libplplot9
E: plplot-tcl-dev: usr-doc-symlink-without-dependency libplplot9
E: plplot-tcl: usr-doc-symlink-without-dependency libplplot9
E: plplot-doc: usr-doc-symlink-without-dependency libplplot9
E: plplot-bin: usr-doc-symlink-without-dependency libplplot9
E: octave-plplot: usr-doc-symlink-without-dependency libplplot9
E: libplplot-dev: usr-doc-symlink-without-dependency libplplot9
E: libplplot-c++9: usr-doc-symlink-without-dependency libplplot9
E: libcsiro0: usr-doc-symlink-without-dependency libplplot9

But I have here:

$ for p in *.deb ; do dpkg -I $p | grep "^ \(Package\|Depends\):"; done
 Package: libcsiro0
 Depends: libplplot9, libc6 (>= 2.3.2.ds1-4), libqhull5
 Package: libplplot-c++9
 Depends: libc6 (>= 2.3.2.ds1-4), libgcc1 (>= 1:3.3.3-1), libplplot9 (>= 5.3.0.cvs.20040517), libstdc++5 (>= 1:3.3.3-1)
 Package: libplplot-dev
 Depends: libplplot9, libqhull-dev, libfreetype6-dev
 Package: libplplot9
 Depends: libc6 (>= 2.3.2.ds1-4), libcsiro0 (>= 5.3.0.cvs.20040517), libfreetype6 (>= 2.1.5-1), libg2c0 (>= 1:3.3.3-1), libgcc1 (>= 1:3.3.3-1), libltdl3 (>= 1.5.2-2)
 Package: octave-plplot
 Depends: atlas3-base | lapack3 | liblapack.so.3, atlas3-base | refblas3 | libblas.so.3, fftw3, libc6 (>= 2.3.2.ds1-4), libcsiro0 (>= 5.3.0.cvs.20040430), libfreetype6 (>= 2.1.5-1), libg2c0 (>= 1:3.3.3-1), libgcc1 (>= 1:3.3.3-1), libhdf5-serial-1.6.2-0 | libhdf5-1.6.2-0, libltdl3 (>= 1.5.2-2), libncurses5 (>= 5.4-1), libplplot9 (>= 5.3.0.cvs.20040517), libqhull5, libreadline4 (>= 4.3-1), libstdc++5 (>= 1:3.3.3-1), zlib1g (>= 1:1.2.1), octave2.1 (>= 2.1.57)
 Package: plplot-bin
 Depends: libc6 (>= 2.3.2.ds1-4), libplplot9 (>= 5.3.0.cvs.20040517)
 Package: plplot-doc
 Depends: libplplot9
 Package: plplot-tcl-dev
 Depends: plplot-tcl, libplplot9
 Package: plplot-tcl
 Depends: plplot9-driver-xwin, iwidgets4, itcl3, itk3, libc6 (>= 2.3.2.ds1-4), libfreetype6 (>= 2.1.5-1), libplplot9 (>= 5.3.0.cvs.20040517), libx11-6 | xlibs (>> 4.1.0), tcl8.4 (>= 8.4.5), tk8.4 (>= 8.4.5)
 Package: plplot9-driver-gd
 Depends: libc6 (>= 2.3.2.ds1-4), libfreetype6 (>= 2.1.5-1), libgd2-noxpm (>= 2.0.23) | libgd2-xpm (>= 2.0.23), libplplot9 (>= 5.3.0.cvs.20040517)
 Package: plplot9-driver-gnome
 Depends: gdk-imlib1, libart2 (>= 1.2.13-5), libaudiofile0 (>= 0.2.3-4), libc6 (>= 2.3.2.ds1-4), libdb3 (>= 3.2.9-19.1), libesd0 (>= 0.2.29-1) | libesd-alsa0 (>= 0.2.29-1), libfreetype6 (>= 2.1.5-1), libglib1.2 (>= 1.2.0), libgnome32 (>= 1.2.13-5), libgnomesupport0 (>= 1.2.13-5), libgnomeui32 (>= 1.4.2-3), libgtk1.2 (>= 1.2.10-4), libice6 | xlibs (>> 4.1.0), libplplot9 (>= 5.3.0.cvs.20040517), libsm6 | xlibs (>> 4.1.0), libx11-6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), libxi6 | xlibs (>> 4.1.0)
 Package: plplot9-driver-xwin
 Depends: libc6 (>= 2.3.2.ds1-4), libfreetype6 (>= 2.1.5-1), libplplot9 (>= 5.3.0.cvs.20040517), libx11-6 | xlibs (>> 4.1.0)
 Package: python-plplot
 Depends: libc6 (>= 2.3.2.ds1-4), libplplot9 (>= 5.3.0.cvs.20040517), python2.3 (>= 2.3), python (>= 2.3), python (<< 2.4), python-numeric


So, my packages clearly depend on libplplot9, and lintian is failing to
detect this.  I think that the problem comes from an overzealous check in
the subrouting depends_on in file /usr/share/lintian/checks/copyright-file,
which forces the relationship to be "=", more specifically in this part of
the code:

    for (split(/\s*,\s*/,"$deps,$predeps")) {
    	# Now split the dep
	# We don't allow alternatives, as we need a strong depends: The dependency
	# has to be there whatever happens.
	if (/^\s* ( [^\s\[\(]+ ) \s* (?:\( \s* (<=|<|=|>=|>>|>) \s* ([^(]+) \))?\s*$/x) {
	    my ($d_pkg, $d_relation, $d_version) = ($1, ($2 || ""), ($3 || ""));
	    return 1 if (($package eq $d_pkg) and ($d_relation eq "=") and ($d_version eq $version));
	}
    }



-- System Information:
Debian Release: testing/unstable
  APT prefers testing
  APT policy: (500, 'testing')
Architecture: i386 (i686)
Kernel: Linux 2.4.19-686
Locale: LANG=en_US, LC_CTYPE=en_US

Versions of packages lintian depends on:
ii  binutils                   2.14.90.0.7-6 The GNU assembler, linker and bina
ii  diffstat                   1.34-1        produces graph of changes introduc
ii  file                       4.07-2        Determines file type using "magic"
ii  man-db                     2.4.2-15      The on-line manual pager
ii  perl                       5.8.3-3       Larry Wall's Practical Extraction 

-- no debconf information

-- 
Rafael



Reply to: