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: