client funcs in libmircommon
Christopher James Halse Rogers
chris at cooperteam.net
Wed Jan 28 02:17:39 UTC 2015
Ah, ok. That would seem to be incorrect.
On Wed, Jan 28, 2015 at 12:58 PM, Daniel van Vugt
<daniel.van.vugt at canonical.com> wrote:
> That's the point. Yes, we do now have a handful of client functions
> exported from libmircommon directly to (future) clients. So that's
> why I raised it...
>
>
> On 28/01/15 09:55, Christopher James Halse Rogers wrote:
>> 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