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

Bug#748936: apt doesnt understand architecture wildcards



* Johannes Schauer <j.schauer@email.de> [140522 13:30]:
> Debian policy 11.1.1 [1] and the associated footnote [2] allow
> architecture wildcards of the form os-any and any-cpu. Apt seems to
> equal "cpu" with "debian architecture" which is not correct. Here is an
> example of correct matching:
> 
> dpkg-architecture -aarmhf -iany-arm && echo "any-arm matches armhf"
> 
> Apt would instead only match the deprecated "arm" architecture with
> "any-arm". This doesnt seem to be a problem in practice though because:
> 
>  1) apt does not check whether a source package can be compiled on the
>     current host architecture (it ignores the Architecture field of
>     source packages)
>  2) all packages that have any-arm in their build dependency
>     architecture restrictions also include any-armel, any-armeb and
>     any-armhf
> 
> Nevertheless, apt behaviour should reflect dpkg behaviour and naturally
> policy. The correct behaviour is encoded in dpkg scripts/Dpkg/Arch.pm
> and needs the files /usr/share/dpkg/triplettable and
> /usr/share/dpkg/cputable to work correctly.

Urgh. Really? This is far too complicated for most programs to implement
properly. I'd suggest to rather fix dpkg (and also fix policy. The footnote
describes absolutely nothing currently, and having such important fields
a meaning that you cannot calculate without knowing what architectures
the system finally using the package uses makes it unhandable).

	Bernhard R. Link
-- 
F8AC 04D5 0B9B 064B 3383  C3DA AFFC 96D1 151D FFDC


Reply to: