--- Begin Message ---
- To: Debian Bug Tracking System <submit@bugs.debian.org>
- Subject: Dependencies on linux-gnu or not+linux-gnu do not match armel or powerpcspe correctly
- From: Kyle Moffett <Kyle.D.Moffett@boeing.com>
- Date: Sun, 13 Jun 2010 14:04:35 -0400
- Message-id: <20100613180435.6168.25357.reportbug@philyra.exmeritus.com>
Package: dpkg
Version: 1.15.7.2
Severity: important
User: debian-powerpcspe@breakpoint.cc
Usertags: powerpcspe
I'm actually a little unsure if this is a dpkg bug or a package bug, but
I have had build failures from several packages which have Build-Depends
like the following: (trimmed example from the gvfs-1.6.2-1 source package)
libudev-dev (>= 0.139) | not+linux-gnu,
libfuse-dev | hurd,
libhal-dev (>= 0.5.10) | linux-gnu,
libgdu-dev (>= 2.29.0) | not+linux-gnu,
libgudev-1.0-dev (>= 001) | not+linux-gnu,
libbluetooth-dev (>= 4.0) | not+linux-gnu,
libimobiledevice-dev (>= 0.9.7) | hurd
Unfortunately it seems like the "powerpcspe" and "armel" architectures
do not provide the virtual packages "linux-gnu" and they do provide the
virtual package "not+linux-gnu", although if I change those deps to
"linux" and "not+linux" then they behave as expected.
This seems to be related to the fact that the triplettable entries for
those architectures map them as "linux-gnuspe" and "linux-gnueabi"
respectively, instead of "linux-gnu".
On the other hand, I'm not entirely certain those package dependencies
are compliant with current Debian Policy. I believe those package
dependencies should be written as follows:
libudev-dev (>= 0.139) [linux-any],
libfuse-dev [!hurd-any],
libhal-dev (>= 0.5.10) [!linux-any],
libgdu-dev (>= 2.29.0) [linux-any],
libgudev-1.0-dev (>= 001) [linux-any],
libbluetooth-dev (>= 4.0) [linux-any],
libimobiledevice-dev (>= 0.97) [!hurd-any]
So I guess the question is whether the "linux-gnu" vs. "not+linux-gnu"
behavior is correct, or alternatively whether or not it violates policy.
If the latter, perhaps dpkg-buildpackage should be patched to issue very
loud warnings when those dependencies are detected as they are known to
have incorrect behaviour on some platforms.
Cheers,
Kyle Moffett
--- End Message ---