diff options
Diffstat (limited to 'opengl/libs/EGL')
-rw-r--r-- | opengl/libs/EGL/Loader.cpp | 14 | ||||
-rw-r--r-- | opengl/libs/EGL/egl_display.cpp | 2 |
2 files changed, 15 insertions, 1 deletions
diff --git a/opengl/libs/EGL/Loader.cpp b/opengl/libs/EGL/Loader.cpp index 02914a0..e528831 100644 --- a/opengl/libs/EGL/Loader.cpp +++ b/opengl/libs/EGL/Loader.cpp @@ -187,8 +187,13 @@ void* Loader::open(egl_connection_t* cnx) LOG_ALWAYS_FATAL_IF(!hnd, "couldn't find an OpenGL ES implementation"); +#if defined(__LP64__) + cnx->libGles2 = load_wrapper("/system/lib64/libGLESv2.so"); + cnx->libGles1 = load_wrapper("/system/lib64/libGLESv1_CM.so"); +#else cnx->libGles2 = load_wrapper("/system/lib/libGLESv2.so"); cnx->libGles1 = load_wrapper("/system/lib/libGLESv1_CM.so"); +#endif LOG_ALWAYS_FATAL_IF(!cnx->libGles2 || !cnx->libGles1, "couldn't load system OpenGL ES wrapper libraries"); @@ -268,8 +273,13 @@ void *Loader::load_driver(const char* kind, String8 pattern; pattern.appendFormat("lib%s", kind); const char* const searchPaths[] = { +#if defined(__LP64__) + "/vendor/lib64/egl", + "/system/lib64/egl" +#else "/vendor/lib/egl", "/system/lib/egl" +#endif }; // first, we search for the exact name of the GLES userspace @@ -310,7 +320,11 @@ void *Loader::load_driver(const char* kind, if (checkGlesEmulationStatus() == 0) { ALOGD("Emulator without GPU support detected. " "Fallback to software renderer."); +#if defined(__LP64__) + result.setTo("/system/lib64/egl/libGLES_android.so"); +#else result.setTo("/system/lib/egl/libGLES_android.so"); +#endif return true; } diff --git a/opengl/libs/EGL/egl_display.cpp b/opengl/libs/EGL/egl_display.cpp index 26240f1..7784ca6 100644 --- a/opengl/libs/EGL/egl_display.cpp +++ b/opengl/libs/EGL/egl_display.cpp @@ -313,7 +313,7 @@ void egl_display_t::loseCurrentImpl(egl_context_t * cur_c) } EGLBoolean egl_display_t::makeCurrent(egl_context_t* c, egl_context_t* cur_c, - EGLSurface draw, EGLSurface read, EGLContext ctx, + EGLSurface draw, EGLSurface read, EGLContext /*ctx*/, EGLSurface impl_draw, EGLSurface impl_read, EGLContext impl_ctx) { EGLBoolean result; |