summaryrefslogtreecommitdiffstats
path: root/build
diff options
context:
space:
mode:
authorapatrick@google.com <apatrick@google.com@0039d316-1c4b-4281-b951-d872f2087c98>2009-12-22 23:28:15 +0000
committerapatrick@google.com <apatrick@google.com@0039d316-1c4b-4281-b951-d872f2087c98>2009-12-22 23:28:15 +0000
commit7477ea6f6a173b586622fd276433a346760ffbf4 (patch)
tree678229a49ae5c4bb1a54a61374466cdddf57db59 /build
parente4f7cec0a45a803faf00875a070090b165ff1fc5 (diff)
downloadchromium_src-7477ea6f6a173b586622fd276433a346760ffbf4.zip
chromium_src-7477ea6f6a173b586622fd276433a346760ffbf4.tar.gz
chromium_src-7477ea6f6a173b586622fd276433a346760ffbf4.tar.bz2
Added Pepper 3D device that instantiates the GPU plugin and sends GLES2 commands to it via a command buffer.
Added API for managing buffers to Pepper 3D device. Removed DCHECK from WebPluginImpl::SetWindow that checks against a windowless plugin being given a window handle. Please check this! Now an initially windowless plugin instance gets a handle when it requests a Pepper 3D context. Perhaps the window handle should be concealed from the underlying plugin isntance. Removed enable_gpu gyp variable and C macro. GPU code is always built on windows but not mac or linux. It is enabled at runtime with the --enable-gpu-plugin switch. Redesigned CommandBuffer interface so it exposes shared memory through a Buffer. This was necessary because Pepper has no notion of shared memory handles. The Buffer exposes the shared memory as both a handle (through base::SharedMemory) and the mapped address and size. Refactored CommandBufferEngine so mapped shared memory addresses and sizes are returned with a single call rather than two separate calls. Added 3D demo to pepper test plugin. TEST=try servers BUG=none Review URL: http://codereview.chromium.org/367002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@35185 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'build')
-rw-r--r--build/all.gyp6
-rw-r--r--build/common.gypi14
2 files changed, 9 insertions, 11 deletions
diff --git a/build/all.gyp b/build/all.gyp
index ebde11c..fde8461 100644
--- a/build/all.gyp
+++ b/build/all.gyp
@@ -51,11 +51,6 @@
'../chrome_frame/chrome_frame.gyp:*',
],
}],
- ['enable_gpu==1', {
- 'dependencies': [
- '../gpu/gpu.gyp:*',
- ],
- }],
['OS=="mac" or OS=="linux" or OS=="freebsd"', {
'dependencies': [
'../third_party/yasm/yasm.gyp:*#host',
@@ -100,6 +95,7 @@
'../chrome/app/locales/locales.gyp:*',
'../courgette/courgette.gyp:*',
'../gears/gears.gyp:*',
+ '../gpu/gpu.gyp:*',
'../rlz/rlz.gyp:*',
'../sandbox/sandbox.gyp:*',
'../third_party/bsdiff/bsdiff.gyp:*',
diff --git a/build/common.gypi b/build/common.gypi
index a8ef21a..1d4da45 100644
--- a/build/common.gypi
+++ b/build/common.gypi
@@ -126,7 +126,7 @@
# JavaScript engines.
'javascript_engine%': 'v8',
- # Although base/allocator lets you select a heap library via an
+ # Although base/allocator lets you select a heap library via an
# environment variable, the libcmt shim it uses sometimes gets in
# the way. To disable it entirely, and switch to normal msvcrt, do e.g.
# 'win_use_allocator_shim': 0,
@@ -327,9 +327,6 @@
['chromeos==1 or toolkit_views==1', {
'defines': ['OS_CHROMEOS=1'],
}],
- ['enable_gpu==1', {
- 'defines': ['ENABLE_GPU=1'],
- }],
['fastbuild!=0', {
'conditions': [
# Finally, for Windows, we simply turn on profiling.
@@ -355,6 +352,11 @@
}],
],
}],
+ ['OS=="win"', {
+ 'defines': [
+ 'ENABLE_GPU=1',
+ ],
+ }],
['coverage!=0', {
'conditions': [
['OS=="mac"', {
@@ -507,8 +509,8 @@
}],
['win_release_RuntimeLibrary==2', {
# Visual C++ 2008 barfs when building anything with /MD (msvcrt):
- # VC\include\typeinfo(139) : warning C4275: non dll-interface
- # class 'stdext::exception' used as base for dll-interface
+ # VC\include\typeinfo(139) : warning C4275: non dll-interface
+ # class 'stdext::exception' used as base for dll-interface
# class 'std::bad_cast'
'msvs_disabled_warnings': [4275],
}],