summaryrefslogtreecommitdiffstats
path: root/patches/chromium/0010-Fix-the-build-with-a-GL-ES2-configured-Qt.patch
diff options
context:
space:
mode:
authorJocelyn Turcotte <jocelyn.turcotte@digia.com>2014-01-31 16:27:44 +0100
committerThe Qt Project <gerrit-noreply@qt-project.org>2014-02-03 17:50:35 +0100
commitecaab295f96e3d12fc952c49d35a6eb32f72aba1 (patch)
tree0274229243a57462c2a24f4162b597235ce9b755 /patches/chromium/0010-Fix-the-build-with-a-GL-ES2-configured-Qt.patch
parenta4b0e2183c23c0173167833c75f0e2970f3ab524 (diff)
Make it easier to update patches and apply them manually
Clean the way that we maintain patches by keeping them ordered by their number and let the shell order them when giving the list to git am. Provide a update-patches.sh that maintains the proper command lines to use and run a cleaning script on the resulting patch to avoid the SHA1 to be added to the file as it changes every time the patch is applied. Change-Id: Ia93cf4b35f5f847a8723a31fc476443864242737 Reviewed-by: Andras Becsi <andras.becsi@digia.com>
Diffstat (limited to 'patches/chromium/0010-Fix-the-build-with-a-GL-ES2-configured-Qt.patch')
-rw-r--r--patches/chromium/0010-Fix-the-build-with-a-GL-ES2-configured-Qt.patch161
1 files changed, 161 insertions, 0 deletions
diff --git a/patches/chromium/0010-Fix-the-build-with-a-GL-ES2-configured-Qt.patch b/patches/chromium/0010-Fix-the-build-with-a-GL-ES2-configured-Qt.patch
new file mode 100644
index 000000000..02688d6ad
--- /dev/null
+++ b/patches/chromium/0010-Fix-the-build-with-a-GL-ES2-configured-Qt.patch
@@ -0,0 +1,161 @@
+From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
+From: Jocelyn Turcotte <jocelyn.turcotte@digia.com>
+Date: Wed, 30 Oct 2013 14:27:28 +0100
+Subject: Fix the build with a GL ES2 configured Qt.
+
+GLES/gl2.h is included through Qt public headers and the copy of
+Chromium is used since its include path comes before /usr/include.
+The problem is that this header is incompatible for some reasons,
+one of them being that it converts all GL function symbols from
+gl* to GLES2*.
+
+Qt layer code should always need to go through GL directly,
+so make sure that only GYP targets that depend directly on gpu.gyp,
+khronos.gyp or webkit_gpu.gyp will have an include path
+pointing to those headers.
+
+Replace all_dependent_settings with direct_dependent_settings and
+control which target inherits this include_dirs from its dependencies
+by using export_dependent_settings.
+
+Change-Id: Id4d98fe22ef8b778b5ba8da300dad28e69507732
+---
+ content/content_browser.gypi | 1 +
+ gpu/command_buffer_client.gypi | 3 +++
+ gpu/command_buffer_common.gypi | 3 +++
+ gpu/gpu.gyp | 18 ++++++++++++++++++
+ third_party/khronos/khronos.gyp | 2 +-
+ webkit/common/gpu/webkit_gpu.gyp | 3 +++
+ 6 files changed, 29 insertions(+), 1 deletion(-)
+
+diff --git a/content/content_browser.gypi b/content/content_browser.gypi
+index c2e5f18..f820ad0 100644
+--- a/content/content_browser.gypi
++++ b/content/content_browser.gypi
+@@ -1270,6 +1270,7 @@
+ 'dependencies': [
+ 'browser/devtools/devtools_resources.gyp:devtools_resources',
+ '../cc/cc.gyp:cc',
++ '../gpu/gpu.gyp:gpu_ipc',
+ '../net/net.gyp:http_server',
+ '../printing/printing.gyp:printing',
+ '../third_party/leveldatabase/leveldatabase.gyp:leveldatabase',
+diff --git a/gpu/command_buffer_client.gypi b/gpu/command_buffer_client.gypi
+index b4d5b78..75bea79 100644
+--- a/gpu/command_buffer_client.gypi
++++ b/gpu/command_buffer_client.gypi
+@@ -14,6 +14,9 @@
+ 'dependencies': [
+ '../third_party/khronos/khronos.gyp:khronos_headers',
+ ],
++ 'export_dependent_settings': [
++ '../third_party/khronos/khronos.gyp:khronos_headers',
++ ],
+ 'sources': [
+ 'command_buffer/client/atomicops.cc',
+ 'command_buffer/client/atomicops.h',
+diff --git a/gpu/command_buffer_common.gypi b/gpu/command_buffer_common.gypi
+index 55e825e..4c1044a 100644
+--- a/gpu/command_buffer_common.gypi
++++ b/gpu/command_buffer_common.gypi
+@@ -6,6 +6,9 @@
+ 'dependencies': [
+ '../third_party/khronos/khronos.gyp:khronos_headers',
+ ],
++ 'export_dependent_settings': [
++ '../third_party/khronos/khronos.gyp:khronos_headers',
++ ],
+ 'sources': [
+ 'command_buffer/common/bitfield_helpers.h',
+ 'command_buffer/common/buffer.h',
+diff --git a/gpu/gpu.gyp b/gpu/gpu.gyp
+index 316aa91..1599623 100644
+--- a/gpu/gpu.gyp
++++ b/gpu/gpu.gyp
+@@ -23,6 +23,9 @@
+ 'command_buffer/command_buffer.gyp:gles2_utils',
+ 'gles2_cmd_helper',
+ ],
++ 'export_dependent_settings': [
++ '../third_party/khronos/khronos.gyp:khronos_headers',
++ ],
+ 'defines': [
+ 'GLES2_IMPL_IMPLEMENTATION',
+ ],
+@@ -88,6 +91,9 @@
+ 'command_buffer_client',
+ 'gles2_implementation',
+ ],
++ 'export_dependent_settings': [
++ 'command_buffer_client',
++ ],
+ 'defines': [
+ 'GLES2_C_LIB_IMPLEMENTATION',
+ ],
+@@ -113,6 +119,9 @@
+ 'command_buffer_client',
+ 'gles2_implementation_client_side_arrays_no_check',
+ ],
++ 'export_dependent_settings': [
++ 'command_buffer_client',
++ ],
+ 'sources': [
+ '<@(gles2_c_lib_source_files)',
+ ],
+@@ -348,6 +357,9 @@
+ 'gpu_config',
+ 'gpu_ipc',
+ ],
++ 'export_dependent_settings': [
++ 'command_buffer_common',
++ ],
+ 'sources': [
+ 'gpu_export.h',
+ ],
+@@ -390,6 +402,9 @@
+ 'dependencies': [
+ 'command_buffer_common',
+ ],
++ 'export_dependent_settings': [
++ 'command_buffer_common',
++ ],
+ # TODO(jschuh): crbug.com/167187 fix size_t to int truncations.
+ 'msvs_disabled_warnings': [4267, ],
+ },
+@@ -415,6 +430,9 @@
+ 'dependencies': [
+ 'command_buffer_common',
+ ],
++ 'export_dependent_settings': [
++ 'command_buffer_common',
++ ],
+ },
+ {
+ 'target_name': 'gpu_config',
+diff --git a/third_party/khronos/khronos.gyp b/third_party/khronos/khronos.gyp
+index 8a85572..88130d2 100644
+--- a/third_party/khronos/khronos.gyp
++++ b/third_party/khronos/khronos.gyp
+@@ -7,7 +7,7 @@
+ {
+ 'target_name': 'khronos_headers',
+ 'type': 'none',
+- 'all_dependent_settings': {
++ 'direct_dependent_settings': {
+ 'include_dirs': [
+ '.',
+ '../../gpu', # Contains GLES2/gl2chromium.h
+diff --git a/webkit/common/gpu/webkit_gpu.gyp b/webkit/common/gpu/webkit_gpu.gyp
+index 2831446..be79c22 100644
+--- a/webkit/common/gpu/webkit_gpu.gyp
++++ b/webkit/common/gpu/webkit_gpu.gyp
+@@ -27,6 +27,9 @@
+ '<(DEPTH)/ui/gl/gl.gyp:gl',
+ '<(DEPTH)/ui/ui.gyp:ui',
+ ],
++ 'export_dependent_settings': [
++ '<(DEPTH)/gpu/gpu.gyp:gles2_implementation',
++ ],
+ 'sources': [
+ # This list contains all .h and .cc in gpu except for test code.
+ 'context_provider_in_process.cc',