Hi, Am Donnerstag, den 09.07.2009, 08:41 -0300 schrieb Marco Túlio Gontijo e Silva: > Em Wed, 08 Jul 2009 21:47:48 +0200 > Joachim Breitner <nomeata@debian.org> escreveu: > (...) > > haskell-uulib_0.9.10-0.1 (nmu by Marco) fails due to: > > > > > Configuring uulib-0.9.10... > > > hlibrary.setup: ffihugs is required but it could not be found. > > > > Marco, did you see that? > > No, sorry. But it seems to be caused by: > > Build-Depends-Indep: haddock, hugs, ghc6-doc, hscolour (>= 1.8) > > Doesn't buildd installs Build-Depends-Indep before building the packages? > > $ dpkg -L hugs | grep /usr/bin/ffihugs > /usr/bin/ffihugs Isn’t that the point of Build-Depends-Indep: To avoid having the buildds install stuff that’s not needed to build only the arch-dependent packages? Let’s see what the policy says at http://www.debian.org/doc/debian-policy/ch-relationships.html#s-sourcebinarydeps: ======================================================================== The dependencies and conflicts they define must be satisfied (as defined earlier for binary packages) in order to invoke the targets in debian/rules, as follows:[45] Build-Depends, Build-Conflicts The Build-Depends and Build-Conflicts fields must be satisfied when any of the following targets is invoked: build, clean, binary, binary-arch, build-arch, build-indep and binary-indep. Build-Depends-Indep, Build-Conflicts-Indep The Build-Depends-Indep and Build-Conflicts-Indep fields must be satisfied when any of the following targets is invoked: build, build-indep, binary and binary-indep. [..] 45 If you make "build-arch" or "binary-arch", you need Build-Depends. If you make "build-indep" or "binary-indep", you need Build-Depends and Build-Depends-Indep. If you make "build" or "binary", you need both. There is no Build-Depends-Arch; this role is essentially met with Build-Depends. Anyone building the build-indep and binary-indep targets is basically assumed to be building the whole package anyway and so installs all build dependencies. The autobuilders use dpkg-buildpackage -B, which calls build (not build-arch, since it does not yet know how to check for its existence) and binary-arch. The purpose of the original split, I recall, was so that the autobuilders wouldn't need to install extra packages needed only for the binary-indep targets. But without a build-arch/build-indep split, this didn't work, since most of the work is done in the build target, not in the binary target. ======================================================================== Now what happens at https://buildd.debian.org/fetch.cgi?pkg=haskell-uulib;ver=0.9.10-0.1;arch=armel;stamp=1247019595 We see that it parsed the field: > ** Using build dependencies supplied by package: > Build-Depends: debhelper (>= 5), cdbs, ghc6 (>= 6.8.2), ghc6-prof (>= 6.4.2), haskell-devscripts (>= 0.6.15+nmu1), cpphs > Build-Depends-Indep: haddock, hugs, ghc6-doc, hscolour (>= 1.8) but did not actually install haddock or any of the others. It then calls $ /usr/bin/fakeroot debian/rules clean and $ debian/rules build which eventually tries to build the hugs package and fails. So something is wrong, but I don’t know what :-). I haven’t used Build-Depends-Indep myself until I copied debian/control from you... It might be that cdbs is the problem: > I'd like to easily be able to tell from debian/rules whether this is > going to be an arch or an arch + indep build in general; this is not > trivial with a common build rule for both cases as in CDBS at the > moment. :-/ http://www.opensubscriber.com/message/debian-devel@lists.debian.org/8732696.html dpkg-buildpackage should support it since 1.10.11: > * Patch dpkg-buildpackage to call debian/rules -qn build-arch, and if > it's available, modify -B handling appropriately. If build-arch is not > available, then when -B was called, do *not* pass -B on to > dpkg-checkbuilddeps. Closes: #203097 But maybe "make -qn" does not work nicely with cdbs. http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=197100 is also enlighting. Maybe we should just put all in Build-Depends, forget about Build-Depends-Indep, until this is solved properly in cdbs, dpkg-dev, buildds and elsewhere :-) Greetings, Joachim Greetings, Joachim -- Joachim "nomeata" Breitner Debian Developer nomeata@debian.org | ICQ# 74513189 | GPG-Keyid: 4743206C JID: nomeata@joachim-breitner.de | http://people.debian.org/~nomeata
Attachment:
signature.asc
Description: Dies ist ein digital signierter Nachrichtenteil