Commit 73c23eb5 authored by cwallez's avatar cwallez Committed by Commit bot

On X11, copy ANGLE's libraries instead of using the _ANGLE version

The _ANGLE version of the ANGLE libraries were loadable_module targets
linking against their respective shared_library. It worked in Debug
build but in Release builds the --as-needed linker flag removed the
dependency. Release Chromium would then be enable to find
eglGetProcAddress in libEGL_ANGLE and fail to start the GPU process.

This commit replaces the loadable_module scheme by a simple copy of the
libEGL and libGLESv2 shared libraries from PRODUCT_DIR/lib to
PRODUCT_DIR. The drawback to doing this is that the GYP and GN code
diverge (there is no need for the copy in GN).

BUG=522967

Review URL: https://codereview.chromium.org/1635243002

Cr-Commit-Position: refs/heads/master@{#371821}
parent 8d9b0469
......@@ -186,10 +186,16 @@
'<(DEPTH)/build/linux/system.gyp:xcomposite',
'<(DEPTH)/build/linux/system.gyp:xext',
'<(DEPTH)/ui/events/platform/events_platform.gyp:events_platform',
'<(DEPTH)/third_party/angle/src/angle.gyp:libEGL_ANGLE',
'<(DEPTH)/third_party/angle/src/angle.gyp:libGLESv2_ANGLE',
'<(DEPTH)/ui/gfx/x/gfx_x11.gyp:gfx_x11',
],
'copies': [{
'destination': '<(PRODUCT_DIR)',
'files':
[
"<(PRODUCT_DIR)/lib/libEGL.so",
"<(PRODUCT_DIR)/lib/libGLESv2.so",
],
}],
}],
['OS=="win"', {
'sources': [
......
......@@ -42,8 +42,8 @@ const char kGLLibraryName[] = "libGL.so.1";
const char kGLESv2LibraryName[] = "libGLESv2.so.2";
const char kEGLLibraryName[] = "libEGL.so.1";
const char kGLESv2ANGLELibraryName[] = "libGLESv2_ANGLE.so";
const char kEGLANGLELibraryName[] = "libEGL_ANGLE.so";
const char kGLESv2ANGLELibraryName[] = "libGLESv2.so";
const char kEGLANGLELibraryName[] = "libEGL.so";
} // namespace
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment