diff options
author | peter@chromium.org <peter@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2014-02-21 17:08:34 +0000 |
---|---|---|
committer | peter@chromium.org <peter@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2014-02-21 17:08:34 +0000 |
commit | abeda1fe53a5f2763cc17d45d53316b5ee27b510 (patch) | |
tree | a5417cec20467a3ead3133c6268cf1c27ae48444 /ui/gl/gl.gyp | |
parent | b9eafce1fe478fdb1a7406f99b7daa7ff2d38287 (diff) | |
download | chromium_src-abeda1fe53a5f2763cc17d45d53316b5ee27b510.zip chromium_src-abeda1fe53a5f2763cc17d45d53316b5ee27b510.tar.gz chromium_src-abeda1fe53a5f2763cc17d45d53316b5ee27b510.tar.bz2 |
Make it possible to use OSMesa on Android
This patch will start compiling OSMesa as a dependency of the
content_shell_apk target, and changes the GL implementation for Android
to recognize OSMesa as a valid implementation.
libosmesa.so will be separately included in ContentShell.apk, and
will be lazily loaded depending on whether OSMesa will be used or not.
When running a set of 54 layout tests on a Nexus 4, total time is
[69, 68, 68] ~68 seconds with this patch, [62, 60, 61] ~61 seconds
without this patch. Compensated for the setup time (13 seconds),
this means pixel tests are on average 14 percent slower. I believe
the win of (a) consistency with Chrome, (b) more reliable results and
(c) less cross-device differences warrants this, however.
Switching to OSMesa does also enable us to reliably enable impl-side
painting without getting garbage rendering on higher-end devices. At
time time it's not yet enabled by default however, as it makes
content_shell time out when ran on the Nexus 7.
BUG=232044, 248925, 250777
Review URL: https://codereview.chromium.org/23868030
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@252583 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'ui/gl/gl.gyp')
-rw-r--r-- | ui/gl/gl.gyp | 9 |
1 files changed, 6 insertions, 3 deletions
diff --git a/ui/gl/gl.gyp b/ui/gl/gl.gyp index 702f4cc..527c5c4 100644 --- a/ui/gl/gl.gyp +++ b/ui/gl/gl.gyp @@ -84,8 +84,6 @@ 'gl_implementation.cc', 'gl_implementation.h', 'gl_implementation_android.cc', - 'gl_implementation_linux.cc', - 'gl_implementation_linux.h', 'gl_implementation_ozone.cc', 'gl_implementation_mac.cc', 'gl_implementation_win.cc', @@ -187,6 +185,12 @@ '<(DEPTH)/third_party/khronos', ], }], + ['OS in ("android", "linux")', { + 'sources': [ + 'gl_implementation_osmesa.cc', + 'gl_implementation_osmesa.h', + ], + }], ['use_x11 == 1', { 'sources': [ 'gl_context_glx.cc', @@ -277,7 +281,6 @@ ], }, 'sources!': [ - 'gl_context_osmesa.cc', 'system_monitor_posix.cc', ], 'defines': [ |