Adding support for external Weston back-ends

Krzysztof Konopko kris at youview.com
Thu Sep 8 14:45:12 UTC 2016


Hi,

I'm aware that loading external back-ends was removed from Weston some time this
year (in June) but I'd like to ask for reconsidering this decision.  I guess
this was driven by the intent to support only back-ends hosted within Weston
tree (easier to maintain) and to encourage openness.

On the other hand, this might discourage the adoption of Wayland in general as
Weston, being the reference compositor, is the first go-to component to evaluate
new platforms.  And unlikely adopters choose to write the whole compositor
themselves in the first place.  In some cases this will be closed/proprietary
platforms (eg. set-top-boxes) where big companies cannot be simply asked to open
their graphics acceleration drivers (even if they want to, it might not be that
simple) but it also might be the case for (almost) open platforms where during
evaluation and prototyping existing solutions (eg. Mesa) are not at option.  An
example of this might be (aptly) discontinued support for rpi-backend within
Weston, while V3D driver in Mesa is not mature enough and its performance is
likely inferior to the proprietary one.

Anyway, I think that supporting external back-ends would make no harm in Weston
project and can only do it good (encourage adoption).

Attached is a proposed patch that adds an _alternative_ API to load back-ends
externally.

Equally all existing back-ends could use the same `backend_init()` API as the
external ones, like it was before, something like:

    WL_EXPORT int
    backend_init(struct weston_compositor *compositor,
                 char *name, int *argc, char **argv,
                 struct weston_config *wc);

All configuration parsing would be moved into each back-end library and decouple
all back-ends nicely from generic libweston code.

Meanwhile, the patch I'm sending (as a RFC) makes minimal changes, mostly
additive.

Cheers,
Kris
This transmission contains information that may be confidential and contain personal views which are not necessarily those of YouView TV Ltd. YouView TV Ltd (Co No:7308805) is a limited liability company registered in England and Wales with its registered address at YouView TV Ltd, 3rd Floor, 10 Lower Thames Street, London, EC3R 6YT. For details see our web site at http://www.youview.com


More information about the wayland-devel mailing list