Re: Getting rid of circular dependencies
Le mardi 28 juin 2005 à 14:51 +0200, Bill Allombert a écrit :
> 1) include the offending binary (e.g. fc-cache) in the library package.
No. See policy, §8.2.
> 2) document that packages using some extra feature (e.g. SVG loader)
> needs to depend on an extra package (librsvg2-common)
Guess why we moved from doing things this way to make librsvg2-2 depend
> 3) change the shlibs file to document the dependency on the library, e.g
> change libfontconfig1.shlibs to
> libfontconfig 1 libfontconfig1 (>= 2.3.0), fontconfig
> and rebuild every package using libfontconfig. At this point you can
> remove the circular dependency.
This is complete overkill. It makes assumptions on the current
implementation, and it brings dependencies that should be purely
indirect. The program only actually uses libfontconfig1, so it should
only depend on libfontconfig1.
> 4) split the library in two libraries so that the -common package depend
> only on the first and is used only by the second.
This one would be good. In fact, maybe linking to the library isn't
necessary in these packages, I'll have a closer look. In this case using
--as-needed would solve the problem.
.''`. Josselin Mouette /\./\
: :' : email@example.com
`. `' firstname.lastname@example.org
`- Debian GNU/Linux -- The power of freedom