client funcs in libmircommon
Christopher James Halse Rogers
chris at cooperteam.net
Wed Jan 28 01:55:20 UTC 2015
On Wed, Jan 28, 2015 at 12:49 PM, Daniel van Vugt
<daniel.van.vugt at canonical.com> wrote:
> I forgot (and aren't totally sure) about indirect dependencies.
>
> Although these client functions are obviously versioned, so even the
> indirect dependencies will point to funcname@@MIR_COMMON_3.x which
> sounds like it could become a problem for clients/toolkits rather
> quickly as we bump the common ABI.
Just to be clear, we're not exporting anything that a client would be
expected to directly call from libmircommon, right? The callstack might
go client code→libmirclient→libmircommon, but never client
code→libmircommon, right?
In which case the client code never references anything in
libmircommon, it's symbol table contains nothing from libmircommon, and
everything is handled by ld.so when libmirclient is loaded.
>
>
> On 28/01/15 08:57, Christopher James Halse Rogers wrote:
>> On Tue, Jan 27, 2015 at 2:50 PM, Daniel van Vugt
>> <daniel.van.vugt at canonical.com> wrote:
>>> We seem to have some client functions residing in libmircommon
>>> now...
>>>
>>> That sounds reasonable at first but doesn't this prevent us from
>>> being
>>> able to bump the common ABI without breaking clients?
>>
>> No? They'll just link to libmirclient8. The old libmirclient8 will
>> link
>> to libmircommon3 and the new libmirclient8 will link to
>> libmircommon4,
>> and everything will work as expected.
More information about the Mir-devel
mailing list