: Update Config files to build on efl Linux port.

2013-03-25  Siba Samal  <sibasamal@gmail.com>

        Update Config files to build on efl Linux port.
        Issue #196

        Reviewed by NOBODY (OOPS!).

        * Source/cmake/FindOpenCL.cmake: Added.
        * Source/cmake/OptionsEfl.cmake:
        * Source/cmake/WebKitFeatures.cmake:
        * Source/cmakeconfig.h.cmake:

Source/WebCore:

2013-03-25  Siba Samal  <sibasamal@gmail.com>

        Update Config files to build on efl Linux port.
        Issue #196

        Reviewed by NOBODY (OOPS!).

        No new tests (OOPS!).

        * CMakeLists.txt:
        * PlatformEfl.cmake:
        * UseJSC.cmake:
2013-03-25  Antonio Gomes  <a1.gomes@sisa.samsung.com>

        Fix Nbody,Deform,Hello demos
        Issue #197

        Reviewed by Igor.

        Should have been checked in together with
        7a9db06 (issue #193).

        Examples:
        * WebCL/Deform/SimCL.js:
        (SimulateCL):
        * WebCL/Hello/index.html:
        * WebCL/Nbody/SimCL.js:
        (SimulateCL):

        Source/WebCore:
        * Modules/webcl/WebCLKernelArgumentTypes.idl:
2013-03-25  Antonio Gomes  <a1.gomes@sisa.samsung.com>

        No need to re-declare constants in WebCLKernelArgumentTypes.h
        Issue #198

        Reviewed by Igor.

        No need to redeclare them here, as we are
        using the direct ComputeContext counterpart.

        * Modules/webcl/WebCLKernelArgumentTypes.h:
        (WebCLKernelArgumentTypes):
        * Modules/webcl/WebCLKernelArgumentTypes.idl:
2013-03-26  Igor Oliveira  <igor.o@sisa.samsung.com>

        Implement WebCLObject
        Issue #199

        Create a new class called WebCLObject. The new class manages the
        WebCL platform objects(e.g platform object destruction).

        Reviewed by Antonio.

        * Modules/webcl/WebCLBuffer.cpp:
        (WebCore::WebCLBuffer::createSubBuffer):
        * Modules/webcl/WebCLBuffer.h:
        (WebCLBuffer):
        * Modules/webcl/WebCLCommandQueue.cpp:
        (WebCore::WebCLCommandQueue::~WebCLCommandQueue):
        (WebCore::WebCLCommandQueue::create):
        (WebCore::WebCLCommandQueue::WebCLCommandQueue):
        (WebCore::WebCLCommandQueue::getInfo):
        (WebCore::WebCLCommandQueue::enqueueWriteBufferBase):
        (WebCore::WebCLCommandQueue::enqueueWriteBufferRect):
        (WebCore::WebCLCommandQueue::enqueueReadBuffer):
        (WebCore::WebCLCommandQueue::enqueueReadImage):
        (WebCore::WebCLCommandQueue::enqueueReadBufferRect):
        (WebCore::WebCLCommandQueue::enqueueNDRangeKernel):
        (WebCore::WebCLCommandQueue::finish):
        (WebCore::WebCLCommandQueue::flush):
        (WebCore::WebCLCommandQueue::enqueueWriteImage):
        (WebCore::WebCLCommandQueue::enqueueAcquireGLObjects):
        (WebCore::WebCLCommandQueue::enqueueReleaseGLObjects):
        (WebCore::WebCLCommandQueue::enqueueCopyImage):
        (WebCore::WebCLCommandQueue::enqueueCopyImageToBuffer):
        (WebCore::WebCLCommandQueue::enqueueCopyBufferToImage):
        (WebCore::WebCLCommandQueue::enqueueCopyBuffer):
        (WebCore::WebCLCommandQueue::enqueueCopyBufferRect):
        (WebCore::WebCLCommandQueue::enqueueBarrier):
        (WebCore::WebCLCommandQueue::enqueueMarker):
        (WebCore::WebCLCommandQueue::enqueueTask):
        (WebCore::WebCLCommandQueue::releasePlatformObjectImpl):
        (WebCore):
        * Modules/webcl/WebCLCommandQueue.h:
        (WebCLCommandQueue):
        * Modules/webcl/WebCLContext.cpp:
        (WebCore::WebCLContext::~WebCLContext):
        (WebCore::WebCLContext::create):
        (WebCore::WebCLContext::WebCLContext):
        (WebCore):
        (WebCore::WebCLContext::getInfo):
        (WebCore::WebCLContext::createCommandQueue):
        (WebCore::WebCLContext::createProgram):
        (WebCore::WebCLContext::createBuffer):
        (WebCore::WebCLContext::createImage2DBase):
        (WebCore::WebCLContext::createImage):
        (WebCore::WebCLContext::createFromGLBuffer):
        (WebCore::WebCLContext::createFromGLRenderBuffer):
        (WebCore::WebCLContext::createSampler):
        (WebCore::WebCLContext::createFromGLTexture2D):
        (WebCore::WebCLContext::createUserEvent):
        (WebCore::WebCLContext::getSupportedImageFormats):
        (WebCore::WebCLContext::releasePlatformObjectImpl):
        * Modules/webcl/WebCLContext.h:
        (WebCore):
        (WebCore::WebCLContext::computeContext):
        (WebCLContext):
        * Modules/webcl/WebCLContextProperties.cpp:
        (WebCore::WebCLContextProperties::computeContextProperties):
        * Modules/webcl/WebCLDevice.cpp:
        (WebCore::WebCLDevice::WebCLDevice):
        (WebCore::WebCLDevice::getInfo):
        * Modules/webcl/WebCLDevice.h:
        (WebCLDevice):
        * Modules/webcl/WebCLImage.cpp:
        (WebCore::WebCLImage::getGLtextureInfo):
        (WebCore::WebCLImage::getInfo):
        * Modules/webcl/WebCLImage.h:
        * Modules/webcl/WebCLInputChecker.h:
        (WebCLInputChecker):
        (WebCore::WebCLInputChecker::validateWebCLObject):
        * Modules/webcl/WebCLKernel.cpp:
        (WebCore::WebCLKernel::~WebCLKernel):
        (WebCore::WebCLKernel::create):
        (WebCore::WebCLKernel::createKernelsInProgram):
        (WebCore::WebCLKernel::WebCLKernel):
        (WebCore::WebCLKernel::getInfo):
        (WebCore::WebCLKernel::getWorkGroupInfo):
        (WebCore::WebCLKernel::setArg):
        (WebCore::WebCLKernel::releasePlatformObjectImpl):
        * Modules/webcl/WebCLKernel.h:
        (WebCLKernel):
        * Modules/webcl/WebCLMemoryObject.cpp:
        (WebCore::WebCLMemoryObject::~WebCLMemoryObject):
        (WebCore::WebCLMemoryObject::WebCLMemoryObject):
        (WebCore::WebCLMemoryObject::getGLObjectInfo):
        (WebCore::WebCLMemoryObject::getInfo):
        (WebCore::WebCLMemoryObject::releasePlatformObjectImpl):
        * Modules/webcl/WebCLMemoryObject.h:
        (WebCLMemoryObject):
        * Modules/webcl/WebCLObject.h: Copied from Source/WebCore/Modules/webcl/WebCLBuffer.h.
        (WebCore):
        (WebCLObject):
        (WebCore::WebCLObject::~WebCLObject):
        (WebCore::WebCLObject::platformObject):
        (WebCore::WebCLObject::releasePlatformObject):
        (WebCore::WebCLObject::WebCLObject):
        (WebCore::WebCLObject::releasePlatformObjectImpl):
        * Modules/webcl/WebCLPlatform.cpp:
        (WebCore::WebCLPlatform::WebCLPlatform):
        (WebCore::WebCLPlatform::getInfo):
        (WebCore::WebCLPlatform::getDevices):
        * Modules/webcl/WebCLPlatform.h:
        (WebCLPlatform):
        * Modules/webcl/WebCLProgram.cpp:
        (WebCore::WebCLProgram::~WebCLProgram):
        (WebCore::WebCLProgram::WebCLProgram):
        (WebCore::WebCLProgram::getInfo):
        (WebCore::WebCLProgram::getBuildInfo):
        (WebCore::WebCLProgram::createKernel):
        (WebCore::WebCLProgram::createKernelsInProgram):
        (WebCore::WebCLProgram::build):
        (WebCore::WebCLProgram::releaseProgram):
        (WebCore::WebCLProgram::releasePlatformObjectImpl):
        (WebCore):
        * Modules/webcl/WebCLProgram.h:
        (WebCLProgram):
        * Modules/webcl/WebCLProgram.idl:
        * Modules/webcl/WebCLSampler.cpp:
        (WebCore::WebCLSampler::~WebCLSampler):
        (WebCore::WebCLSampler::WebCLSampler):
        (WebCore::WebCLSampler::getInfo):
        (WebCore::WebCLSampler::releasePlatformObjectImpl):
        * Modules/webcl/WebCLSampler.h:
        (WebCLSampler):
        * WebCore.xcodeproj/project.pbxproj:
        * platform/ComputeContext.h:
        (ComputeContext):
        (WebCore::ComputeContext::context):
        * platform/opencl/ComputeContextCL.cpp:
2013-04-05  Igor Oliveira  <igor.o@sisa.samsung.com>

        Make ComputeContext::getInfo methods more c++'ish
        Issue #208

        Use C++ templates to make getInfo API nicer.

        Reviewed by Antonio Gomes.

        * Modules/webcl/WebCLCommandQueue.cpp:
        (WebCore::WebCLCommandQueue::getInfo):
        * Modules/webcl/WebCLDevice.cpp:
        (WebCore::WebCLDevice::getInfo):
        * Modules/webcl/WebCLEvent.cpp:
        (WebCore::WebCLEvent::getInfo):
        (WebCore::WebCLEvent::getProfilingInfo):
        * Modules/webcl/WebCLImage.cpp:
        (WebCore::WebCLImage::getGLtextureInfo):
        * Modules/webcl/WebCLKernel.cpp:
        (WebCore::WebCLKernel::createKernelsInProgram):
        (WebCore::WebCLKernel::getInfo):
        (WebCore::WebCLKernel::setArg):
        * Modules/webcl/WebCLMemoryObject.cpp:
        (WebCore::WebCLMemoryObject::getInfo):
        * WebCore.xcodeproj/project.pbxproj:
        * platform/ComputeContext.h:
        (WebCore::ComputeContext::getDeviceInfo):
        (ComputeContext):
        (WebCore::ComputeContext::getPlatformInfo):
        (WebCore::ComputeContext::getProgramInfo):
        (WebCore::ComputeContext::getCommandQueueInfo):
        (WebCore::ComputeContext::getEventInfo):
        (WebCore::ComputeContext::getEventProfilingInfo):
        (WebCore::ComputeContext::getImageInfo):
        (WebCore::ComputeContext::getGLTextureInfo):
        (WebCore::ComputeContext::getKernelInfo):
        (WebCore::ComputeContext::getSamplerInfo):
        (WebCore::ComputeContext::getMemoryObjectInfo):
        * platform/ComputeTypesTraits.h: Added.
        (WebCore):
        (Functor):
        (WebCore::Functor::operator()):
        (WebCore::ComputeInfo::get):
        (WebCore::getInfoHelper):
        * platform/opencl/ComputeContextCL.cpp:
        (WebCore::ComputeContext::getDeviceInfoBase):
        (WebCore::ComputeContext::getPlatformInfoBase):
        (WebCore::ComputeContext::getProgramInfoBase):
        (WebCore::ComputeContext::getCommandQueueInfoBase):
        (WebCore::ComputeContext::getEventInfoBase):
        (WebCore::ComputeContext::getEventProfilingInfoBase):
        (WebCore::ComputeContext::getImageInfoBase):
        (WebCore::ComputeContext::getGLTextureInfoBase):
        (WebCore::ComputeContext::getKernelInfoBase):
        (WebCore::ComputeContext::getWorkGroupInfo):
        (WebCore::ComputeContext::getSamplerInfoBase):
        (WebCore):
        (WebCore::ComputeContext::getMemoryObjectInfoBase):
2013-04-01  Sharath Kamath  <kamath.sharath@gmail.com>

        Part 1 - Update WebCL Examples with latest code.
        Issue #203

        Updating Nbody and hello examples.

        Reviewed by Antonio/Simon.

        * WebCL/Hello/index.html:
        * WebCL/Nbody/Controller.js:
        (UserData):
        (onLoad.setInterval):
        (ShowFLOPS):
        (InitParticleState):
        (MainLoop):
        (Draw):
        (SetSimMode):
        (SetDrawMode):
        (ToggleDrawMode):
        (ToggleSimMode):
        (ToggleSimRunning):
        (Toggle3D):
        * WebCL/Nbody/SimCL.js:
        (getKernel):
        (InitCL):
        (SimulateCL):
        (GetWorkGroupSize):
        * WebCL/Nbody/index.html:
2013-04-04  Sharath Kamath  <kamath.sharath@gmail.com>

        Part 2 - Update WebCL Examples with latest code.
        Issue #203

        Update Deform example with latest changes.

        Reviewed by Simon.

        * WebCL/Deform/SimCL.js:
        (InitCL):
        (SimulateCL):
        * WebCL/Deform/index.html:
2013-03-27  Sharath Kamath  <kamath.sharath@gmail.com>

        ComputeContext::createImage2D throws exception on OpenCL1.2
        Issue #201

        As c style structures do not get initialised with 0, we need
        to initialize cl_image_desc object to default values.

        Reviewed by Antonio.

        No new tests (OOPS!).

        * platform/opencl/ComputeContextCL.cpp:
        (WebCore::ComputeContext::createImage2D): Initialize all values to 0.
        Explicit values can be set individually as need arises.
2013-04-08  Igor Oliveira  <igor.o@sisa.samsung.com>

        Fix WebCLPlatform::getDevices
        Issue #213

        WebCLPlatform::getDevices implementation is wrong. It is always
        returning the DEVICE_TYPE_DEFAULT.

        Reviewed by Antonio Gomes.

        * Modules/webcl/WebCL.cpp:
        (WebCore::WebCL::defaultProperties):
        (WebCore::WebCL::createContext):
        * Modules/webcl/WebCLInputChecker.cpp:
        (WebCore::WebCLInputChecker::isValidDeviceType):
        (WebCLInputChecker):
        * Modules/webcl/WebCLInputChecker.h:
        (WebCLInputChecker):
        * Modules/webcl/WebCLPlatform.cpp:
        (WebCore::WebCLPlatform::getDevices):
        * Modules/webcl/WebCLPlatform.h:
        (WebCLPlatform):
        * Modules/webcl/WebCLPlatform.idl:
2013-04-08  Igor Oliveira  <igor.o@sisa.samsung.com>

        WebCLContext - getInfo
        Issue #214

        Instead of kTypeUnsignedInt, When the ctor is an unsigned long,
        We need to use kTypeUnsignedLong.

        Reviewed by Antonio Gomes.

        * Modules/webcl/WebCLGetInfo.cpp:
        (WebCore::WebCLGetInfo::WebCLGetInfo):
        (WebCore::WebCLGetInfo::getWebCLIntArray):
2013-04-05  Antonio Gomes  <a1.gomes@sisa.samsung.com>

        Lots of clean ups all over.

        Unreviewed driven-by changes.

        * Modules/webcl/WebCL.cpp:
        (WebCore::WebCL::create):
        (WebCore::WebCL::waitForEvents):
        * Modules/webcl/WebCL.h:
        (WebCL):
        (WebCore::WebCL::~WebCL):
        * Modules/webcl/WebCLBuffer.cpp:
        * Modules/webcl/WebCLBuffer.h:
        * Modules/webcl/WebCLBuffer.idl:
        * Modules/webcl/WebCLCommandQueue.cpp:
        * Modules/webcl/WebCLCommandQueue.h:
        (WebCore):
        * Modules/webcl/WebCLCommandQueue.idl:
        * Modules/webcl/WebCLContext.cpp:
        * Modules/webcl/WebCLContext.h:
        (WebCLContext):
        (WebCore::WebCLContext::createBuffer):
        (WebCore::WebCLContext::createCommandQueue):
        * Modules/webcl/WebCLContextProperties.cpp:
        (WebCore::WebCLContextProperties::WebCLContextProperties):
        (WebCore::WebCLContextProperties::platform):
        (WebCore::WebCLContextProperties::setPlatform):
        (WebCore::WebCLContextProperties::devices):
        (WebCore::WebCLContextProperties::deviceType):
        (WebCore::WebCLContextProperties::setDeviceType):
        (WebCore::WebCLContextProperties::shareGroup):
        (WebCore::WebCLContextProperties::setShareGroup):
        (WebCore::WebCLContextProperties::hint):
        (WebCore::WebCLContextProperties::setHint):
        (WebCore::WebCLContextProperties::computeContextProperties):
        * Modules/webcl/WebCLContextProperties.h:
        (WebCLContextProperties):
        * Modules/webcl/WebCLGLObjectInfo.cpp:
        * Modules/webcl/WebCLGLObjectInfo.h:
        * Modules/webcl/WebCLGetInfo.h:
        * Modules/webcl/WebCLImage.h:
        (WebCLImage):
        (WebCore::WebCLImage::WebCLImage):
        * Modules/webcl/WebCLImageDescriptor.cpp:
        (WebCore::WebCLImageDescriptor::create):
        (WebCore):
        (WebCore::WebCLImageDescriptor::WebCLImageDescriptor):
        (WebCore::WebCLImageDescriptor::setChannelOrder):
        (WebCore::WebCLImageDescriptor::channelOrder):
        (WebCore::WebCLImageDescriptor::setChannelType):
        (WebCore::WebCLImageDescriptor::channelType):
        (WebCore::WebCLImageDescriptor::setWidth):
        (WebCore::WebCLImageDescriptor::width):
        (WebCore::WebCLImageDescriptor::setHeight):
        (WebCore::WebCLImageDescriptor::height):
        (WebCore::WebCLImageDescriptor::setRowPitch):
        (WebCore::WebCLImageDescriptor::rowPitch):
        * Modules/webcl/WebCLImageDescriptor.h:
        * Modules/webcl/WebCLInputChecker.cpp:
        * Modules/webcl/WebCLInputChecker.h:
        * Modules/webcl/WebCLKernel.h:
        * Modules/webcl/WebCLKernel.idl:
        * Modules/webcl/WebCLKernelTypes.cpp:
        * Modules/webcl/WebCLMemoryObject.h:
        * Modules/webcl/WebCLMemoryObject.idl:
        * Modules/webcl/WebCLObject.h:
        * Modules/webcl/WebCLPlatform.h:
        * Modules/webcl/WebCLSampler.h:
        * bindings/js/JSWebCLCustom.cpp:
        * bindings/js/JSWebCLCustom.h:
        * platform/opencl/ComputeContextCL.cpp:
        (WebCore::ComputeContext::createCommandQueue):
2013-04-07  Antonio Gomes  <a1.gomes@sisa.samsung.com>

        Implement CL-GL as an extension - part 1
        Issue #210

        Reviewed by Igor.

        It was created templates to handle the:

        1) Parsing of WebCL{GL}ContextProperties and context creation for JSWebCL{GL}Custom::createContext.
        2) Ground work for the creation of WebCL{GL}Context objects in WebCL{GL}::createContext.
        3) WebCL{GL}Context object actual creation in WebCL{GL}Context::create.
        4) Ground work for the creation of WebCL{GL}CommandQueue objects in WebCL{GL}Context::createCommandQueue
        5) WebCL{GL}CommandQueue object actual creation in WebCL{GL}CommandQueue::create.

        * Modules/webcl/WebCL.cpp:
        (WebCore::WebCL::createContext):
        * Modules/webcl/WebCL.h:
        (WebCore):
        (WebCore::WebCL::createContextBase):
        * Modules/webcl/WebCLCommandQueue.cpp:
        (WebCore::WebCLCommandQueue::create):
        * Modules/webcl/WebCLCommandQueue.h:
        (WebCore::WebCLCommandQueue::createBase):
        * Modules/webcl/WebCLContext.cpp:
        (WebCore::WebCLContext::create):
        (WebCore::WebCLContext::WebCLContext):
        (WebCore::WebCLContext::createCommandQueue):
        * Modules/webcl/WebCLContext.h:
        (WebCore):
        (WebCLContext):
        (WebCore::WebCLContext::createBase):
        (WebCore::WebCLContext::createCommandQueueBase):
        * bindings/js/JSWebCLCustom.cpp:
        (WebCore::JSWebCL::createContext):
        * bindings/js/JSWebCLCustom.h:
        (WebCore):
        (WebCore::parsePropertiesAndCreateContext):

Conflicts:
	Source/WebCore/Modules/webcl/WebCL.cpp
2013-04-08  Antonio Gomes  <a1.gomes@sisa.samsung.com>

        Implement CL-GL as an extension - part2
        Issue #210

        Reviewed by Igor.

        Removal of current CL-GL interoperability implementation,
        to implement is an an extension.

        * Modules/webcl/WebCL.idl:
        Removed CL-GL constants to be placed in WebCLGL.idl.

        * Modules/webcl/WebCLBuffer.cpp:
        * Modules/webcl/WebCLBuffer.h:
        Removed createFromGLBuffer method implementation, to be
        placed in WebCLGLBuffer.

        * Modules/webcl/WebCLCommandQueue.cpp:
        * Modules/webcl/WebCLCommandQueue.h:
        * Modules/webcl/WebCLCommandQueue.idl:
        Removed both enqueueAcquireGLObjects and enqueueReleaseGLObjects
        implementations, to be placed in WebCLGLCommandQueue.

        * Modules/webcl/WebCLContext.cpp:
        * Modules/webcl/WebCLContext.h:
        * Modules/webcl/WebCLContext.idl:
        Removed createFromGLBuffer, createFromGLRenderBuffer and createFromGLTexture2D
        method implementations, to be placed in WebCLGLContext.

        * Modules/webcl/WebCLImage.cpp:
        * Modules/webcl/WebCLImage.h:
        (WebCLImage):
        * Modules/webcl/WebCLImage.idl:
        Removed getGLtextureInfo implementation, to be placed in WebCLGLImage.
        Removed obsolete ::create overload and default ctor.

        * Modules/webcl/WebCLMemoryObject.cpp:
        * Modules/webcl/WebCLMemoryObject.h:
        * Modules/webcl/WebCLMemoryObject.idl:
        Removed getGLObjectInfo implementation, to be placed in WebCLGLBuffer.
2013-04-08  Antonio Gomes  <a1.gomes@sisa.samsung.com>

        Implement CL-GL as an extension - part 3
        Issue #120

        Reviewed by Igor.

        * DerivedSources.make:
        Added all new WebCLGL*.idl files to get processed.

        * WebCore.xcodeproj/project.pbxproj:
        Added the newly .cpp/.h/.idl implemented and
        derivated files to XCode.

        * Modules/webcl/WebCLExtension.h: Added.
        Base class to be inherited by all WebCL extensions.

        * Modules/webcl/WebCLGL.cpp: Added.
        (WebCore::WebCLGL::create):
        (WebCore::WebCLGL::~WebCLGL):
        (WebCore::WebCLGL::getName): Implements the pure virtual
        method of WebCLExtension.
        (WebCore::WebCLGL::createContext):
        * Modules/webcl/WebCLGL.h: Added.
        * Modules/webcl/WebCLGL.idl: Added.
        Inherits from WebCL, and it is the base class
        to acquire new WebCLGLContext objects.

        It makes use of the template 'createContextBase' in WebCL.h
        in order to get itself created.

        WebCLGL.idl now holds all XXXGLXXX constant values previously
        held by WebCL.idl, e.g. INVALID_GL_OBJECT.

        * Modules/webcl/WebCLGLBuffer.cpp: Added.
        (WebCore::WebCLGLBuffer::create):
        (WebCore::WebCLGLBuffer::WebCLGLBuffer):
        (WebCore::WebCLGLBuffer::getGLObjectInfo):
        * Modules/webcl/WebCLGLBuffer.h: Added.
        (WebCore::WebCLGLBuffer::~WebCLGLBuffer):
        * Modules/webcl/WebCLGLBuffer.idl: Added.
        Inherits from WebCLBuffer and extends it to provide the
        functionality needed by CL-GL interop. Code was moved from
        WebCLBuffer.

        * Modules/webcl/WebCLGLCommandQueue.cpp: Added.
        (WebCore::WebCLGLCommandQueue::create):
        (WebCore::WebCLGLCommandQueue::enqueueAcquireGLObjects):
        (WebCore::WebCLGLCommandQueue::enqueueReleaseGLObjects):
        * Modules/webcl/WebCLGLCommandQueue.h: Added.
        (WebCore::WebCLGLCommandQueue::~WebCLGLCommandQueue):
        (WebCore::WebCLGLCommandQueue::enqueueAcquireGLObjects):
        (WebCore::WebCLGLCommandQueue::enqueueReleaseGLObjects):
        (WebCore::WebCLGLCommandQueue::WebCLGLCommandQueue):
        * Modules/webcl/WebCLGLCommandQueue.idl: Added.
        Inherits from WebCLCommandQueue class, and extends it to
        provide the funcionality needed by CL-GL interop. Code was
        moved from WebCLCommandQueue.

        It makes use of the template 'createBase' in order to get itself
        created.

        * Modules/webcl/WebCLGLContext.cpp: Added.
        (WebCore::WebCLGLContext::create):
        (WebCore::WebCLGLContext::WebCLGLContext):
        (WebCore::WebCLGLContext::createCommandQueue):
        (WebCore::WebCLGLContext::createFromGLBuffer):
        (WebCore::WebCLGLContext::createFromGLRenderBuffer):
        (WebCore::WebCLGLContext::createFromGLTexture2D):
        * Modules/webcl/WebCLGLContext.h: Added.
        (WebCLGLContext):
        (WebCore::WebCLGLContext::~WebCLGLContext):
        (WebCore::WebCLGLContext::createCommandQueue):
        * Modules/webcl/WebCLGLContext.idl: Added.
        Inherits from WebCLContext class, and extends it to
        provide the funcionality needed by CL-GL interop. Code was
        moved from WebCLConext.

        It makes use of the templates 'createBase' and 'createCommandQueueBase'
        in order to get itself and command queue objects created respectively.

        * Modules/webcl/WebCLGLImage.cpp: Added.
        (WebCore::WebCLGLImage::create):
        (WebCore::WebCLGLImage::WebCLGLImage):
        (WebCore::WebCLGLImage::getGLTextureInfo):
        * Modules/webcl/WebCLGLImage.h: Added.
        (WebCore::WebCLGLImage::~WebCLGLImage):
        * Modules/webcl/WebCLGLImage.idl: Added.

        * bindings/js/JSWebCLGLCustom.cpp: Added.
        (WebCore::JSWebCLGL::createContext):
        Directly call the template 'parsePropertiesAndCreateContext'
        in JSWebCLCustom.h to get its creation process started.
2013-04-09  Antonio Gomes  <a1.gomes@sisa.samsung.com>

        Implement CL-GL as an extension - part 4
        Issue #210

        Reviewed by Igor.

        Adjust Nbody and Deform to run CL-GL extension.

        * WebCL/Deform/SimCL.js:
        (InitCL):
        * WebCL/Nbody/SimCL.js:
        (InitCL):
2013-04-12  Antonio Gomes  <a1.gomes@sisa.samsung.com>

        Remove unneeded WebCLImage ctor.
        Issue #217

        Reviewed by Igor.

        It was needed before CL-GL interop was an
        WebCL extension.

        * Modules/webcl/WebCLImage.h:
        (WebCLImage):
2013-04-12  Antonio Gomes  <a1.gomes@sisa.samsung.com>

        Implement CL-GL as an extension (part 5)
        Issue #210

        Reviewed by Igor.

        Patch adds support to the new WebCLGLContextProperties interface;
        more specifically to the 'sharedContext' attribute.

        Basically, instead of creating a new class (named WebCLGLContextProperties)
        that would inherit from WebCLContextProperties, the 'sharedContext'
        attribute was added to the existing WebCLContextProperties class.
        WebCLContextProperties' 'shareGroup' attribute was removed.

        Off of WebCLContextProperties, both JSWebCLContextProperties and
        JSWebCLGLContextProperties can be wrapped (in a follow up patch).

        The 'parsePropertiesAndCreateContext' template was taught to ignore
        parsing this property if a WebCLContext is being created.
        In case of a WebCLGLContext creation, it gets parsed.

        A static method was also added to ComputeContext, to host platform
        specific code to handle CL-GL interop set up.

        Also, in order to generate a WebGLRenderingContext from a JSValue,
        we also extended WebGLRenderingContext.idl with 'JSGenerateToNativeObject'.

        Examples:
        * WebCL/Nbody/SimCL.js:
        (InitCL):

        Source/WebCore:
        * DerivedSources.make:
        * Modules/webcl/WebCL.cpp:
        (WebCore::WebCL::defaultProperties):
        * Modules/webcl/WebCLContextProperties.cpp:
        (WebCore::WebCLContextProperties::create):
        (WebCore::WebCLContextProperties::WebCLContextProperties):
        (WebCore::WebCLContextProperties::setWebGLRenderingContext):
        (WebCore::WebCLContextProperties::computeContextProperties):
        * Modules/webcl/WebCLContextProperties.h:
        (WebCore):
        (WebCLContextProperties):
        * Modules/webcl/WebCLContextProperties.idl:
        * WebCore.xcodeproj/project.pbxproj:
        * bindings/js/JSWebCLCustom.cpp:
        (WebCore::JSWebCL::createContext):
        * bindings/js/JSWebCLCustom.h:
        (WebCore::parsePropertiesAndCreateContext):
        * html/canvas/WebGLRenderingContext.idl:
        * platform/ComputeContext.h:
        (ComputeContext):
        * platform/opencl/ComputeContextCL.cpp:
        (WebCore::ComputeContext::populatePropertiesForInteroperabilityWithGL):
        (WebCore):
2013-04-12  Antonio Gomes  <a1.gomes@sisa.samsung.com>

        update opencl includes
        Issue #175

        Reviewed by Igor.

        All direct OpenCL includes should be
        removed from Modules/webcl/*

        * Modules/webcl/WebCLContext.h:
        * Modules/webcl/WebCLGLObjectInfo.h:
        * Modules/webcl/WebCLImage.h:
        * Modules/webcl/WebCLImageDescriptor.h:
        (WebCLImageDescriptor):
        * Modules/webcl/WebCLKernel.h:
        * Modules/webcl/WebCLPlatform.h:
2013-04-12  Antonio Gomes  <a1.gomes@sisa.samsung.com>

        Unreviewed build fix after 73cd4885

        * Modules/webcl/WebCLGLContextProperties.idl: Added.
2013-04-16  Antonio Gomes  <a1.gomes@sisa.samsung.com>

        Another unreviewed debug build fix after 73cd4885

        * Modules/webcl/WebCLContextProperties.cpp:
        (WebCore::WebCLContextProperties::create):