On Wed, Jan 21, 2004 at 11:47:02AM +0000, Colin Watson wrote: > I just found myself unable to do a binary-only NMU because an > Architecture: all binary package from that source package had an exact > dependency, generated with (= ${Source-Version}), on an Architecture: > any binary package from the same source package. Whatever way I did the > upload, it would either break the architecture I was planning to upload > on or else all other architectures. As a result, a sourceful upload will > be required. See #227618. > > I think that we should recommend against using (= ${Source-Version}) > dependencies from Architecture: all to Architecture: any packages or > vice versa. They're OK between architecture-independent packages and > between architecture-dependent packages, but mixing those causes > trouble. > > I can't immediately think of an easy way to scan the archive for this > problem, unfortunately. This doesn't really solve the real problem. It just skirts around the issue. Take qt-x11-free for example... libqt3-mt-dev Architecture: any Depends: libqt3c102-mt (= ${Source-Version}), libqt3-headers (= ${Source-Version}), qt3-dev-tools (= ${Source-Version}) libqt3c102-mt Architecture: any libqt3-headers Architecture: all <- Problem Depends: qt3-dev-tools Architecture: any Because libqt3-mt-dev is Arch: any and depends on libqt3-headers which is Arch: all any arch that hasn't built a new version of the package in the archive will then fail to build anything that Build-Depends on it. This is a major problem particularly with Qt/KDE on m68k. What needs to happen is a combination of relaxing the dependency, perhaps like dh_makeshlibs -V does already (strips the debian version) and tracking Arch: all packages per Arch, so that packages are never uninstallable (IMHO). Or as a second possible solution make w-b check whether packages Build-Depends are actually satisified and setting them to Dep-Wait if not. This of course does have a negative possible side-effect of someone typoing a Build-Depends that is then never able to be satisified. Chris
Attachment:
signature.asc
Description: Digital signature