On Tue, Jun 28, 2005 at 02:51:52PM +0200, Bill Allombert wrote: > In all that cases, you can _either_: > > 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.
I start to believe this is part of the solution if done completly differently: Do not change libfontconfig1.shlibs. Instead move the actual library to a new package libfontconfig1-lib. Provide a (possibly dummy) package libfontconfig1 that depend on libfontconfig1-lib (=${Source-version}) and on fontconfig. Change fontconfig to depend on libfontconfig1-lib but not on libfontconfig1 (overriding the shlibdeps mechanism here). Alternatively libfontconfig1 can contain fc-cache and support files and depends on libfontconfig1-lib manually. No override of shlibdeps is necessary here. Well at least this is the idea. If we accept the notion that shlibs must provide all the dependencies needed to use a library (and not merely the .so.N file), then we need some leeway to introduce additional dependencies. Since changing .shlibs file is too costly we need to introduce a virtualisation layer between packages and the library. Here, the introduction of the dummy libfontconfig1 achieve that. This sound ugly now, but merely because it is not in accordance with usual practice, which probably just means we will need to define new common practice that handle that cases. Cheers, -- Bill. <[EMAIL PROTECTED]> Imagine a large red swirl here. -- To UNSUBSCRIBE, email to [EMAIL PROTECTED] with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]