diff options
author | Allan Sandfeld Jensen <allan.jensen@theqtcompany.com> | 2016-01-26 16:16:20 +0100 |
---|---|---|
committer | Allan Sandfeld Jensen <allan.jensen@qt.io> | 2017-05-03 09:50:36 +0200 |
commit | f130f98c723e40b2427fc2f7553403f2ea3c1d3c (patch) | |
tree | c8ddb54a3794c5eefa06e7861d675dbdb07d9cf9 | |
parent | 9dc4ae05e9872a7a60de6225ea05f61b8ac0d2fb (diff) | |
download | qtwebengine-chromium-f130f98c723e40b2427fc2f7553403f2ea3c1d3c.tar.gz |
Fix dependencies on ANGLE
Removes dependency on libEGL and libGLESv2 on both Windows and X11,
and links to the Qt versions on windows if doing an ANGLE build.
Technically we don't need ANGLE in that case either because we disable
GPU acceleration when Qt is using ANGLE, but since it is runtime
disabled it still need to be there at compile and link time.
Change-Id: I866442d7172609b81eaf83fdba3d8d85cc848cf2
Reviewed-by: Michael BrĂ¼ning <michael.bruning@theqtcompany.com>
Reviewed-by: Michael BrĂ¼ning <michael.bruning@qt.io>
-rw-r--r-- | chromium/content/gpu/BUILD.gn | 6 | ||||
-rw-r--r-- | chromium/media/gpu/BUILD.gn | 10 | ||||
-rw-r--r-- | chromium/ui/compositor/BUILD.gn | 6 | ||||
-rw-r--r-- | chromium/ui/gl/BUILD.gn | 7 | ||||
-rw-r--r-- | chromium/ui/gl/init/gl_initializer_win.cc | 16 |
5 files changed, 37 insertions, 8 deletions
diff --git a/chromium/content/gpu/BUILD.gn b/chromium/content/gpu/BUILD.gn index 50ebf1507ba..9adb5be96a8 100644 --- a/chromium/content/gpu/BUILD.gn +++ b/chromium/content/gpu/BUILD.gn @@ -90,6 +90,12 @@ target(link_target_type, "gpu_sources") { "//third_party/angle:libEGL", "//third_party/angle:libGLESv2", ] + if (use_qt) { + deps -= [ + "//third_party/angle:libEGL", + "//third_party/angle:libGLESv2", + ] + } } if (is_chromeos && current_cpu != "arm") { diff --git a/chromium/media/gpu/BUILD.gn b/chromium/media/gpu/BUILD.gn index e026eee6778..1083106eb2e 100644 --- a/chromium/media/gpu/BUILD.gn +++ b/chromium/media/gpu/BUILD.gn @@ -411,10 +411,12 @@ if (is_win || is_android || is_chromeos) { if (is_win) { # TODO(jschuh): crbug.com/167187 fix size_t to int truncations. configs += [ "//build/config/compiler:no_size_t_to_int_warning" ] - deps += [ - "//third_party/angle:libEGL", - "//third_party/angle:libGLESv2", - ] + if (!use_qt) { + deps += [ + "//third_party/angle:libEGL", + "//third_party/angle:libGLESv2", + ] + } } if (use_x11) { diff --git a/chromium/ui/compositor/BUILD.gn b/chromium/ui/compositor/BUILD.gn index a3c781b10f1..6fec9ddf457 100644 --- a/chromium/ui/compositor/BUILD.gn +++ b/chromium/ui/compositor/BUILD.gn @@ -99,6 +99,12 @@ component("compositor") { "//third_party/angle:libGLESv2", "//ui/resources", ] + if (use_qt) { + deps -= [ + "//third_party/angle:libEGL", + "//third_party/angle:libGLESv2", + ] + } } } diff --git a/chromium/ui/gl/BUILD.gn b/chromium/ui/gl/BUILD.gn index 79871957c16..d41f5c8c239 100644 --- a/chromium/ui/gl/BUILD.gn +++ b/chromium/ui/gl/BUILD.gn @@ -282,6 +282,13 @@ component("gl") { deps += [ ":gl_jni_headers" ] } + + if (use_qt && (is_win || use_x11)) { + data_deps -= [ + "//third_party/angle:libEGL", + "//third_party/angle:libGLESv2", + ] + } } static_library("gl_unittest_utils") { diff --git a/chromium/ui/gl/init/gl_initializer_win.cc b/chromium/ui/gl/init/gl_initializer_win.cc index c8648a761c7..7ea08c54082 100644 --- a/chromium/ui/gl/init/gl_initializer_win.cc +++ b/chromium/ui/gl/init/gl_initializer_win.cc @@ -35,6 +35,14 @@ namespace { const wchar_t kD3DCompiler[] = L"D3DCompiler_47.dll"; +#if defined(NDEBUG) || !defined(TOOLKIT_QT) +const wchar_t kGLESv2Library[] = L"libglesv2.dll"; +const wchar_t kEGLLibrary[] = L"libegl.dll"; +#else +const wchar_t kGLESv2Library[] = L"libglesv2d.dll"; +const wchar_t kEGLLibrary[] = L"libegld.dll"; +#endif + bool LoadD3DXLibrary(const base::FilePath& module_path, const base::FilePath::StringType& name) { base::NativeLibrary library = @@ -117,18 +125,18 @@ bool InitializeStaticEGLInternal() { // the former and if there is another version of libglesv2.dll in the dll // search path, it will get loaded instead. base::NativeLibrary gles_library = - base::LoadNativeLibrary(gles_path.Append(L"libglesv2.dll"), nullptr); + base::LoadNativeLibrary(gles_path.Append(kGLESv2Library), nullptr); if (!gles_library) { - DVLOG(1) << "libglesv2.dll not found"; + DVLOG(1) << kGLESv2Library << "not found"; return false; } // When using EGL, first try eglGetProcAddress and then Windows // GetProcAddress on both the EGL and GLES2 DLLs. base::NativeLibrary egl_library = - base::LoadNativeLibrary(gles_path.Append(L"libegl.dll"), nullptr); + base::LoadNativeLibrary(gles_path.Append(kEGLLibrary), nullptr); if (!egl_library) { - DVLOG(1) << "libegl.dll not found."; + DVLOG(1) << kEGLLibrary << "not found."; base::UnloadNativeLibrary(gles_library); return false; } |