Hello,

while I developing the option 2. I raise few questions because this option explicit the fact that back-ends does not share the same API (at less for the configuration). To resolve the issue I found the following options:

 1. find a common configuration API (use key/value)

 2. have the following split:
   - libweston: every thing that is not in back-ends.
- libbackendx, libbackendy, ... : back end implementation of configuration stuff, that you must link with libweston (this is the uncommon API parts of back-ends - backendx.so, backendy.so, ... : the loadable (common API) part of backends.

 3. have the following split:
  - libweston: every thing that is not in backends.
- libbackendx, libbackendy, ... : back end are not more loadable, and are linked at build, developer can drop useless back-ends.


Maybe you have better idea, from my point of view I will prefer the third one. it's not optimal in term of loading and memory because we need to load all available back-ends but it's cleaner.

Maybe in the option 3 we can hide the option 2 inside, that load a backend.so only once it's used to save memory and loading time.

This is something I didn't foresee in my previous e-mail.

Best regards.
_______________________________________________
wayland-devel mailing list
wayland-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/wayland-devel

Reply via email to