Weston upstream recommends the default configuration --enable-egl --with-cairo=image. Looking at the x11-overlay ebuild, this translates to USE="egl -opengl -gles2". However, all ebuilds in Portage and the -9999 ebuild in x11-overlay explicitly forbid this configuration. Instead, all the ebuilds should defult to the upstream recommended, the default configure options. Using --with-cairo=gl or --with-cairo=glesv2 should not be used, unless one is particularly interested in the few special demo programs that require them. Otherwise they will only cause a) an additional failure mode, and b) increased resource usage for no benefit. Using these options does *not* provide any performance benefits. Note, that the standard USE="opengl" is probably not a good choice for selecting --with-cairo=gl, because I would expect users to generally enable "opengl" while they still do not want --with-cairo=gl. That said, it's probably equally bad to have USE="gles2" to mean directly --with-cairo=glesv2. In fact, I think I'm going to propose an upstream Weston patch, that will give a big fat warning if you try to use anything but --with-cairo=image that it is likely not what you want. Reproducible: Always Steps to Reproduce: USE="egl -opengl -gles2" emerge dev-libs/weston Actual Results: Fails by conflicting USE requirements. Expected Results: Successfull merge.
Related urls: http://cgit.freedesktop.org/wayland/weston/commit/configure.ac?id=42db3137e1b7914b8e9b3ed5790c1feaee1fb713 http://cgit.freedesktop.org/wayland/weston/tree/configure.ac?id=42db3137e1b7914b8e9b3ed5790c1feaee1fb713#n233
Hi Pekka, Could you suggest a patch? (I've moved the 9999 ebuild to the main tree today) I'd be happy to take a patch that removes toy programs and developer programs, and also one that clears up the Cairo image/opengl/glesv2 selection. If a /user/ does not have a reason to select opengl/glesv2, we should remove them. Weston developers will have local builds they work with. I don't use weston, so I don't know the value of the simple EGL clients. Please advise.
(In reply to Matt Turner from comment #2) > Hi Pekka, > > Could you suggest a patch? (I've moved the 9999 ebuild to the main tree > today) Hello Matt, thanks for looking at this. I cannot promise anything. Unsure what more to say. Just configure weston using --enable-egl --with-cairo=image. You can put the --enable-egl behind a USE-flag, but I see no reason to have USE flags for the --with-cairo setting. --enable-egl is the master switch that controls the use of all GL APIs. Disable it, and you shouldn't need any EGL/GL/GLES libraries at all. I suppose this could match the intention of the "opengl" USE flag? --with-cairo=image does not disable weston-simple-egl (GLESv2) or weston-subsurfaces (optional GLESv2). weston-simple-shm and weston-simple-egl are valuable debugging tools when a user experiences e.g. a black screen. Although, I suppose the problems we usually debug with those will be gone anyway if built --with-cairo=image. *shrug* Weston-simple-egl is the basic test for EGL Wayland platform. Otherwise, pretty useless.
Created attachment 410642 [details, diff] patch Thanks Pekka. How's this?
(In reply to Matt Turner from comment #4) > Created attachment 410642 [details, diff] [details, diff] > patch > > Thanks Pekka. How's this? That's not good enough. New patch incoming.
Created attachment 410644 [details, diff] patch Okay, since weston with EGL support requires GLESv2, and USE=opengl just controlled the cairo backend, just throw out the opengl and egl use flags and keep USE=gles2.
Ping, in case you've forgotten this bug. :)
Sorry, I haven't forgot. It may just take a few weeks or months before I test Weston at home again. I poke it all day at work already, but I don't develop with ebuilds. :-/
I've applied the patch to the 9999 ebuild, and done a version bump to 1.9.0 that includes it as well.
I took a look at the 9999 ebuild now, and it looks good enough. Thanks!