Policy on circular build deps?
On Mon, 2008-11-03 at 09:54 -0500, Adam Jackson wrote:
> On Mon, 2008-11-03 at 10:22 +0000, Richard W.M. Jones wrote:
> > Is there a policy on whether circular build dependencies are permitted
> > or not? The nearest I can find is this (obsolete?) page:
> > https://fedoraproject.org/wiki/Extras/PackagesNeedingBootstrap
> > MinGW has one hard circular dependency which will require rel-eng
> > cooperation to build first time, but we also have another one which
> > is only a "nice to have" (mingw32-iconv & mingw32-gettext).
> I don't think there's any strict policy.
> It's polite to mark the
> packages needing special handling during bootstrap somehow. In Mesa I
> just note at the top of the specfile that the -demos subpackage needs to
> be excluded on the way up (it needs libglut, which you can't build until
> you've built a libGL, which the main Mesa package provides...)
One approach trick is to have a special "--with/without" magic inside of
an rpm spec, which is sufficient to let subsequent incremental builds
IIRC, the ghc-case, they once had carried some binary packages inside
which were used to provide an initial build of other packages. A similar
approach can be applied to many cross-toolchains (Initially once "seed"
with binary packages, then later build incrementally).
Another approach is to "gradually introduce features", i.e. to initially
build a package with certain features disabled, use this package's
contents to built another package providing a feature, etc.
(Think building a gcc with i18n disabled to build iconv/libgettext, and
then build gcc with i18n enabled).
fedora-devel-list mailing list