gl-renderer: add alpha cut-out support

Add a support for an alpha cut-out wl_buffer type to the GL renderer.

This is useful for platforms with video underlay. The GL renderer
draws an alpha cut-out of the dimensions specified by the attached
alpha cut-out wl_buffer in order to show hardware plane(s) underneath.

Sending content to any such hardware plane is not specified here
and must be done by other means.

Signed-off-by: Tomek Bury <tomek.bury@gmail.com>
6 jobs for main in 56 seconds
latest
Status Job ID Name Coverage
  Container Prep
passed #10517167
container_prep

00:00:32

 
  Build
failed #10517169
kvm
build-docs

00:00:21

failed #10517168
kvm
build-full

00:00:23

failed #10517170
kvm
build-no-gl

00:00:22

 
  Pages
skipped #10517171
docs-and-coverage
skipped #10517172
pages
 
Name Stage Failure
failed
build-no-gl Build
/builds/tomek/weston/build-weston-build-no-gl/meson-logs: found 2 matching files and directories 
WARNING: /builds/tomek/weston/build-weston-build-no-gl/weston-virtme: no matching files
/builds/tomek/weston/prefix-weston-build-no-gl: found 1 matching files and directories

Uploading artifacts as "archive" to coordinator... ok
id=10517170 responseStatus=201 Created token=xdq2KLM7
Uploading artifacts...
WARNING: /builds/tomek/weston/build-weston-build-no-gl/meson-logs/testlog.junit.xml: no matching files
ERROR: No files to upload
Cleaning up file based variables
ERROR: Job failed: exit code 1
failed
build-docs Build
$ ninja -k0 -j${FDO_CI_CONCURRENT:-4}
ninja: error: '/builds/tomek/weston/prefix-wayland-protocols/share/wayland-protocols/unstable/alpha-cutout/alpha-cutout-unstable-v1.xml', needed by 'protocol/alpha-cutout-unstable-v1-protocol.c', missing and no known rule to make it
Uploading artifacts for failed job
Uploading artifacts...
/builds/tomek/weston/build-weston-build-docs/meson-logs: found 2 matching files and directories

/builds/tomek/weston/prefix-weston-build-docs: found 1 matching files and directories

Uploading artifacts as "archive" to coordinator... ok
id=10517169 responseStatus=201 Created token=Z-QPsUxp
Cleaning up file based variables
ERROR: Job failed: exit code 1
failed
build-full Build
Uploading artifacts as "archive" to coordinator... ok  id=10517168 responseStatus=201 Created token=yAkpvu2q
Uploading artifacts...
WARNING: /builds/tomek/weston/build-weston-build-full/meson-logs/testlog.junit.xml: no matching files
ERROR: No files to upload
Uploading artifacts...
WARNING: /builds/tomek/weston/build-weston-build-full/meson-logs/coverage.xml: no matching files
ERROR: No files to upload
Cleaning up file based variables
ERROR: Job failed: exit code 1