[PATCH wayland 2/3] scanner: Allow adding a prefix to exported symbols

Emil Velikov emil.l.velikov at gmail.com
Mon Jan 22 15:30:55 UTC 2018


On 22 January 2018 at 15:09, Pekka Paalanen <ppaalanen at gmail.com> wrote:
> On Mon, 22 Jan 2018 14:46:15 +0000
> Emil Velikov <emil.l.velikov at gmail.com> wrote:
>
>> On 19 January 2018 at 15:49, Derek Foreman <derekf at osg.samsung.com> wrote:
>> > On 2018-01-19 01:22 AM, Jonas Ã…dahl wrote:
>> >>
>> >> On Thu, Jan 18, 2018 at 10:48:14AM +0200, Pekka Paalanen wrote:
>> >>>
>
>> >>>
>> >>> the original proposal was to prefix ABI symbols, and leave everything
>> >>> else as is. Maybe writing down again how exactly that is supposed to be
>> >>> used and what problems it solves would crystallize the idea. Perhaps in
>> >>> the form of wayland-scanner user instructions which the original patch
>> >>> seems to be lacking?
>> >>>
>> >>> Earlier I didn't like prefixing only some bits of the API, but on
>> >>> second thought, if that's all what's needed, maybe it isn't that bad
>> >>> from hand-written code readability point of view?
>> >>>
>> >>> The discussion showed that any other solution becomes hard and/or messy
>> >>> compared to that. This is not a library ABI/API change either, just a
>> >>> new operation mode in wayland-scanner.
>> >>>
>> >>> I join you with the question about use cases and how badly do we need
>> >>> this.
>> >>
>> >>
>> >> I don't see the point in keeping xdg-shell unstable v5 support in
>> >> weston, so from that point of view, *weston* I'd say don't need any
>> >> symbol prefix feature.
>> >>
>> >
>> > Ok, I guess at this point we should drop it from consideration for the next
>> > release.
>> >
>> > Pekka's synopsis is a really good status report for anyone interested in
>> > picking this up later without reading all the previous threads.
>> >
>> Something I mentioned over IRC, but forgot to add it here.
>> QT5 has been using unstable protocols for a while now. Combine that with:
>>  - interface symbols are exported by default
>>  - binary-only applications ship with their own version of QT (some
>> even have wayland-client.so and wayland-egl.so...)
>>  - some of those won't be updated to use the stable interface
>>
>> This brings us to the original topic - symbol collusion. Jonas' idea
>> sounds reasonable to me.
>
> Hi Emil,
>
> all those issues sounds like they would be solved by not exporting
> symbols and ensuring to use only local symbols for resolving, which are
> both quite orthogonal. One cannot change a prefix every time when
> building a different version of a protocol definition. Where not
> exporting and local resolution would not be available, arguably neither
> would prefixing.
>
> Therefore I think we should concentrate on the no-export feature rather
> than prefixing.
>
> Let's try hard to drop xdg-shell v5 completely, just like originally
> intended. I want to keep the distiction between unstable and stable.
>
Fair enough. Ignore I said anything ;-)

-Emil


More information about the wayland-devel mailing list