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

Bug#510190: lintian: missing-dep-for-interpreter confused by unusual layout



Package: lintian
Version: 2.1.3
Severity: normal

I'm designing a fairly unusual package which contains the source to
build another package as well as scripts and other files for the main
package. Therefore, /usr/share/foo/ contains a debian/ directory with
debian/rules and postinst files as well as a copyright, control etc.
;-) (The built package is entirely free software but cannot be uploaded
to Debian as it does non-Policy stuff with unrelated packages.) Yes,
embedded stuff can get a little weird at times.

The main package (the outer package) is to be installed on a server
that builds, maintains and updates a repository of packages for
machines running the Grip flavour of Emdebian. In order to work
around bugs as they appear (and during times when such bugs cannot
be fixed, e.g. during release freezes), Grip provides for a helper
package - grip-config - which only exists inside the Grip repository
created by the main package. When grip-config needs to be updated,
the main package containing the source is updated and the admin can
build the grip-config package and update the repository.

Rather than require the debian/ directory for grip-config to be checked
out of Emdebian SVN, I thought I'd add the entire package build metadata
into the server-side package and update the server package when the
helper package needs an update. In practice, the server side package
will need more frequent updates than the helper package anyway.

The server-side package depends on dpkg-dev and lintian complains:

E: emdebian-grip-server: missing-dep-for-interpreter make => make |
build-essential (./usr/share/emdebian-tools/grip-config/debian/rules)
N: 
N:    You used an interpreter for a script that is not in an essential
N:    package. In most cases, you will need to add a Dependency on the
package
N:    that contains the interpreter. If the dependency is already
present,
N:    please file a bug against Lintian with the details of your package
so
N:    that its database can be updated.
N:    
N:    In some cases a weaker relationship, such as Suggests or
Recommends,
N:    will be more appropriate.
N:    
N:    Severity: important; Certainty: possible

dpkg-dev depends on make and Recommends build-essential.

I'm expecting to use lndir or similar to create a writeable directory
containing the relevant build files for grip-config, use
dpkg-buildpackage -uc- us and then include the generated .changes file
directly into the repository maintained by emdebian-grip-server and
remove the build directory. This could become a script within
emdebian-grip-server itself in due course.

I appreciate this is an unusual situation, but could dpkg-dev be
accepted by lintian as providing the relevant interpreter for
debian/rules when installed in /usr/share/ ?

-- System Information:
Debian Release: 5.0
  APT prefers unstable
  APT policy: (500, 'unstable')
Architecture: amd64 (x86_64)

Kernel: Linux 2.6.26-1-amd64 (SMP w/2 CPU cores)
Locale: LANG=en_GB.UTF-8, LC_CTYPE=en_GB.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/bash

Versions of packages lintian depends on:
ii  binutils            2.18.1~cvs20080103-7 The GNU assembler, linker and bina
ii  diffstat            1.46-1               produces graph of changes introduc
ii  dpkg-dev            1.14.24              Debian package development tools
ii  file                4.26-2               Determines file type using "magic"
ii  gettext             0.17-6               GNU Internationalization utilities
ii  intltool-debian     0.35.0+20060710.1    Help i18n of RFC822 compliant conf
ii  libipc-run-perl     0.80-2               Perl module for running processes
ii  libparse-debianchan 1.1.1-2              parse Debian changelogs and output
ii  libtimedate-perl    1.1600-9             Time and date functions for Perl
ii  liburi-perl         1.37+dfsg-1          Manipulates and accesses URI strin
ii  man-db              2.5.2-3              on-line manual pager
ii  perl [libdigest-sha 5.10.0-18            Larry Wall's Practical Extraction 

lintian recommends no packages.

Versions of packages lintian suggests:
ii  binutils-multiarch  2.18.1~cvs20080103-7 Binary utilities that support mult
ii  libtext-template-pe 1.44-1.2             Text::Template perl module
ii  man-db              2.5.2-3              on-line manual pager

-- debconf-show failed



Reply to: