haikuwebkit/Source/WebCore/PlatformWinCairo.cmake

93 lines
2.4 KiB
CMake
Raw Permalink Normal View History

include(platform/Cairo.cmake)
include(platform/Curl.cmake)
include(platform/ImageDecoders.cmake)
[OpenSSL] Add stubs and build for Web Crypto https://bugs.webkit.org/show_bug.cgi?id=206449 Reviewed by Jiewen Tan. .: Enable Web Crypto as an experiment for WinCairo and PlayStation. Add the USE_OPENSSL definition to platforms using OpenSSL. * Source/cmake/OptionsFTW.cmake: * Source/cmake/OptionsPlayStation.cmake: * Source/cmake/OptionsWin.cmake: * Source/cmake/OptionsWinCairo.cmake: Source/WebCore: Add stubs for an OpenSSL implementation of Web Crypto. Add the associated CMake files for OpenSSL platforms and reference them on the platforms using OpenSSL. Tests will be enabled as functionality lands. * PlatformFTW.cmake: * PlatformPlayStation.cmake: * PlatformWinCairo.cmake: * crypto/keys/CryptoKeyEC.h: * crypto/keys/CryptoKeyRSA.h: * crypto/openssl/CryptoAlgorithmAES_CBCOpenSSL.cpp: Added. (WebCore::CryptoAlgorithmAES_CBC::platformEncrypt): (WebCore::CryptoAlgorithmAES_CBC::platformDecrypt): * crypto/openssl/CryptoAlgorithmAES_CFBOpenSSL.cpp: Added. (WebCore::CryptoAlgorithmAES_CFB::platformEncrypt): (WebCore::CryptoAlgorithmAES_CFB::platformDecrypt): * crypto/openssl/CryptoAlgorithmAES_CTROpenSSL.cpp: Added. (WebCore::CryptoAlgorithmAES_CTR::platformEncrypt): (WebCore::CryptoAlgorithmAES_CTR::platformDecrypt): * crypto/openssl/CryptoAlgorithmAES_GCMOpenSSL.cpp: Added. (WebCore::CryptoAlgorithmAES_GCM::platformEncrypt): (WebCore::CryptoAlgorithmAES_GCM::platformDecrypt): * crypto/openssl/CryptoAlgorithmAES_KWOpenSSL.cpp: Added. (WebCore::CryptoAlgorithmAES_KW::platformWrapKey): (WebCore::CryptoAlgorithmAES_KW::platformUnwrapKey): * crypto/openssl/CryptoAlgorithmECDHOpenSSL.cpp: Added. (WebCore::CryptoAlgorithmECDH::platformDeriveBits): * crypto/openssl/CryptoAlgorithmECDSAOpenSSL.cpp: Added. (WebCore::CryptoAlgorithmECDSA::platformSign): (WebCore::CryptoAlgorithmECDSA::platformVerify): * crypto/openssl/CryptoAlgorithmHKDFOpenSSL.cpp: Added. (WebCore::CryptoAlgorithmHKDF::platformDeriveBits): * crypto/openssl/CryptoAlgorithmHMACOpenSSL.cpp: Added. (WebCore::CryptoAlgorithmHMAC::platformSign): (WebCore::CryptoAlgorithmHMAC::platformVerify): * crypto/openssl/CryptoAlgorithmPBKDF2OpenSSL.cpp: Added. (WebCore::CryptoAlgorithmPBKDF2::platformDeriveBits): * crypto/openssl/CryptoAlgorithmRSAES_PKCS1_v1_5OpenSSL.cpp: Added. (WebCore::CryptoAlgorithmRSAES_PKCS1_v1_5::platformEncrypt): (WebCore::CryptoAlgorithmRSAES_PKCS1_v1_5::platformDecrypt): * crypto/openssl/CryptoAlgorithmRSASSA_PKCS1_v1_5OpenSSL.cpp: Added. (WebCore::CryptoAlgorithmRSASSA_PKCS1_v1_5::platformSign): (WebCore::CryptoAlgorithmRSASSA_PKCS1_v1_5::platformVerify): * crypto/openssl/CryptoAlgorithmRSA_OAEPOpenSSL.cpp: Added. (WebCore::CryptoAlgorithmRSA_OAEP::platformEncrypt): (WebCore::CryptoAlgorithmRSA_OAEP::platformDecrypt): * crypto/openssl/CryptoAlgorithmRSA_PSSOpenSSL.cpp: Added. (WebCore::CryptoAlgorithmRSA_PSS::platformSign): (WebCore::CryptoAlgorithmRSA_PSS::platformVerify): * crypto/openssl/CryptoAlgorithmRegistryOpenSSL.cpp: Added. (WebCore::CryptoAlgorithmRegistry::platformRegisterAlgorithms): * crypto/openssl/CryptoKeyECOpenSSL.cpp: Added. (WebCore::CryptoKeyEC::keySizeInBits const): (WebCore::CryptoKeyEC::platformSupportedCurve): (WebCore::CryptoKeyEC::platformGeneratePair): (WebCore::CryptoKeyEC::platformImportRaw): (WebCore::CryptoKeyEC::platformImportJWKPublic): (WebCore::CryptoKeyEC::platformImportJWKPrivate): (WebCore::CryptoKeyEC::platformImportSpki): (WebCore::CryptoKeyEC::platformImportPkcs8): (WebCore::CryptoKeyEC::platformExportRaw const): (WebCore::CryptoKeyEC::platformAddFieldElements const): (WebCore::CryptoKeyEC::platformExportSpki const): (WebCore::CryptoKeyEC::platformExportPkcs8 const): * crypto/openssl/CryptoKeyRSAOpenSSL.cpp: Added. (WebCore::CryptoKeyRSA::create): (WebCore::CryptoKeyRSA::isRestrictedToHash const): (WebCore::CryptoKeyRSA::keySizeInBits const): (WebCore::CryptoKeyRSA::generatePair): (WebCore::CryptoKeyRSA::importSpki): (WebCore::CryptoKeyRSA::importPkcs8): (WebCore::CryptoKeyRSA::exportSpki const): (WebCore::CryptoKeyRSA::exportPkcs8 const): (WebCore::CryptoKeyRSA::exportData const): * crypto/openssl/SerializedCryptoKeyWrapOpenSSL.cpp: Added. (WebCore::getDefaultWebCryptoMasterKey): (WebCore::wrapSerializedCryptoKey): (WebCore::unwrapSerializedCryptoKey): * platform/OpenSSL.cmake: Added. Canonical link: https://commits.webkit.org/219674@main git-svn-id: https://svn.webkit.org/repository/webkit/trunk@254958 268f45cc-cd09-0410-ab3c-d52691b4dbfc
2020-01-23 02:45:17 +00:00
include(platform/OpenSSL.cmake)
include(platform/TextureMapper.cmake)
[WebGPU] Add Dawn implementation skeleton https://bugs.webkit.org/show_bug.cgi?id=217982 Reviewed by Myles C. Maxfield. Add an empty implementation of the WebGPU types. This gets WebGPU built and linking using Dawn. * PlatformWinCairo.cmake: * platform/Dawn.cmake: Added. * platform/graphics/gpu/GPUPlatformTypes.h: * platform/graphics/gpu/dawn/GPUBindGroupAllocatorDawn.cpp: Copied from Source/WebCore/platform/graphics/gpu/GPUPlatformTypes.h. (WebCore::GPUBindGroupAllocator::create): (WebCore::GPUBindGroupAllocator::GPUBindGroupAllocator): (WebCore::GPUBindGroupAllocator::reallocate): (WebCore::GPUBindGroupAllocator::tryReset): * platform/graphics/gpu/dawn/GPUBindGroupDawn.cpp: Copied from Source/WebCore/platform/graphics/gpu/GPUPlatformTypes.h. (WebCore::GPUBindGroup::tryCreate): (WebCore::GPUBindGroup::GPUBindGroup): (WebCore::GPUBindGroup::~GPUBindGroup): * platform/graphics/gpu/dawn/GPUBindGroupLayoutDawn.cpp: Copied from Source/WebCore/platform/graphics/gpu/GPUPlatformTypes.h. (WebCore::GPUBindGroupLayout::tryCreate): * platform/graphics/gpu/dawn/GPUBufferDawn.cpp: Added. (WebCore::GPUBuffer::tryCreate): (WebCore::GPUBuffer::GPUBuffer): (WebCore::GPUBuffer::~GPUBuffer): (WebCore::GPUBuffer::isReadOnly const): (WebCore::GPUBuffer::state const): (WebCore::GPUBuffer::mapOnCreation): (WebCore::GPUBuffer::registerMappingCallback): (WebCore::GPUBuffer::runMappingCallback): (WebCore::GPUBuffer::stagingBufferForRead): (WebCore::GPUBuffer::stagingBufferForWrite): (WebCore::GPUBuffer::copyStagingBufferToGPU): (WebCore::GPUBuffer::unmap): (WebCore::GPUBuffer::destroy): * platform/graphics/gpu/dawn/GPUCommandBufferDawn.cpp: Copied from Source/WebCore/platform/graphics/gpu/GPUPlatformTypes.h. (WebCore::GPUCommandBuffer::tryCreate): (WebCore::GPUCommandBuffer::GPUCommandBuffer): (WebCore::GPUCommandBuffer::copyBufferToBuffer): (WebCore::GPUCommandBuffer::copyBufferToTexture): (WebCore::GPUCommandBuffer::copyTextureToBuffer): (WebCore::GPUCommandBuffer::copyTextureToTexture): * platform/graphics/gpu/dawn/GPUComputePassEncoderDawn.cpp: Copied from Source/WebCore/platform/graphics/gpu/GPUPlatformTypes.h. (WebCore::GPUComputePassEncoder::tryCreate): (WebCore::GPUComputePassEncoder::GPUComputePassEncoder): (WebCore::GPUComputePassEncoder::setPipeline): (WebCore::GPUComputePassEncoder::dispatch): (WebCore::GPUComputePassEncoder::platformPassEncoder const): * platform/graphics/gpu/dawn/GPUComputePipelineDawn.cpp: Copied from Source/WebCore/platform/graphics/gpu/GPUPlatformTypes.h. (WebCore::GPUComputePipeline::tryCreate): (WebCore::GPUComputePipeline::recompile): * platform/graphics/gpu/dawn/GPUDeviceDawn.cpp: Copied from Source/WebCore/platform/graphics/gpu/GPUPlatformTypes.h. (WebCore::GPUDevice::tryCreate): (WebCore::GPUDevice::GPUDevice): * platform/graphics/gpu/dawn/GPUPlatformTypesDawn.h: Added. (WebCore::HandleDeleter<PlatformBuffer>::operator()): (WebCore::HandleDeleter<PlatformCommandBuffer>::operator()): (WebCore::HandleDeleter<PlatformComputePassEncoder>::operator()): (WebCore::HandleDeleter<PlatformComputePipeline>::operator()): (WebCore::HandleDeleter<PlatformDevice>::operator()): (WebCore::HandleDeleter<PlatformDrawable>::operator()): (WebCore::HandleDeleter<PlatformProgrammablePassEncoder>::operator()): (WebCore::HandleDeleter<PlatformQueue>::operator()): (WebCore::HandleDeleter<PlatformRenderPassEncoder>::operator()): (WebCore::HandleDeleter<PlatformRenderPipeline>::operator()): (WebCore::HandleDeleter<PlatformSampler>::operator()): (WebCore::HandleDeleter<PlatformShaderModule>::operator()): (WebCore::HandleDeleter<PlatformSwapLayer>::operator()): (WebCore::HandleDeleter<PlatformTexture>::operator()): * platform/graphics/gpu/dawn/GPUProgrammablePassEncoderDawn.cpp: Copied from Source/WebCore/platform/graphics/gpu/GPUPlatformTypes.h. (WebCore::GPUProgrammablePassEncoder::endPass): (WebCore::GPUProgrammablePassEncoder::setBindGroup): * platform/graphics/gpu/dawn/GPUQueueDawn.cpp: Copied from Source/WebCore/platform/graphics/gpu/GPUPlatformTypes.h. (WebCore::GPUQueue::tryCreate): (WebCore::GPUQueue::GPUQueue): (WebCore::GPUQueue::submit): (WebCore::GPUQueue::label const): (WebCore::GPUQueue::setLabel const): * platform/graphics/gpu/dawn/GPURenderPassEncoderDawn.cpp: Added. (WebCore::GPURenderPassEncoder::tryCreate): (WebCore::GPURenderPassEncoder::GPURenderPassEncoder): (WebCore::GPURenderPassEncoder::platformPassEncoder const): (WebCore::GPURenderPassEncoder::setPipeline): (WebCore::GPURenderPassEncoder::setBlendColor): (WebCore::GPURenderPassEncoder::setViewport): (WebCore::GPURenderPassEncoder::setScissorRect): (WebCore::GPURenderPassEncoder::setIndexBuffer): (WebCore::GPURenderPassEncoder::setVertexBuffers): (WebCore::GPURenderPassEncoder::draw): (WebCore::GPURenderPassEncoder::drawIndexed): * platform/graphics/gpu/dawn/GPURenderPipelineDawn.cpp: Copied from Source/WebCore/platform/graphics/gpu/GPUPlatformTypes.h. (WebCore::GPURenderPipeline::tryCreate): (WebCore::GPURenderPipeline::recompile): * platform/graphics/gpu/dawn/GPUSamplerDawn.cpp: Copied from Source/WebCore/platform/graphics/gpu/GPUPlatformTypes.h. (WebCore::GPUSampler::tryCreate): (WebCore::GPUSampler::GPUSampler): * platform/graphics/gpu/dawn/GPUShaderModuleDawn.cpp: Copied from Source/WebCore/platform/graphics/gpu/GPUPlatformTypes.h. (WebCore::GPUShaderModule::tryCreate): (WebCore::GPUShaderModule::GPUShaderModule): * platform/graphics/gpu/dawn/GPUSwapChainDawn.cpp: Copied from Source/WebCore/platform/graphics/gpu/GPUPlatformTypes.h. (WebCore::GPUSwapChain::tryCreate): (WebCore::GPUSwapChain::GPUSwapChain): (WebCore::GPUSwapChain::tryGetCurrentTexture): (WebCore::GPUSwapChain::present): (WebCore::GPUSwapChain::reshape): (WebCore::GPUSwapChain::platformLayer const): * platform/graphics/gpu/dawn/GPUTextureDawn.cpp: Copied from Source/WebCore/platform/graphics/gpu/GPUPlatformTypes.h. (WebCore::GPUTexture::tryCreate): (WebCore::GPUTexture::create): (WebCore::GPUTexture::GPUTexture): (WebCore::GPUTexture::tryCreateDefaultTextureView): Canonical link: https://commits.webkit.org/230797@main git-svn-id: https://svn.webkit.org/repository/webkit/trunk@268869 268f45cc-cd09-0410-ab3c-d52691b4dbfc
2020-10-22 16:47:20 +00:00
if (USE_DAWN)
include(platform/Dawn.cmake)
endif ()
[CMake] Make WebCore headers copies https://bugs.webkit.org/show_bug.cgi?id=182512 <rdar://problem/37510435> Reviewed by Alex Christensen. Source/WebCore: The header copying is moved to a target WebCorePrivateFrameworkHeaders. This target was originally Windows only but now this is enabled for all CMake based ports. Enumerated all headers within WebCore that are used for WebKit(Legacy), tools and tests. Shared headers are within Headers.cmake while port and platform specific headers are in their respective CMake files. Listing out all headers is preferred because globbing will break the build whenever a file is added. All include directories within the WebCore source tree are now PRIVATE. They were modified to use WebCore_PRIVATE_INCLUDE_DIRECTORIES. They will not propagate to other targets which will prevent erroneous includes in targets dependent on WebCore. * CMakeLists.txt: * Headers.cmake: Added. * PlatformAppleWin.cmake: * PlatformGTK.cmake: * PlatformMac.cmake: * PlatformPlayStation.cmake: * PlatformWPE.cmake: * PlatformWin.cmake: * PlatformWinCairo.cmake: * platform/Cairo.cmake: * platform/Curl.cmake: * platform/FreeType.cmake: * platform/GStreamer.cmake: * platform/HolePunch.cmake: * platform/ImageDecoders.cmake: * platform/Soup.cmake: Added. * platform/TextureMapper.cmake: Source/WebKit: WebCore now uses WebCore_PRIVATE_INCLUDE_DIRECTORIES for all ports. This revealed problems with WebKit's usage of WebCore headers. All include directories directly referencing the WebCore source tree we're removed from the CMake files. Any includes of WebCore headers using "*.h" were modified to <WebCore/*.h> Removed generation of forwarding headers for WebCore using the perl script. * CMakeLists.txt: * NetworkProcess/curl/NetworkDataTaskCurl.h: * PlatformWPE.cmake: * PlatformWin.cmake: * Scripts/generate-forwarding-headers.pl: * UIProcess/API/glib/WebKitUserContentFilterStore.cpp: * UIProcess/API/wpe/WebKitColorPrivate.h: * UIProcess/WebsiteData/win/WebsiteDataStoreWin.cpp: * UIProcess/win/PageClientImpl.cpp: Source/WebKitLegacy: Added WebCorePrivateFrameworkHeaders as a dependency of WebKitLegacy for all ports. WebCore now uses WebCore_PRIVATE_INCLUDE_DIRECTORIES for all ports. This revealed problems with WebKit's usage of WebCore headers. All include directories directly referencing the WebCore source tree we're removed from the CMake files. * CMakeLists.txt: * PlatformWin.cmake: Tools: Added WebCorePrivateFrameworkHeaders as a dependency of TestWebKitAPI for all ports. WebCore now uses WebCore_PRIVATE_INCLUDE_DIRECTORIES for all ports. Any includes of WebCore headers using "*.h" were modified to <WebCore/*.h> * DumpRenderTree/TestNetscapePlugIn/CMakeLists.txt: * DumpRenderTree/TestNetscapePlugIn/ForwardingHeaders/WebKit/npapi.h: * DumpRenderTree/TestNetscapePlugIn/ForwardingHeaders/WebKit/npfunctions.h: * DumpRenderTree/TestNetscapePlugIn/ForwardingHeaders/WebKit/npruntime.h: * TestWebKitAPI/CMakeLists.txt: * TestWebKitAPI/PlatformWin.cmake: * TestWebKitAPI/Tests/WebCore/AbortableTaskQueue.cpp: * TestWebKitAPI/Tests/WebCore/gstreamer/GstMappedBuffer.cpp: * WebKitTestRunner/win/PlatformWebViewWin.cpp: Canonical link: https://commits.webkit.org/211325@main git-svn-id: https://svn.webkit.org/repository/webkit/trunk@244443 268f45cc-cd09-0410-ab3c-d52691b4dbfc
2019-04-18 23:20:26 +00:00
list(APPEND WebCore_PRIVATE_INCLUDE_DIRECTORIES
"${WEBKIT_LIBRARIES_DIR}/include"
Progress towards CMake on Windows and Mac. https://bugs.webkit.org/show_bug.cgi?id=143293 Reviewed by Filip Pizlo. .: * CMakeLists.txt: Set DERIVED_SOURCES_WTF_DIR for Windows. * Source/CMakeLists.txt: Don't compile bmalloc on Windows. * Source/cmake/OptionsCommon.cmake: Use the absolute path of the C preprocessor. * Source/cmake/OptionsWinCairo.cmake: Added needed definitions. * Source/cmake/OptionsWindows.cmake: Set some default values and removed support for old Visual Studio versions before /MP. * Source/cmake/WebKitFS.cmake: Make WTF DerivedSources directory. * Source/cmake/WebKitMacros.cmake: Added ADD_PRECOMPILED_HEADER macro based on http://stackoverflow.com/questions/148570/using-pre-compiled-headers-with-cmake Source/bmalloc: * bmalloc/BAssert.h: Removed ellipses from macros to appease Visual Studio. Source/JavaScriptCore: * CMakeLists.txt: Enabled using assembly on Windows. Replaced unix commands with CMake commands. * PlatformMac.cmake: Tell open source builders where to find unicode headers. Source/ThirdParty/ANGLE: * include/GLES2/gl2.h: Temporarily disabled WebGL on Windows CMake builds. Source/WebCore: * PlatformMac.cmake: Tell open source builders where to find unicode headers. * PlatformWin.cmake: Include PlatformWinCairo.cmake. * PlatformWinCairo.cmake: Added from bug 115944 by Patrick Gansterer. * bindings/js/JSDOMStringListCustom.cpp: * bindings/js/JSDOMWrapper.cpp: * bindings/js/JSMessageChannelCustom.cpp: * bindings/js/JSPopStateEventCustom.cpp: * bindings/js/JSReadableStreamCustom.cpp: * bindings/js/ReadableStreamJSSource.cpp: * bindings/js/ScriptController.cpp: * css/CSSComputedStyleDeclaration.cpp: * dom/Attr.cpp: * dom/CollectionIndexCache.cpp: * platform/graphics/ANGLEWebKitBridge.h: Fixed include quirks. Source/WebKit: * PlatformMac.cmake: Fixed some include directories. Source/WTF: * wtf/CMakeLists.txt: Don't use bmalloc on Windows yet. * wtf/FeatureDefines.h: Temporarily disabled WebGL on Windows CMake builds. * wtf/PlatformMac.cmake: Tell open source builders where to find unicode headers. Canonical link: https://commits.webkit.org/161340@main git-svn-id: https://svn.webkit.org/repository/webkit/trunk@182243 268f45cc-cd09-0410-ab3c-d52691b4dbfc
2015-04-01 18:36:43 +00:00
"${WEBCORE_DIR}/loader/archive/cf"
"${WEBCORE_DIR}/platform/cf"
)
list(APPEND WebCore_SOURCES
page/win/FrameCairoWin.cpp
page/win/ResourceUsageOverlayWin.cpp
page/win/ResourceUsageThreadWin.cpp
Progress towards CMake on Windows and Mac. https://bugs.webkit.org/show_bug.cgi?id=143293 Reviewed by Filip Pizlo. .: * CMakeLists.txt: Set DERIVED_SOURCES_WTF_DIR for Windows. * Source/CMakeLists.txt: Don't compile bmalloc on Windows. * Source/cmake/OptionsCommon.cmake: Use the absolute path of the C preprocessor. * Source/cmake/OptionsWinCairo.cmake: Added needed definitions. * Source/cmake/OptionsWindows.cmake: Set some default values and removed support for old Visual Studio versions before /MP. * Source/cmake/WebKitFS.cmake: Make WTF DerivedSources directory. * Source/cmake/WebKitMacros.cmake: Added ADD_PRECOMPILED_HEADER macro based on http://stackoverflow.com/questions/148570/using-pre-compiled-headers-with-cmake Source/bmalloc: * bmalloc/BAssert.h: Removed ellipses from macros to appease Visual Studio. Source/JavaScriptCore: * CMakeLists.txt: Enabled using assembly on Windows. Replaced unix commands with CMake commands. * PlatformMac.cmake: Tell open source builders where to find unicode headers. Source/ThirdParty/ANGLE: * include/GLES2/gl2.h: Temporarily disabled WebGL on Windows CMake builds. Source/WebCore: * PlatformMac.cmake: Tell open source builders where to find unicode headers. * PlatformWin.cmake: Include PlatformWinCairo.cmake. * PlatformWinCairo.cmake: Added from bug 115944 by Patrick Gansterer. * bindings/js/JSDOMStringListCustom.cpp: * bindings/js/JSDOMWrapper.cpp: * bindings/js/JSMessageChannelCustom.cpp: * bindings/js/JSPopStateEventCustom.cpp: * bindings/js/JSReadableStreamCustom.cpp: * bindings/js/ReadableStreamJSSource.cpp: * bindings/js/ScriptController.cpp: * css/CSSComputedStyleDeclaration.cpp: * dom/Attr.cpp: * dom/CollectionIndexCache.cpp: * platform/graphics/ANGLEWebKitBridge.h: Fixed include quirks. Source/WebKit: * PlatformMac.cmake: Fixed some include directories. Source/WTF: * wtf/CMakeLists.txt: Don't use bmalloc on Windows yet. * wtf/FeatureDefines.h: Temporarily disabled WebGL on Windows CMake builds. * wtf/PlatformMac.cmake: Tell open source builders where to find unicode headers. Canonical link: https://commits.webkit.org/161340@main git-svn-id: https://svn.webkit.org/repository/webkit/trunk@182243 268f45cc-cd09-0410-ab3c-d52691b4dbfc
2015-04-01 18:36:43 +00:00
platform/graphics/GLContext.cpp
platform/graphics/PlatformDisplay.cpp
Progress towards CMake on Windows and Mac. https://bugs.webkit.org/show_bug.cgi?id=143293 Reviewed by Filip Pizlo. .: * CMakeLists.txt: Set DERIVED_SOURCES_WTF_DIR for Windows. * Source/CMakeLists.txt: Don't compile bmalloc on Windows. * Source/cmake/OptionsCommon.cmake: Use the absolute path of the C preprocessor. * Source/cmake/OptionsWinCairo.cmake: Added needed definitions. * Source/cmake/OptionsWindows.cmake: Set some default values and removed support for old Visual Studio versions before /MP. * Source/cmake/WebKitFS.cmake: Make WTF DerivedSources directory. * Source/cmake/WebKitMacros.cmake: Added ADD_PRECOMPILED_HEADER macro based on http://stackoverflow.com/questions/148570/using-pre-compiled-headers-with-cmake Source/bmalloc: * bmalloc/BAssert.h: Removed ellipses from macros to appease Visual Studio. Source/JavaScriptCore: * CMakeLists.txt: Enabled using assembly on Windows. Replaced unix commands with CMake commands. * PlatformMac.cmake: Tell open source builders where to find unicode headers. Source/ThirdParty/ANGLE: * include/GLES2/gl2.h: Temporarily disabled WebGL on Windows CMake builds. Source/WebCore: * PlatformMac.cmake: Tell open source builders where to find unicode headers. * PlatformWin.cmake: Include PlatformWinCairo.cmake. * PlatformWinCairo.cmake: Added from bug 115944 by Patrick Gansterer. * bindings/js/JSDOMStringListCustom.cpp: * bindings/js/JSDOMWrapper.cpp: * bindings/js/JSMessageChannelCustom.cpp: * bindings/js/JSPopStateEventCustom.cpp: * bindings/js/JSReadableStreamCustom.cpp: * bindings/js/ReadableStreamJSSource.cpp: * bindings/js/ScriptController.cpp: * css/CSSComputedStyleDeclaration.cpp: * dom/Attr.cpp: * dom/CollectionIndexCache.cpp: * platform/graphics/ANGLEWebKitBridge.h: Fixed include quirks. Source/WebKit: * PlatformMac.cmake: Fixed some include directories. Source/WTF: * wtf/CMakeLists.txt: Don't use bmalloc on Windows yet. * wtf/FeatureDefines.h: Temporarily disabled WebGL on Windows CMake builds. * wtf/PlatformMac.cmake: Tell open source builders where to find unicode headers. Canonical link: https://commits.webkit.org/161340@main git-svn-id: https://svn.webkit.org/repository/webkit/trunk@182243 268f45cc-cd09-0410-ab3c-d52691b4dbfc
2015-04-01 18:36:43 +00:00
[Cocoa] [GPU Process] Perform image decoding of color fonts in the Web Process https://bugs.webkit.org/show_bug.cgi?id=217506 Reviewed by Simon Fraser. Source/WebCore: Core Text itself doesn't know how to draw things; it has to rely on Core Graphics to do that. However, Core Graphics only understands the simplest of text drawing concepts; it doesn't understand things like color fonts or emoji. Core Text sits between the application and Core Graphics, and is responsible for splitting up an arbitrary draw command into individual simple pieces which Core Graphics can understand. For example, when you ask Core Text to draw a string which is of the form "outlines emoji outlines", Core Text will end up telling Core Graphics to draw the first outlines, then draw the emoji image (using Core Graphics's normal image drawing routines), then draw the remaining outlines. This is exactly the same kind of filtering we want to do for the GPU Process. We want to be able to separate out the glyphs which are rendered using outlines from the emoji glyphs which are rendered using images. We want to handle the image glyphs ourself in WebKit using our own image drawing display list facilities, which will cause images to be decoded in the Web Process, thereby increasing the security of the GPU Process. So, this patch implements a custom CGContext, backed by a function table that is populated in WebKit. We pass this custom CGContext into Core Text, which does its normal splitting up of outlines / images, and calls glyph / image drawing functions on our CGContext. Because these functions are implemented by WebKit, this effectively makes WebKit able to intercept the drawing calls, and implement them ourself by appending items to the current display list. So, when Core Text tells our CGContext to draw an emoji, our callback runs and we "just" append a DrawImage display list item. I use scare-quotes around "just" because it is a bit more complicated than that. Core Text internally can change the fill/stroke color (for COLR glyphs), the text matrix (it should be updated between adjacent runs), the CTM, and the shadow state (because Core Text sometimes will implement shadows itself by just drawing the text two times). So, in our CGContext callback, we have to look at the state of the CGContext, figure out if anything changed (because we're not notified when changes happen), and if things did change, append additional display list items to make a parallel change happen at draw time. Tests added in https://trac.webkit.org/r269177 * Headers.cmake: * PlatformAppleWin.cmake: * PlatformWinCairo.cmake: * SourcesCocoa.txt: * WebCore.xcodeproj/project.pbxproj: * platform/FreeType.cmake: * platform/graphics/cg/ImageBufferCGBackend.cpp: (WebCore::ImageBufferCGBackend::setupContext): * platform/graphics/coretext/FontCascadeCoreText.cpp: (WebCore::fillVectorWithHorizontalGlyphPositions): * platform/graphics/displaylists/DisplayListDrawGlyphsRecorder.h: Added. * platform/graphics/displaylists/DisplayListDrawGlyphsRecorderCoreText.cpp: Added. (WebCore::DisplayList::beginLayer): VTable callback for creating a transparency layer. (WebCore::DisplayList::endLayer): Ditto for ending a transparency layer. (WebCore::DisplayList::drawGlyphs): VTable callback for drawing outline glyphs. (WebCore::DisplayList::drawImage): VTable callback for drawing an image. (WebCore::DisplayList::DrawGlyphsRecorder::createInternalContext): Set up the custom CGContext infrastructure. Hook up the VTable callbacks. (WebCore::DisplayList::DrawGlyphsRecorder::DrawGlyphsRecorder): (WebCore::DisplayList::DrawGlyphsRecorder::populateInternalState): We need to save the GraphicsContext state at the beginning of the entry point, so we can restore anything that changed when we're done. (WebCore::DisplayList::DrawGlyphsRecorder::populateInternalContext): Because Core Text internally interrogates the CGContext to see if it needs to do things like draw shadows itself, we need to make sure that the recorder's state is mirrored in our custom CGContext. This applies all the relevant state to our CGContext so it's ready when Core Text asks for it. (WebCore::DisplayList::DrawGlyphsRecorder::prepareInternalContext): Call the above two functions. (WebCore::DisplayList::DrawGlyphsRecorder::concludeInternalContext): Called once when we're done. This function cleans up, by possibly appending additional display list items to restore the state back to what it was when we started. (WebCore::DisplayList::DrawGlyphsRecorder::updateFillColor): Detect a changed fill color, and if it has changed, append a display list item to make a parallel change at drawing time. (WebCore::DisplayList::DrawGlyphsRecorder::updateStrokeColor): Ditto for the stroke color. (WebCore::DisplayList::DrawGlyphsRecorder::updateCTM): Ditto for the CTM. (WebCore::DisplayList::shadowIsCleared): (WebCore::DisplayList::DrawGlyphsRecorder::updateShadow): Ditto for the shadow state. (WebCore::DisplayList::DrawGlyphsRecorder::recordBeginLayer): Hook this up to beginTransparencyLayer(). (WebCore::DisplayList::DrawGlyphsRecorder::recordEndLayer): Hook this up to endTransparencyLayer(). (WebCore::DisplayList::computeAdvancesFromPositions): CGContext gives us positions, but our display list infrastructure requires advances. Simply subtract to convert between them. (WebCore::DisplayList::DrawGlyphsRecorder::recordDrawGlyphs): The callback that appends a DrawGlyphs display list item. Note it has to call the various update() functions to detect changes in the CGContext state. (WebCore::DisplayList::DrawGlyphsRecorder::recordDrawImage): Ditto for a DrawImage display list item. (WebCore::DisplayList::DrawGlyphsRecorder::drawGlyphs): The main entry point. Simply set up, do the work, then clean up. * platform/graphics/displaylists/DisplayListDrawGlyphsRecorderHarfBuzz.cpp: Added. Dummy implementation to make the other ports continue to compile. (WebCore::DisplayList::DrawGlyphsRecorder::DrawGlyphsRecorder): (WebCore::DisplayList::DrawGlyphsRecorder::drawGlyphs): * platform/graphics/displaylists/DisplayListRecorder.cpp: (WebCore::DisplayList::Recorder::Recorder): (WebCore::DisplayList::Recorder::drawGlyphs): Call m_drawGlyphsRecorder.drawGlyphs() instead of just appending a DrawGlyphs command. (WebCore::DisplayList::Recorder::concatCTM): Tiny optimization. (WebCore::DisplayList::Recorder::clipToDrawingCommands): The current clipToDrawingCommands's context CTM didn't match the parallel one used during playback. In order to make the CTMs match are recording and playback time, we have to make sure they start off the same. * platform/graphics/displaylists/DisplayListRecorder.h: DisplayList::Recorder owns a DrawGlyphsRecorder, whose lifetime equals that of the DisplayList::Recorder. Rather than destroying / recreating the DrawGlyphsRecorder, the DrawGlyphsRecorder class is smart enough to clean up after itself so it can be reused multiple times. Source/WebCore/PAL: Add some new entry points, and do some various cleanup. * pal/spi/cg/CoreGraphicsSPI.h: Canonical link: https://commits.webkit.org/231072@main git-svn-id: https://svn.webkit.org/repository/webkit/trunk@269211 268f45cc-cd09-0410-ab3c-d52691b4dbfc
2020-10-31 00:01:02 +00:00
platform/graphics/displaylists/DisplayListDrawGlyphsRecorderHarfBuzz.cpp
Progress towards CMake on Windows and Mac. https://bugs.webkit.org/show_bug.cgi?id=143293 Reviewed by Filip Pizlo. .: * CMakeLists.txt: Set DERIVED_SOURCES_WTF_DIR for Windows. * Source/CMakeLists.txt: Don't compile bmalloc on Windows. * Source/cmake/OptionsCommon.cmake: Use the absolute path of the C preprocessor. * Source/cmake/OptionsWinCairo.cmake: Added needed definitions. * Source/cmake/OptionsWindows.cmake: Set some default values and removed support for old Visual Studio versions before /MP. * Source/cmake/WebKitFS.cmake: Make WTF DerivedSources directory. * Source/cmake/WebKitMacros.cmake: Added ADD_PRECOMPILED_HEADER macro based on http://stackoverflow.com/questions/148570/using-pre-compiled-headers-with-cmake Source/bmalloc: * bmalloc/BAssert.h: Removed ellipses from macros to appease Visual Studio. Source/JavaScriptCore: * CMakeLists.txt: Enabled using assembly on Windows. Replaced unix commands with CMake commands. * PlatformMac.cmake: Tell open source builders where to find unicode headers. Source/ThirdParty/ANGLE: * include/GLES2/gl2.h: Temporarily disabled WebGL on Windows CMake builds. Source/WebCore: * PlatformMac.cmake: Tell open source builders where to find unicode headers. * PlatformWin.cmake: Include PlatformWinCairo.cmake. * PlatformWinCairo.cmake: Added from bug 115944 by Patrick Gansterer. * bindings/js/JSDOMStringListCustom.cpp: * bindings/js/JSDOMWrapper.cpp: * bindings/js/JSMessageChannelCustom.cpp: * bindings/js/JSPopStateEventCustom.cpp: * bindings/js/JSReadableStreamCustom.cpp: * bindings/js/ReadableStreamJSSource.cpp: * bindings/js/ScriptController.cpp: * css/CSSComputedStyleDeclaration.cpp: * dom/Attr.cpp: * dom/CollectionIndexCache.cpp: * platform/graphics/ANGLEWebKitBridge.h: Fixed include quirks. Source/WebKit: * PlatformMac.cmake: Fixed some include directories. Source/WTF: * wtf/CMakeLists.txt: Don't use bmalloc on Windows yet. * wtf/FeatureDefines.h: Temporarily disabled WebGL on Windows CMake builds. * wtf/PlatformMac.cmake: Tell open source builders where to find unicode headers. Canonical link: https://commits.webkit.org/161340@main git-svn-id: https://svn.webkit.org/repository/webkit/trunk@182243 268f45cc-cd09-0410-ab3c-d52691b4dbfc
2015-04-01 18:36:43 +00:00
platform/graphics/win/FontCustomPlatformDataCairo.cpp
platform/graphics/win/FontPlatformDataCairoWin.cpp
platform/graphics/win/GlyphPageTreeNodeCairoWin.cpp
platform/graphics/win/GraphicsContextCairoWin.cpp
platform/graphics/win/ImageCairoWin.cpp
platform/graphics/win/MediaPlayerPrivateMediaFoundation.cpp
platform/graphics/win/PlatformDisplayWin.cpp
Progress towards CMake on Windows and Mac. https://bugs.webkit.org/show_bug.cgi?id=143293 Reviewed by Filip Pizlo. .: * CMakeLists.txt: Set DERIVED_SOURCES_WTF_DIR for Windows. * Source/CMakeLists.txt: Don't compile bmalloc on Windows. * Source/cmake/OptionsCommon.cmake: Use the absolute path of the C preprocessor. * Source/cmake/OptionsWinCairo.cmake: Added needed definitions. * Source/cmake/OptionsWindows.cmake: Set some default values and removed support for old Visual Studio versions before /MP. * Source/cmake/WebKitFS.cmake: Make WTF DerivedSources directory. * Source/cmake/WebKitMacros.cmake: Added ADD_PRECOMPILED_HEADER macro based on http://stackoverflow.com/questions/148570/using-pre-compiled-headers-with-cmake Source/bmalloc: * bmalloc/BAssert.h: Removed ellipses from macros to appease Visual Studio. Source/JavaScriptCore: * CMakeLists.txt: Enabled using assembly on Windows. Replaced unix commands with CMake commands. * PlatformMac.cmake: Tell open source builders where to find unicode headers. Source/ThirdParty/ANGLE: * include/GLES2/gl2.h: Temporarily disabled WebGL on Windows CMake builds. Source/WebCore: * PlatformMac.cmake: Tell open source builders where to find unicode headers. * PlatformWin.cmake: Include PlatformWinCairo.cmake. * PlatformWinCairo.cmake: Added from bug 115944 by Patrick Gansterer. * bindings/js/JSDOMStringListCustom.cpp: * bindings/js/JSDOMWrapper.cpp: * bindings/js/JSMessageChannelCustom.cpp: * bindings/js/JSPopStateEventCustom.cpp: * bindings/js/JSReadableStreamCustom.cpp: * bindings/js/ReadableStreamJSSource.cpp: * bindings/js/ScriptController.cpp: * css/CSSComputedStyleDeclaration.cpp: * dom/Attr.cpp: * dom/CollectionIndexCache.cpp: * platform/graphics/ANGLEWebKitBridge.h: Fixed include quirks. Source/WebKit: * PlatformMac.cmake: Fixed some include directories. Source/WTF: * wtf/CMakeLists.txt: Don't use bmalloc on Windows yet. * wtf/FeatureDefines.h: Temporarily disabled WebGL on Windows CMake builds. * wtf/PlatformMac.cmake: Tell open source builders where to find unicode headers. Canonical link: https://commits.webkit.org/161340@main git-svn-id: https://svn.webkit.org/repository/webkit/trunk@182243 268f45cc-cd09-0410-ab3c-d52691b4dbfc
2015-04-01 18:36:43 +00:00
platform/graphics/win/SimpleFontDataCairoWin.cpp
platform/network/win/CurlSSLHandleWin.cpp
Progress towards CMake on Windows and Mac. https://bugs.webkit.org/show_bug.cgi?id=143293 Reviewed by Filip Pizlo. .: * CMakeLists.txt: Set DERIVED_SOURCES_WTF_DIR for Windows. * Source/CMakeLists.txt: Don't compile bmalloc on Windows. * Source/cmake/OptionsCommon.cmake: Use the absolute path of the C preprocessor. * Source/cmake/OptionsWinCairo.cmake: Added needed definitions. * Source/cmake/OptionsWindows.cmake: Set some default values and removed support for old Visual Studio versions before /MP. * Source/cmake/WebKitFS.cmake: Make WTF DerivedSources directory. * Source/cmake/WebKitMacros.cmake: Added ADD_PRECOMPILED_HEADER macro based on http://stackoverflow.com/questions/148570/using-pre-compiled-headers-with-cmake Source/bmalloc: * bmalloc/BAssert.h: Removed ellipses from macros to appease Visual Studio. Source/JavaScriptCore: * CMakeLists.txt: Enabled using assembly on Windows. Replaced unix commands with CMake commands. * PlatformMac.cmake: Tell open source builders where to find unicode headers. Source/ThirdParty/ANGLE: * include/GLES2/gl2.h: Temporarily disabled WebGL on Windows CMake builds. Source/WebCore: * PlatformMac.cmake: Tell open source builders where to find unicode headers. * PlatformWin.cmake: Include PlatformWinCairo.cmake. * PlatformWinCairo.cmake: Added from bug 115944 by Patrick Gansterer. * bindings/js/JSDOMStringListCustom.cpp: * bindings/js/JSDOMWrapper.cpp: * bindings/js/JSMessageChannelCustom.cpp: * bindings/js/JSPopStateEventCustom.cpp: * bindings/js/JSReadableStreamCustom.cpp: * bindings/js/ReadableStreamJSSource.cpp: * bindings/js/ScriptController.cpp: * css/CSSComputedStyleDeclaration.cpp: * dom/Attr.cpp: * dom/CollectionIndexCache.cpp: * platform/graphics/ANGLEWebKitBridge.h: Fixed include quirks. Source/WebKit: * PlatformMac.cmake: Fixed some include directories. Source/WTF: * wtf/CMakeLists.txt: Don't use bmalloc on Windows yet. * wtf/FeatureDefines.h: Temporarily disabled WebGL on Windows CMake builds. * wtf/PlatformMac.cmake: Tell open source builders where to find unicode headers. Canonical link: https://commits.webkit.org/161340@main git-svn-id: https://svn.webkit.org/repository/webkit/trunk@182243 268f45cc-cd09-0410-ab3c-d52691b4dbfc
2015-04-01 18:36:43 +00:00
platform/text/win/LocaleWin.cpp
platform/win/DelayLoadedModulesEnumerator.cpp
platform/win/DragImageCairoWin.cpp
platform/win/ImportedFunctionsEnumerator.cpp
platform/win/ImportedModulesEnumerator.cpp
platform/win/PEImage.cpp
)
list(APPEND WebCore_LIBRARIES
comctl32
crypt32
delayimp
Progress towards CMake on Windows and Mac. https://bugs.webkit.org/show_bug.cgi?id=143293 Reviewed by Filip Pizlo. .: * CMakeLists.txt: Set DERIVED_SOURCES_WTF_DIR for Windows. * Source/CMakeLists.txt: Don't compile bmalloc on Windows. * Source/cmake/OptionsCommon.cmake: Use the absolute path of the C preprocessor. * Source/cmake/OptionsWinCairo.cmake: Added needed definitions. * Source/cmake/OptionsWindows.cmake: Set some default values and removed support for old Visual Studio versions before /MP. * Source/cmake/WebKitFS.cmake: Make WTF DerivedSources directory. * Source/cmake/WebKitMacros.cmake: Added ADD_PRECOMPILED_HEADER macro based on http://stackoverflow.com/questions/148570/using-pre-compiled-headers-with-cmake Source/bmalloc: * bmalloc/BAssert.h: Removed ellipses from macros to appease Visual Studio. Source/JavaScriptCore: * CMakeLists.txt: Enabled using assembly on Windows. Replaced unix commands with CMake commands. * PlatformMac.cmake: Tell open source builders where to find unicode headers. Source/ThirdParty/ANGLE: * include/GLES2/gl2.h: Temporarily disabled WebGL on Windows CMake builds. Source/WebCore: * PlatformMac.cmake: Tell open source builders where to find unicode headers. * PlatformWin.cmake: Include PlatformWinCairo.cmake. * PlatformWinCairo.cmake: Added from bug 115944 by Patrick Gansterer. * bindings/js/JSDOMStringListCustom.cpp: * bindings/js/JSDOMWrapper.cpp: * bindings/js/JSMessageChannelCustom.cpp: * bindings/js/JSPopStateEventCustom.cpp: * bindings/js/JSReadableStreamCustom.cpp: * bindings/js/ReadableStreamJSSource.cpp: * bindings/js/ScriptController.cpp: * css/CSSComputedStyleDeclaration.cpp: * dom/Attr.cpp: * dom/CollectionIndexCache.cpp: * platform/graphics/ANGLEWebKitBridge.h: Fixed include quirks. Source/WebKit: * PlatformMac.cmake: Fixed some include directories. Source/WTF: * wtf/CMakeLists.txt: Don't use bmalloc on Windows yet. * wtf/FeatureDefines.h: Temporarily disabled WebGL on Windows CMake builds. * wtf/PlatformMac.cmake: Tell open source builders where to find unicode headers. Canonical link: https://commits.webkit.org/161340@main git-svn-id: https://svn.webkit.org/repository/webkit/trunk@182243 268f45cc-cd09-0410-ab3c-d52691b4dbfc
2015-04-01 18:36:43 +00:00
iphlpapi
rpcrt4
shlwapi
usp10
version
winmm
ws2_32
)
# Define a INTERFACE library for MediaFoundation and link it
# explicitly with direct WebCore consumers because /DELAYLOAD causes
# linker warnings for modules not using MediaFoundation.
# LINK : warning LNK4199: /DELAYLOAD:mf.dll ignored; no imports found from mf.dll
add_library(MediaFoundation INTERFACE)
target_link_libraries(MediaFoundation INTERFACE
d3d9
dxva2
evr
mf
mfplat
)
target_link_options(MediaFoundation INTERFACE
/DELAYLOAD:d3d9.dll
/DELAYLOAD:dxva2.dll
/DELAYLOAD:evr.dll
/DELAYLOAD:mf.dll
/DELAYLOAD:mfplat.dll
)
if (USE_WOFF2)
# The WOFF2 libraries don't compile as DLLs on Windows, so add in
# the additional libraries WOFF2::dec requires
list(APPEND WebCore_LIBRARIES
WOFF2::common
brotlidec
)
endif ()
Progress towards CMake on Windows and Mac. https://bugs.webkit.org/show_bug.cgi?id=143293 Reviewed by Filip Pizlo. .: * CMakeLists.txt: Set DERIVED_SOURCES_WTF_DIR for Windows. * Source/CMakeLists.txt: Don't compile bmalloc on Windows. * Source/cmake/OptionsCommon.cmake: Use the absolute path of the C preprocessor. * Source/cmake/OptionsWinCairo.cmake: Added needed definitions. * Source/cmake/OptionsWindows.cmake: Set some default values and removed support for old Visual Studio versions before /MP. * Source/cmake/WebKitFS.cmake: Make WTF DerivedSources directory. * Source/cmake/WebKitMacros.cmake: Added ADD_PRECOMPILED_HEADER macro based on http://stackoverflow.com/questions/148570/using-pre-compiled-headers-with-cmake Source/bmalloc: * bmalloc/BAssert.h: Removed ellipses from macros to appease Visual Studio. Source/JavaScriptCore: * CMakeLists.txt: Enabled using assembly on Windows. Replaced unix commands with CMake commands. * PlatformMac.cmake: Tell open source builders where to find unicode headers. Source/ThirdParty/ANGLE: * include/GLES2/gl2.h: Temporarily disabled WebGL on Windows CMake builds. Source/WebCore: * PlatformMac.cmake: Tell open source builders where to find unicode headers. * PlatformWin.cmake: Include PlatformWinCairo.cmake. * PlatformWinCairo.cmake: Added from bug 115944 by Patrick Gansterer. * bindings/js/JSDOMStringListCustom.cpp: * bindings/js/JSDOMWrapper.cpp: * bindings/js/JSMessageChannelCustom.cpp: * bindings/js/JSPopStateEventCustom.cpp: * bindings/js/JSReadableStreamCustom.cpp: * bindings/js/ReadableStreamJSSource.cpp: * bindings/js/ScriptController.cpp: * css/CSSComputedStyleDeclaration.cpp: * dom/Attr.cpp: * dom/CollectionIndexCache.cpp: * platform/graphics/ANGLEWebKitBridge.h: Fixed include quirks. Source/WebKit: * PlatformMac.cmake: Fixed some include directories. Source/WTF: * wtf/CMakeLists.txt: Don't use bmalloc on Windows yet. * wtf/FeatureDefines.h: Temporarily disabled WebGL on Windows CMake builds. * wtf/PlatformMac.cmake: Tell open source builders where to find unicode headers. Canonical link: https://commits.webkit.org/161340@main git-svn-id: https://svn.webkit.org/repository/webkit/trunk@182243 268f45cc-cd09-0410-ab3c-d52691b4dbfc
2015-04-01 18:36:43 +00:00
list(APPEND WebCoreTestSupport_LIBRARIES
Cairo::Cairo
Progress towards CMake on Windows and Mac. https://bugs.webkit.org/show_bug.cgi?id=143293 Reviewed by Filip Pizlo. .: * CMakeLists.txt: Set DERIVED_SOURCES_WTF_DIR for Windows. * Source/CMakeLists.txt: Don't compile bmalloc on Windows. * Source/cmake/OptionsCommon.cmake: Use the absolute path of the C preprocessor. * Source/cmake/OptionsWinCairo.cmake: Added needed definitions. * Source/cmake/OptionsWindows.cmake: Set some default values and removed support for old Visual Studio versions before /MP. * Source/cmake/WebKitFS.cmake: Make WTF DerivedSources directory. * Source/cmake/WebKitMacros.cmake: Added ADD_PRECOMPILED_HEADER macro based on http://stackoverflow.com/questions/148570/using-pre-compiled-headers-with-cmake Source/bmalloc: * bmalloc/BAssert.h: Removed ellipses from macros to appease Visual Studio. Source/JavaScriptCore: * CMakeLists.txt: Enabled using assembly on Windows. Replaced unix commands with CMake commands. * PlatformMac.cmake: Tell open source builders where to find unicode headers. Source/ThirdParty/ANGLE: * include/GLES2/gl2.h: Temporarily disabled WebGL on Windows CMake builds. Source/WebCore: * PlatformMac.cmake: Tell open source builders where to find unicode headers. * PlatformWin.cmake: Include PlatformWinCairo.cmake. * PlatformWinCairo.cmake: Added from bug 115944 by Patrick Gansterer. * bindings/js/JSDOMStringListCustom.cpp: * bindings/js/JSDOMWrapper.cpp: * bindings/js/JSMessageChannelCustom.cpp: * bindings/js/JSPopStateEventCustom.cpp: * bindings/js/JSReadableStreamCustom.cpp: * bindings/js/ReadableStreamJSSource.cpp: * bindings/js/ScriptController.cpp: * css/CSSComputedStyleDeclaration.cpp: * dom/Attr.cpp: * dom/CollectionIndexCache.cpp: * platform/graphics/ANGLEWebKitBridge.h: Fixed include quirks. Source/WebKit: * PlatformMac.cmake: Fixed some include directories. Source/WTF: * wtf/CMakeLists.txt: Don't use bmalloc on Windows yet. * wtf/FeatureDefines.h: Temporarily disabled WebGL on Windows CMake builds. * wtf/PlatformMac.cmake: Tell open source builders where to find unicode headers. Canonical link: https://commits.webkit.org/161340@main git-svn-id: https://svn.webkit.org/repository/webkit/trunk@182243 268f45cc-cd09-0410-ab3c-d52691b4dbfc
2015-04-01 18:36:43 +00:00
shlwapi
)