[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



On Sun, Dec 10, 2017 at 03:54:41PM +0000, Chris Lamb wrote:
> > The tag I am requesting here mostly targets packages that lack any
> > Multi-Arch header (i.e. not covered by the above tag).
> 
> Thank you for the clarification. :)  I have just pushed the following:
> 
>   https://anonscm.debian.org/git/lintian/lintian.git/commit/?id=8705ed43bd19cb40ada45897333ca56fcd187738

Thank you. I'm slightly uneasy about the updated advice still.

+ An alternative approach is to use pkg-config(1) or to specify
+ <tt>Multi-Arch: foreign</tt>.

This might be read as if adding Multi-Arch: foreign would always be an
option. However, adding such a marking on development packages is rarely
correct. There are basically two classes where this is correct:

1. Header-only library with a tool. (I don't know any examples)
2. Splitting development tools and development headers into different
   packages. Usually, you have a libfoo-dev and a libfoo-dev-bin package
   both in section libdevel. The libfoo-dev is M-A:same and depends on
   libfoo-dev-bin, which is M-A:foreign. apt-cache search dev-bin yields
   good examples. Still few of them.

Given that wrong markings with M-A:foreign are a serious problem to
cross building with wide consequences and they cannot be easily
identified, I am uneasy with that advise and suggest updating it to:

+ An alternative approach is to use pkg-config(1) or potentially
+ splitting architecture-independent development tools to a separate
+ package that can be marked <tt>Multi-Arch: foreign</tt>.

Alternatively, remove the M-A:foreign alternative from the description.

Helmut


Reply to: