[Pkg-qof-maintainers] Bug#387196: circular dependency

Neil Williams linux at codehelp.co.uk
Wed Sep 13 16:46:56 UTC 2006


Bill Allombert wrote:
> On Wed, Sep 13, 2006 at 02:56:00PM +0100, Neil Williams wrote:
>> This was done because an application (pilot-qof) dependent on libqof1
>> requires libqof-backend-qsf0 but until 0.7.1, that was packaged within
>> libqof1 itself, not separately.
>>
>> The latest version of pilot-qof, 0.1.1-2, includes new dependency
>> information:
>> Depends: libc6 (>= 2.3.5-1), libglib2.0-0 (>= 2.10.0), libpisock9,
>> libpopt0 (>= 1.10), libqof1, libqof-backend-qsf0
>> Recommends: xsltproc, xml-core, lynx | www-browser, dwww
> 
> Am I wrong in assuming that a binNMU of the current pilot-qof would
> pick up the new dependency automatically ?

With or without the circular dependency? I can't see how it would work
without the circular dependency, unless the binNMU includes a change to
debian/control to add libqof-backend-qsf0 as a dependency - but that
would be a source NMU, wouldn't it?

Remember: these new packages are GModules - plugins if you like - it's
just that each libqof1 application needs at least one backend. As
pilot-qof does not have it's own (as gnotime does), it needs QSF. That
was fine in the last upload because QSF was all there was and it was
packaged within libqof1.

I did try building without the circular depends and the package built OK
but would not function - because it had no way of loading or saving
data, it had no backend. This is a runtime issue, not so much a
build/porting issue. shlibdeps doesn't get the right answer in this
case, AFAICT. I may have it wrong, of course.

>> Was there a better way of handling this situation where libfoo is split
>> out from libbar? libbar must depend on libfoo - the problem was that foo
>> (a completely separate application) depended on libfoo and expected
>> libfoo to include libbar as well.
> 
> If dependencies are automatically generated by shlibdeps, then it is 
> sufficient to binNMU all the packages affected: they will pick the
> correct dependencies by themself. 

No, libqof-backend-qsf0 is a GModule - pilot-qof does not link against
it (linking against a module is non-portable), pilot-qof is only linked
against libqof1. Without the circular dependency, shlibdeps only
identifies libqof1.

(Unless I'm misunderstanding you here.)

-- 

Neil Williams
=============
http://www.data-freedom.org/
http://www.nosoftwarepatents.com/
http://www.linux.codehelp.co.uk/


-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 252 bytes
Desc: OpenPGP digital signature
Url : http://lists.alioth.debian.org/pipermail/pkg-qof-maintainers/attachments/20060913/7821912d/signature-0002.pgp


More information about the Pkg-qof-maintainers mailing list