summaryrefslogtreecommitdiff
path: root/Ladybird/CMakeLists.txt
diff options
context:
space:
mode:
authorTimothy Flynn <trflynn89@pm.me>2023-03-12 12:38:15 -0400
committerLinus Groh <mail@linusgroh.de>2023-03-13 07:21:00 +0000
commit11fe34ce0fb827f3bfe9c61c31b3dbe99a894233 (patch)
tree8662c62c9701ed1955d58be045f3c2e6a7a4c060 /Ladybird/CMakeLists.txt
parentadd15a5f04984592121839a27fcb59992ec1b737 (diff)
downloadserenity-11fe34ce0fb827f3bfe9c61c31b3dbe99a894233.zip
headless-browser: Re-implement headless-browser using an OOPWV
headless-browser currently uses its own PageClient to load web pages in-process. Due to this, it also needs to set up a whole bunch of other objects needed to run LibWeb, e.g. image decoders, request servers, etc. This changes headless-browser to instead implement a WebView to launch WebContent out-of-process. This implementation is almost entirely empty, but can be filled in as-needed. For example, we may want to print JavaScript console messages.
Diffstat (limited to 'Ladybird/CMakeLists.txt')
-rw-r--r--Ladybird/CMakeLists.txt9
1 files changed, 9 insertions, 0 deletions
diff --git a/Ladybird/CMakeLists.txt b/Ladybird/CMakeLists.txt
index 1b06ecf5b8..14fcccf22d 100644
--- a/Ladybird/CMakeLists.txt
+++ b/Ladybird/CMakeLists.txt
@@ -103,6 +103,15 @@ target_include_directories(ladybird PRIVATE ${CMAKE_CURRENT_BINARY_DIR})
target_include_directories(ladybird PRIVATE ${SERENITY_SOURCE_DIR}/Userland/Applications/)
target_include_directories(ladybird PRIVATE ${SERENITY_SOURCE_DIR}/Userland/Services/)
+qt_add_executable(headless-browser
+ ${SERENITY_SOURCE_DIR}/Userland/Utilities/headless-browser.cpp
+ ${SERENITY_SOURCE_DIR}/Userland/Services/WebContent/WebDriverConnection.cpp
+ HelperProcess.cpp
+ Utilities.cpp)
+
+target_include_directories(headless-browser PRIVATE ${CMAKE_CURRENT_BINARY_DIR})
+target_link_libraries(headless-browser PRIVATE Qt::Core LibWeb LibWebView LibWebSocket LibCrypto LibGemini LibHTTP LibJS LibGfx LibMain LibTLS LibIPC LibJS)
+
set_target_properties(ladybird PROPERTIES
MACOSX_BUNDLE_GUI_IDENTIFIER org.serenityos.ladybird
MACOSX_BUNDLE_BUNDLE_VERSION ${PROJECT_VERSION}