mirror of
https://github.com/RGBCube/serenity
synced 2025-07-28 18:47:44 +00:00
Ladybird: Add WebSocket server for use by Lagom networking
Hide its use behind the same flag as RequestServer in WebContent.
This commit is contained in:
parent
dd694215bc
commit
7d7c419ce6
15 changed files with 162 additions and 32 deletions
|
@ -56,6 +56,7 @@ executable("ladybird_executable") {
|
|||
"SQLServer",
|
||||
"WebContent",
|
||||
"WebDriver",
|
||||
"WebSocket",
|
||||
]
|
||||
deps = [
|
||||
":compile_resource_file",
|
||||
|
@ -149,12 +150,14 @@ if (current_os == "mac") {
|
|||
"SQLServer",
|
||||
"WebContent",
|
||||
"WebDriver",
|
||||
"WebSocket",
|
||||
]
|
||||
sources = [
|
||||
"$root_out_dir/bin/RequestServer",
|
||||
"$root_out_dir/bin/SQLServer",
|
||||
"$root_out_dir/bin/WebContent",
|
||||
"$root_out_dir/bin/WebDriver",
|
||||
"$root_out_dir/bin/WebSocket",
|
||||
"$root_out_dir/bin/headless-browser",
|
||||
"$root_out_dir/bin/ladybird",
|
||||
]
|
||||
|
|
21
Meta/gn/secondary/Ladybird/WebSocket/BUILD.gn
Normal file
21
Meta/gn/secondary/Ladybird/WebSocket/BUILD.gn
Normal file
|
@ -0,0 +1,21 @@
|
|||
executable("WebSocket") {
|
||||
configs += [ "//Ladybird:ladybird_config" ]
|
||||
include_dirs = [
|
||||
"//Userland/Libraries",
|
||||
"//Userland/Services",
|
||||
]
|
||||
deps = [
|
||||
"//AK",
|
||||
"//Userland/Libraries/LibCore",
|
||||
"//Userland/Libraries/LibFileSystem",
|
||||
"//Userland/Libraries/LibIPC",
|
||||
"//Userland/Libraries/LibMain",
|
||||
"//Userland/Libraries/LibProtocol",
|
||||
"//Userland/Libraries/LibTLS",
|
||||
"//Userland/Libraries/LibWebSocket",
|
||||
]
|
||||
sources = [
|
||||
"//Userland/Services/WebSocket/ConnectionFromClient.cpp",
|
||||
"main.cpp",
|
||||
]
|
||||
}
|
|
@ -22,6 +22,28 @@ compiled_action("RequestServerEndpoint") {
|
|||
]
|
||||
}
|
||||
|
||||
compiled_action("WebSocketClientEndpoint") {
|
||||
tool = "//Meta/Lagom/Tools/CodeGenerators/IPCCompiler"
|
||||
inputs = [ "//Userland/Services/WebSocket/WebSocketClient.ipc" ]
|
||||
outputs = [ "$root_gen_dir/WebSocket/WebSocketClientEndpoint.h" ]
|
||||
args = [
|
||||
rebase_path(inputs[0], root_build_dir),
|
||||
"-o",
|
||||
rebase_path(outputs[0], root_build_dir),
|
||||
]
|
||||
}
|
||||
|
||||
compiled_action("WebSocketServerEndpoint") {
|
||||
tool = "//Meta/Lagom/Tools/CodeGenerators/IPCCompiler"
|
||||
inputs = [ "//Userland/Services/WebSocket/WebSocketServer.ipc" ]
|
||||
outputs = [ "$root_gen_dir/WebSocket/WebSocketServerEndpoint.h" ]
|
||||
args = [
|
||||
rebase_path(inputs[0], root_build_dir),
|
||||
"-o",
|
||||
rebase_path(outputs[0], root_build_dir),
|
||||
]
|
||||
}
|
||||
|
||||
shared_library("LibProtocol") {
|
||||
output_name = "protocol"
|
||||
include_dirs = [
|
||||
|
@ -31,6 +53,8 @@ shared_library("LibProtocol") {
|
|||
deps = [
|
||||
":RequestClientEndpoint",
|
||||
":RequestServerEndpoint",
|
||||
":WebSocketClientEndpoint",
|
||||
":WebSocketServerEndpoint",
|
||||
"//AK",
|
||||
"//Userland/Libraries/LibCore",
|
||||
"//Userland/Libraries/LibIPC",
|
||||
|
@ -38,9 +62,11 @@ shared_library("LibProtocol") {
|
|||
sources = [
|
||||
"Request.cpp",
|
||||
"RequestClient.cpp",
|
||||
|
||||
# TODO: Add WebSocket sources + IPC
|
||||
"WebSocket.cpp",
|
||||
"WebSocketClient.cpp",
|
||||
]
|
||||
sources += get_target_outputs(":RequestClientEndpoint") +
|
||||
get_target_outputs(":RequestServerEndpoint")
|
||||
get_target_outputs(":RequestServerEndpoint") +
|
||||
get_target_outputs(":WebSocketClientEndpoint") +
|
||||
get_target_outputs(":WebSocketServerEndpoint")
|
||||
}
|
||||
|
|
|
@ -71,6 +71,7 @@ shared_library("LibWebView") {
|
|||
"StylePropertiesModel.cpp",
|
||||
"ViewImplementation.cpp",
|
||||
"WebContentClient.cpp",
|
||||
"WebSocketClientAdapter.cpp",
|
||||
]
|
||||
sources += get_target_outputs(":WebContentClientEndpoint") +
|
||||
get_target_outputs(":WebContentServerEndpoint") +
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue