[oe] [meta-browser][PATCH v3 0/4] Introduce EGL/GLES and component build patches for Chromium

Otavio Salvador otavio at ossystems.com.br
Thu May 1 21:22:14 UTC 2014


Hello Carlos,

On Thu, May 1, 2014 at 5:36 PM, Carlos Rafael Giani
<dv at pseudoterminal.org> wrote:
> This set of patches extends the chromium recipe to allow for EGL&GLESv2 based 2D rendering,
> considerably improving performance. This also adds hardware-accelerated WebGL support.
>
> Three new PACKAGECONFIG for chromium are introduced:
>
> * "component-build" : If set, Chromium is built in component mode. Each subsystem of Chromium
>   ends up in a separate shared object. The alternative is the regular mode, which links everything
>   into one big binary. Component builds are useful for development and testing, and consumes
>   significantly less RAM during building. It is essential when building Chromium on a 32-bit OS.
>
> * "use-egl" : Ordinarily, Chromium will try to use GLX and regular (= Desktop) OpenGL for 2D
>   acceleration. If that fails, software rendering is used. If use-egl is set, it will use EGL
>   instead of GLX and OpenGL ES 2.0 instead of regular OpenGL. This is very useful if the
>   target platform provides hardware acceleration for this API. Chromium will then render all 2D
>   components as well as WebGL contents with hardware acceleration, Canvas being an exception
>   (see below).
>
> * "ignore-lost-context" : Without this flag, HTML Canvas will not be accelerated, even with the
>   "use-egl" flag set. The reason for this is a conceptual problem: HTML Canvas expects the
>   backing store of the canvas to persist until the web page goes away. But if the backing store
>   is a GLES texture, then in theory the associated EGL context could get lost (for example, during
>   a power management cycle), and the texture along with it. This violates requirements for canvas.
>   So, one has to choose: either remain fully standards compliant, and have no acceleration, or
>   have acceleration, and risk losing the Canvas content. Note that context losses do not happen on
>   all platforms (they haven't been observed with Vivante GPUs for example, and internals of its
>   galcore module do not show anything that could cause a lost context). But since these recipes
>   do not depend on a specific platform, this option must be explicitely enabled.

Thanks for this. I applied them all in master branch.

-- 
Otavio Salvador                             O.S. Systems
http://www.ossystems.com.br        http://code.ossystems.com.br
Mobile: +55 (53) 9981-7854            Mobile: +1 (347) 903-9750



More information about the Openembedded-devel mailing list