[GTK] Fix combinations of PLATFORM(GTK) and OS(DARWIN)
authorcommit-queue@webkit.org <commit-queue@webkit.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Sun, 1 Nov 2015 14:23:21 +0000 (14:23 +0000)
committercommit-queue@webkit.org <commit-queue@webkit.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Sun, 1 Nov 2015 14:23:21 +0000 (14:23 +0000)
commitb54de6c570ac6be83d95d393c61dd5ce54b1ebbb
tree97df0571352edf41ad1f51aa181022aeecbb01e3
parente52a48f54fcddc4abf6c1ded8f568d7f0f1e96b6
[GTK] Fix combinations of PLATFORM(GTK) and OS(DARWIN)
https://bugs.webkit.org/show_bug.cgi?id=144560

Patch by Philip Chimento <philip.chimento@gmail.com> on 2015-11-01
Reviewed by Darin Adler.

Source/bmalloc:

* PlatformGTK.cmake: Added. This adds Zone.cpp to the PlatformGTK
build, on Darwin only. Since there was previously nothing for the
build system to do that was specific to the GTK platform in
bmalloc, we need to create this file.

Source/WebCore:

* platform/graphics/PlatformDisplay.cpp: Only include the
X11-specific GDK header on PLATFORM(X11). In other cases the
normal gdk.h header is needed, which would otherwise be pulled in
by gdkx.h.
* platform/graphics/opentype/OpenTypeMathData.cpp: Change check
for FourCharCode type from OS(DARWIN) to PLATFORM(COCOA). We
can't remove it altogether because OT_MAKE_TAG doesn't work for
all platforms.

Source/WebKit2:

* NetworkProcess/NetworkProcess.cpp:
(WebKit::NetworkProcess::createNetworkConnectionToWebProcess):
Change order of OS(DARWIN) and USE(UNIX_DOMAIN_SOCKETS) checks,
so that we can use Unix domain sockets even on Darwin for the GTK
platform.
* Platform/IPC/Attachment.cpp: Add USE(UNIX_DOMAIN_SOCKETS) check
to OS(DARWIN) check, in order to support GTK platform on OSX.
* Platform/IPC/Attachment.h: Change order of OS(DARWIN) and
USE(UNIX_DOMAIN_SOCKETS) checks throughout.
(IPC::Attachment::size):
(IPC::Attachment::releaseFileDescriptor):
(IPC::Attachment::fileDescriptor):
(IPC::Attachment::disposition):
(IPC::Attachment::port):
* Platform/IPC/Connection.h: Ditto.
(IPC::Connection::identifierIsNull):
(IPC::Connection::Identifier::Identifier):
(IPC::Connection::xpcConnection):
* Platform/IPC/unix/ConnectionUnix.cpp: Only use SOCK_SEQPACKET
if the platform is not GTK, because otherwise the PLATFORM(GTK)
check below is never reached.
* Platform/SharedMemory.h: Change order of OS(DARWIN) and
USE(UNIX_DOMAIN_SOCKETS) checks.
* PluginProcess/PluginProcess.cpp: Ditto.
(WebKit::PluginProcess::createWebProcessConnection):
* Shared/API/c/WKBase.h: Don't include WKBaseMac.h if building
GTK.
* UIProcess/API/C/WKNativeEvent.h: Don't use Apple API if
building GTK.
* UIProcess/Launcher/ProcessLauncher.cpp: Change to
OS(DARWIN) && !PLATFORM(GTK), in the absence of a better platform
macro such as USE(MACH).
(WebKit::ProcessLauncher::didFinishLaunchingProcess):
* UIProcess/Launcher/ProcessLauncher.h: Ditto.
* UIProcess/Network/NetworkProcessProxy.cpp: Change order of
OS(DARWIN) and PLATFORM(GTK) checks.
(WebKit::NetworkProcessProxy::networkProcessCrashedOrFailedToLaunch):
(WebKit::NetworkProcessProxy::didCreateNetworkConnectionToWebProcess):
* UIProcess/Plugins/PluginProcessProxy.cpp: Ditto.
(WebKit::PluginProcessProxy::pluginProcessCrashedOrFailedToLaunch):
(WebKit::PluginProcessProxy::didCreateWebProcessConnection):
* WebProcess/Plugins/PluginProcessConnectionManager.cpp: Ditto.
(WebKit::PluginProcessConnectionManager::getPluginProcessConnection):
* WebProcess/WebPage/WebInspector.cpp: Ditto.
(WebKit::WebInspector::createInspectorPage):
* WebProcess/WebPage/WebInspectorUI.cpp: Ditto.
(WebKit::WebInspectorUI::establishConnection):
* WebProcess/WebProcess.cpp: Ditto.
(WebKit::WebProcess::ensureNetworkProcessConnection):

Source/WTF:

* wtf/Platform.h: Don't USE(ACCELERATE) on PLATFORM(GTK).
* wtf/WorkQueue.h: Change order of OS(DARWIN) and PLATFORM(GTK)
checks so that GTK facilities are used even when building the
GTK platform on Darwin.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@191856 268f45cc-cd09-0410-ab3c-d52691b4dbfc
28 files changed:
Source/WTF/ChangeLog
Source/WTF/wtf/Platform.h
Source/WTF/wtf/WorkQueue.h
Source/WebCore/ChangeLog
Source/WebCore/platform/graphics/PlatformDisplay.cpp
Source/WebCore/platform/graphics/opentype/OpenTypeMathData.cpp
Source/WebKit2/ChangeLog
Source/WebKit2/DatabaseProcess/DatabaseProcess.cpp
Source/WebKit2/NetworkProcess/NetworkProcess.cpp
Source/WebKit2/Platform/IPC/Attachment.cpp
Source/WebKit2/Platform/IPC/Attachment.h
Source/WebKit2/Platform/IPC/Connection.h
Source/WebKit2/Platform/IPC/unix/ConnectionUnix.cpp
Source/WebKit2/Platform/SharedMemory.h
Source/WebKit2/PluginProcess/PluginProcess.cpp
Source/WebKit2/Shared/API/c/WKBase.h
Source/WebKit2/UIProcess/API/C/WKNativeEvent.h
Source/WebKit2/UIProcess/Databases/DatabaseProcessProxy.cpp
Source/WebKit2/UIProcess/Launcher/ProcessLauncher.cpp
Source/WebKit2/UIProcess/Launcher/ProcessLauncher.h
Source/WebKit2/UIProcess/Network/NetworkProcessProxy.cpp
Source/WebKit2/UIProcess/Plugins/PluginProcessProxy.cpp
Source/WebKit2/WebProcess/Plugins/PluginProcessConnectionManager.cpp
Source/WebKit2/WebProcess/WebPage/WebInspector.cpp
Source/WebKit2/WebProcess/WebPage/WebInspectorUI.cpp
Source/WebKit2/WebProcess/WebProcess.cpp
Source/bmalloc/ChangeLog
Source/bmalloc/PlatformGTK.cmake [new file with mode: 0644]