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

Bug#794295: lintian: please complain about development packages that make cross building impossible



Package: lintian
Severity: wishlist

Dear lintian maintainers,

I would like to propose a new check for lintian. It should trigger
whenever the following conditions are met simultaneously.

 * The binary package being processed is a development package. The
   easiest way probably is to look for section libdevel.
 * The binary package contains an ELF executable in $PATH.

Rationale:

Commonly, executables in development packages provide values that are
relevant for using the library. Source packages that use such
development packages tend to execute those executables to discover how
to use the library. An alternative to this technique is to use
pkg-config. When doing a cross build, host architecture binaries are not
executable in general. However development packages need to be installed
for the host architecture. Thus those executables are useless for cross
builds if they are binary files (as opposed to scripts).

Examples:

The check should fire for:
 * libpq-dev (/usr/bin/pg_config) #794103

The check should not fire for:
 * libgpg-error-dev (/usr/bin/gpg-error-config is a script)
 * coreutils (the section is not libdevel)

The tag should likely be marked as experimental, because it is very hard
to fix and it may have false positives. Getting a number on the affected
packages would be very useful nonetheless.

Thanks for considering to add this feature

Helmut


Reply to: