On Fri, 2013-07-05 at 12:45 +0200, Alain Portal wrote:
> Le jeudi 04 juillet 2013 19:44:04, John Reiser a écrit :
> > Today this
> > is not a circular dependency, although it may be impossible to rebuild the 
> > world
> > from source only, without using some previous [or current] binary version 
> > of graphite2-devel.
> > Once upon a time the dependencies were not as strict, or there was a 
> > bootstrapping
> > stage that is not recorded in the .spec, or there was manual "cheating", 
> > etc.
> 
> This is clearly a circular dependency.
> I'm curious to know how koji do the job...

Both are available in Fedora 19, so any of them can be rebuilt and have
its BuildRequires satisfied.

The question is how did it get built the first time. And John already
responded to that in the part quoted above.

Note that circular build dependencies are in fact quite common, for
example in Perl modules.

What happens is that you'll bootstrap it by first building A, without
the BuildRequires on B (for example having B present in the buildroot is
only needed for an optional feature in A, or for the unit tests,...).

Then you build B, with its build dependency on A.

And finally you rebuild A, this time with the build dependency on B.


-- 
Mathieu

-- 
devel mailing list
devel@lists.fedoraproject.org
https://admin.fedoraproject.org/mailman/listinfo/devel

Reply via email to