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

Bug#545381: edos-builddebcheck: Always consider built-essential packages installable



On Mon, Sep 28, 2009 at 11:24:07PM +0200, Kurt Roeckx wrote:
> On Mon, Sep 28, 2009 at 11:08:01PM +0200, Stefano Zacchiroli wrote:
> > On Mon, Sep 28, 2009 at 06:34:09PM +0200, Kurt Roeckx wrote:
> > > edos is being run as part of wanna-build, so on buildd.debian.org,
> > > not on the buildd machine.  wanna-build is the part that tells
> > > the buildd's which packages to build, and does not know anything
> > > about the state of their chroots.
> > 
> > This looks like a Catch-22 then.
> > 
> > The problem stated by Ralf is pretty clear: consider a build-essential
> > "Package: p" with "Depends: a | b".
> > 
> > How can you know which among "a" and "b" is installed if you don't have
> > access to the chroots? The only alternative I see is having some more
> > assumptions on build-essential packages (e.g. they are always installed
> > using the same argument "sbuild" would use) or something such ...
> 
> Let's worry about this later.  Let's start with actually getting
> us a working version atleast thinks some of the packages are
> installable.

I agree with Zack here : on the long run you will have to find a way
to tell wanna-build what the build environement exactly is. This cannot
be deduced by edos-debbuildcheck from the package metadata. The 
disjunctive dependency is only one example. Kurt gave anoher one
himself:

> I've just added hurd-i386 to buildd.debian.org, and they have
> the following problem:
>   debhelper (= 7.4.2) depends on perl {perl (= 5.10.0-19)}
>   perl (= 5.10.0-19) depends on hurd {hurd (= 20090404-1)}
>   hurd (= 20090404-1) depends on sysv-rc {sysv-rc (= 2.87dsf-6)}
>   sysv-rc (= 2.87dsf-6) depends on insserv (>> 1.12.0-10) {NOT AVAILABLE}

Now, if we assume that all dependencies of a build-essential package are
installed that would mean for this case that we assume a non-existing
package to be installed. 

Now, a quick fix in order to get it running could be the following :
In the Packages file, for all packages that are marked as build-essential
just replace the Dependency line by an empty Dependency line. This might
be done with a small wrapper (perl, grep-dctrl, ...). However I won't
have the time to do this in the next days.

-Ralf.



Reply to: