[GTK][CMake] Add support for building the NetworkProcess
authormrobinson@webkit.org <mrobinson@webkit.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Wed, 22 Jan 2014 19:00:48 +0000 (19:00 +0000)
committermrobinson@webkit.org <mrobinson@webkit.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Wed, 22 Jan 2014 19:00:48 +0000 (19:00 +0000)
https://bugs.webkit.org/show_bug.cgi?id=127195

Reviewed by Daniel Bates.

.:

* Source/cmake/OptionsGTK.cmake: Turn on the network process and give it
a name like the WebProcess.

Source/WebKit2:

* CMakeLists.txt: Add shared network process build instructions.
* PlatformEfl.cmake: Move build instructions to the platform-independent file.
* PlatformGTK.cmake: Add some files to the source lists.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@162536 268f45cc-cd09-0410-ab3c-d52691b4dbfc

ChangeLog
Source/WebKit2/CMakeLists.txt
Source/WebKit2/ChangeLog
Source/WebKit2/PlatformEfl.cmake
Source/WebKit2/PlatformGTK.cmake
Source/cmake/OptionsGTK.cmake

index 846ec99..1e0aeac 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,13 @@
+2014-01-22  Martin Robinson  <mrobinson@igalia.com>
+
+        [GTK][CMake] Add support for building the NetworkProcess
+        https://bugs.webkit.org/show_bug.cgi?id=127195
+
+        Reviewed by Daniel Bates.
+
+        * Source/cmake/OptionsGTK.cmake: Turn on the network process and give it
+        a name like the WebProcess.
+
 2014-01-20  Ryuan Choi  <ryuan.choi@samsung.com>
 
         [CMAKE] Remove Nix from CMake scripts
index 499bc78..b17f6cc 100644 (file)
@@ -674,6 +674,10 @@ set(WebProcess_LIBRARIES
     WebKit2
 )
 
+set(NetworkProcess_LIBRARIES
+    WebKit2
+)
+
 set(WebKit2_LIBRARIES
     JavaScriptCore
     WTF
@@ -713,6 +717,17 @@ if (WebKit2_WebProcess_OUTPUT_NAME)
     set_target_properties(WebProcess PROPERTIES OUTPUT_NAME ${WebKit2_WebProcess_OUTPUT_NAME})
 endif ()
 
+if (ENABLE_NETWORK_PROCESS)
+    add_executable(NetworkProcess ${NetworkProcess_SOURCES})
+    target_link_libraries(NetworkProcess ${NetworkProcess_LIBRARIES})
+    set_target_properties(NetworkProcess PROPERTIES FOLDER "WebKit")
+    install(TARGETS NetworkProcess DESTINATION "${LIBEXEC_INSTALL_DIR}")
+
+    if (WebKit2_NetworkProcess_OUTPUT_NAME)
+        set_target_properties(NetworkProcess PROPERTIES OUTPUT_NAME ${WebKit2_NetworkProcess_OUTPUT_NAME})
+    endif ()
+endif ()
+
 POPULATE_LIBRARY_VERSION(WEBKIT2)
 set_target_properties(WebKit2 PROPERTIES VERSION ${WEBKIT2_VERSION} SOVERSION ${WEBKIT2_VERSION_MAJOR})
 
index 035cbbc..6a9d862 100644 (file)
@@ -1,3 +1,14 @@
+2014-01-22  Martin Robinson  <mrobinson@igalia.com>
+
+        [GTK][CMake] Add support for building the NetworkProcess
+        https://bugs.webkit.org/show_bug.cgi?id=127195
+
+        Reviewed by Daniel Bates.
+
+        * CMakeLists.txt: Add shared network process build instructions.
+        * PlatformEfl.cmake: Move build instructions to the platform-independent file.
+        * PlatformGTK.cmake: Add some files to the source lists.
+
 2014-01-22  Carlos Garcia Campos  <cgarcia@igalia.com>
 
         REGRESSION(r162441): [GTK] ResourceLoader is broken when there aren't user extensions
index 7c97736..0728b55 100644 (file)
@@ -400,27 +400,6 @@ if (ENABLE_PLUGIN_PROCESS)
     install(TARGETS PluginProcess DESTINATION "${EXEC_INSTALL_DIR}")
 endif () # ENABLE_PLUGIN_PROCESS
 
-if (ENABLE_NETWORK_PROCESS)
-    set(NetworkProcess_EXECUTABLE_NAME NetworkProcess)
-    list(APPEND NetworkProcess_INCLUDE_DIRECTORIES
-        "${WEBKIT2_DIR}/NetworkProcess"
-    )
-
-    include_directories(${NetworkProcess_INCLUDE_DIRECTORIES})
-
-    list(APPEND NetworkProcess_SOURCES
-        ${WEBKIT2_DIR}/unix/NetworkMainUnix.cpp
-    )
-
-    set(NetworkProcess_LIBRARIES
-        WebKit2
-    )
-
-    add_executable(${NetworkProcess_EXECUTABLE_NAME} ${NetworkProcess_SOURCES})
-    target_link_libraries(${NetworkProcess_EXECUTABLE_NAME} ${NetworkProcess_LIBRARIES})
-    install(TARGETS ${NetworkProcess_EXECUTABLE_NAME} DESTINATION "${EXEC_INSTALL_DIR}")
-endif ()
-
 include_directories(${THIRDPARTY_DIR}/gtest/include)
 
 set(EWK2UnitTests_LIBRARIES
index 258a80c..bf60f1b 100644 (file)
@@ -18,6 +18,12 @@ list(APPEND WebKit2_SOURCES
     ${DERIVED_SOURCES_WEBKIT2GTK_API_DIR}/WebKitEnumTypes.cpp
     ${DERIVED_SOURCES_WEBKIT2GTK_API_DIR}/WebKitMarshal.cpp
 
+    NetworkProcess/soup/NetworkProcessSoup.cpp
+    NetworkProcess/soup/NetworkResourceLoadSchedulerSoup.cpp
+    NetworkProcess/soup/RemoteNetworkingContextSoup.cpp
+
+    NetworkProcess/unix/NetworkProcessMainUnix.cpp
+
     Platform/IPC/unix/AttachmentUnix.cpp
     Platform/IPC/unix/ConnectionUnix.cpp
 
@@ -260,6 +266,8 @@ list(APPEND WebKit2_SOURCES
     UIProcess/gtk/WebPreferencesGtk.cpp
     UIProcess/gtk/WebProcessProxyGtk.cpp
 
+    UIProcess/Network/soup/NetworkProcessProxySoup.cpp
+    UIProcess/soup/WebContextSoup.cpp
     UIProcess/soup/WebCookieManagerProxySoup.cpp
     UIProcess/soup/WebSoupRequestManagerClient.cpp
     UIProcess/soup/WebSoupRequestManagerProxy.cpp
@@ -396,6 +404,7 @@ list(APPEND WebKit2_INCLUDE_DIRECTORIES
     "${WEBKIT2_DIR}/Shared/Downloads/soup"
     "${WEBKIT2_DIR}/Shared/gtk"
     "${WEBKIT2_DIR}/Shared/soup"
+    "${WEBKIT2_DIR}/NetworkProcess/unix"
     "${WEBKIT2_DIR}/UIProcess/API/C/cairo"
     "${WEBKIT2_DIR}/UIProcess/API/C/gtk"
     "${WEBKIT2_DIR}/UIProcess/API/C/soup"
@@ -431,6 +440,10 @@ list(APPEND WebProcess_SOURCES
     gtk/MainGtk.cpp
 )
 
+list(APPEND NetworkProcess_SOURCES
+    unix/NetworkMainUnix.cpp
+)
+
 set(SharedWebKit2Libraries
     ${WebKit2_LIBRARIES}
 )
index d96f80c..93efd85 100644 (file)
@@ -74,6 +74,7 @@ WEBKIT_OPTION_DEFAULT_PORT_VALUE(ENABLE_WEB_AUDIO ON)
 WEBKIT_OPTION_DEFAULT_PORT_VALUE(ENABLE_WEB_TIMING ON)
 WEBKIT_OPTION_DEFAULT_PORT_VALUE(ENABLE_WEBGL OFF)
 WEBKIT_OPTION_DEFAULT_PORT_VALUE(ENABLE_XHR_TIMEOUT ON)
+WEBKIT_OPTION_DEFAULT_PORT_VALUE(ENABLE_NETWORK_PROCESS ON)
 WEBKIT_OPTION_DEFAULT_PORT_VALUE(WTF_USE_TILED_BACKING_STORE OFF)
 
 # FIXME: Perhaps we need a more generic way of defining dependencies between features.
@@ -119,6 +120,7 @@ set(WebCore_OUTPUT_NAME WebCoreGTK)
 set(WebKit_OUTPUT_NAME webkitgtk-3.0)
 set(WebKit2_OUTPUT_NAME webkit2gtk-3.0)
 set(WebKit2_WebProcess_OUTPUT_NAME WebKitWebProcess)
+set(WebKit2_NetworkProcess_OUTPUT_NAME WebKitNetworkProcess)
 
 set(DATA_BUILD_DIR "${CMAKE_BINARY_DIR}/share/${WebKit_OUTPUT_NAME}")
 set(DATA_INSTALL_DIR "${CMAKE_INSTALL_DATADIR}/webkitgtk-3.0")