summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorpiman@chromium.org <piman@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2010-01-25 23:10:58 +0000
committerpiman@chromium.org <piman@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2010-01-25 23:10:58 +0000
commitc76723a1f489484af50a177bd4020c1ed38e65ed (patch)
treea6fe211e4f8fa42ac76818a4f9d2d27720897fba
parent55ac7ea2120b48f88040289986bb46d530e6c296 (diff)
downloadchromium_src-c76723a1f489484af50a177bd4020c1ed38e65ed.zip
chromium_src-c76723a1f489484af50a177bd4020c1ed38e65ed.tar.gz
chromium_src-c76723a1f489484af50a177bd4020c1ed38e65ed.tar.bz2
linux: enable pepper plugin
This is CL 36399 that was reverted in 36969 because it caused an ICE on the official builders. This adds a workaround for the ICE. Review URL: http://codereview.chromium.org/546136 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@37055 0039d316-1c4b-4281-b951-d872f2087c98
-rw-r--r--build/all.gyp5
-rw-r--r--build/common.gypi7
-rw-r--r--gpu/pgl/pgl.cc2
-rw-r--r--webkit/tools/pepper_test_plugin/pepper_test_plugin.gyp21
-rw-r--r--webkit/tools/pepper_test_plugin/plugin_object.cc2
5 files changed, 26 insertions, 11 deletions
diff --git a/build/all.gyp b/build/all.gyp
index 03d7fee..8a0910b 100644
--- a/build/all.gyp
+++ b/build/all.gyp
@@ -36,6 +36,7 @@
'../third_party/sqlite/sqlite.gyp:*',
'../third_party/WebKit/WebKit/chromium/WebKit.gyp:*',
'../third_party/zlib/zlib.gyp:*',
+ '../webkit/tools/pepper_test_plugin/pepper_test_plugin.gyp:*',
'../webkit/tools/test_shell/test_shell.gyp:*',
'../webkit/webkit.gyp:*',
'util/build_util.gyp:*',
@@ -55,7 +56,6 @@
['OS=="mac"', {
'dependencies': [
'../third_party/ocmock/ocmock.gyp:*',
- '../webkit/tools/pepper_test_plugin/pepper_test_plugin.gyp:*',
],
}],
['OS=="linux"', {
@@ -101,9 +101,6 @@
'../third_party/bspatch/bspatch.gyp:*',
'../third_party/gles2_book/gles2_book.gyp:*',
'../tools/memory_watcher/memory_watcher.gyp:*',
- # As of now, build machines do not have GL headers to compile this
- # TODO(sehr,brettw, neb): Make this unconditional.
- '../webkit/tools/pepper_test_plugin/pepper_test_plugin.gyp:*',
],
}, {
'dependencies': [
diff --git a/build/common.gypi b/build/common.gypi
index 819515c..76af9cc 100644
--- a/build/common.gypi
+++ b/build/common.gypi
@@ -187,6 +187,8 @@
# Enable TCMalloc.
'linux_use_tcmalloc%': 0,
+ 'linux_fpic%': 0,
+
# Set to select the Title Case versions of strings in GRD files.
'use_titlecase_in_grd_files%': 0,
@@ -806,6 +808,11 @@
}],
],
}],
+ ['linux_fpic==1', {
+ 'cflags': [
+ '-fPIC',
+ ],
+ }],
['sysroot!=""', {
'target_conditions': [
['_toolset=="target"', {
diff --git a/gpu/pgl/pgl.cc b/gpu/pgl/pgl.cc
index 6f24a31..2fd3d8b 100644
--- a/gpu/pgl/pgl.cc
+++ b/gpu/pgl/pgl.cc
@@ -152,7 +152,7 @@ PGLBoolean pglDestroyContext(PGLContext pgl_context) {
if (!pgl_context)
return false;
- delete pgl_context;
+ delete static_cast<PGLContextImpl*>(pgl_context);
return true;
}
diff --git a/webkit/tools/pepper_test_plugin/pepper_test_plugin.gyp b/webkit/tools/pepper_test_plugin/pepper_test_plugin.gyp
index 1cdc8d3..f36abf7 100644
--- a/webkit/tools/pepper_test_plugin/pepper_test_plugin.gyp
+++ b/webkit/tools/pepper_test_plugin/pepper_test_plugin.gyp
@@ -30,10 +30,6 @@
'product_name': 'pepper_test_plugin',
'type': 'shared_library',
'msvs_guid': 'EE00E36E-9E8C-4DFB-925E-FBE32CEDB91A',
- 'dependencies': [
- '../../../gpu/gpu.gyp:gles2_demo_lib',
- '../../../gpu/gpu.gyp:pgl',
- ],
'sources': [
'pepper_test_plugin.def',
'pepper_test_plugin.rc',
@@ -49,7 +45,14 @@
],
},
}],
- ['OS=="linux" and (target_arch=="x64" or target_arch=="arm")', {
+ ['OS=="linux"', {
+ 'type': 'shared_library',
+ 'cflags': ['-fvisibility=hidden'],
+ # -gstabs, used in the official builds, causes an ICE. Simply remove
+ # it.
+ 'cflags!': ['-gstabs'],
+ }],
+ ['OS=="linux" and (target_arch=="x64" or target_arch=="arm") and linux_fpic!=1', {
'product_name': 'pepper_test_plugin',
# Shared libraries need -fPIC on x86-64
'cflags': ['-fPIC'],
@@ -59,6 +62,14 @@
'../../../base/base.gyp:base',
'../../../skia/skia.gyp:skia',
],
+ 'conditions': [
+ ['OS!="mac"', {
+ 'dependencies': [
+ '../../../gpu/gpu.gyp:gles2_demo_lib',
+ '../../../gpu/gpu.gyp:pgl',
+ ],
+ }],
+ ]
}],
['OS=="mac"', {
'type': 'loadable_module',
diff --git a/webkit/tools/pepper_test_plugin/plugin_object.cc b/webkit/tools/pepper_test_plugin/plugin_object.cc
index aa6422d..7738a8cc 100644
--- a/webkit/tools/pepper_test_plugin/plugin_object.cc
+++ b/webkit/tools/pepper_test_plugin/plugin_object.cc
@@ -35,7 +35,7 @@
#else
#include "base/logging.h"
#include "gpu/command_buffer/client/gles2_demo_cc.h"
-#include "gpu/command_buffer/common/gles2/gl2.h"
+#include "gpu/command_buffer/common/GLES2/gl2.h"
#include "third_party/skia/include/core/SkBitmap.h"
#include "third_party/skia/include/core/SkCanvas.h"
#include "third_party/skia/include/effects/SkGradientShader.h"