mirror of
https://github.com/SerenityOS/serenity.git
synced 2025-01-22 09:21:57 -05:00
bb2d80a2bb
With Ladybird now being its own repository, there's little reason to keep the Ladybird Android port in the SerenityOS repository. (The Qt port is useful to be able to test changes to LibWeb in lagom so it'll stay around. Similar for the AppKit port, since getting Qt on macOS is a bit annoying. But if the AppKit port is too much pain to keep working, we should toss that too. Eventually, the lagom browser ports should move out from Ladybird/ to Meta/Lagom/Contrib, but for now it might make sense to leave them where they are to keep cherry-picks from ladybird easier.)
90 lines
3.7 KiB
CMake
90 lines
3.7 KiB
CMake
include(accelerated_graphics)
|
|
set(WEBCONTENT_SOURCE_DIR ${SERENITY_SOURCE_DIR}/Userland/Services/WebContent/)
|
|
|
|
set(WEBCONTENT_SOURCES
|
|
${WEBCONTENT_SOURCE_DIR}/ConnectionFromClient.cpp
|
|
${WEBCONTENT_SOURCE_DIR}/ConsoleGlobalEnvironmentExtensions.cpp
|
|
${WEBCONTENT_SOURCE_DIR}/PageClient.cpp
|
|
${WEBCONTENT_SOURCE_DIR}/PageHost.cpp
|
|
${WEBCONTENT_SOURCE_DIR}/WebContentConsoleClient.cpp
|
|
${WEBCONTENT_SOURCE_DIR}/WebDriverConnection.cpp
|
|
../FontPlugin.cpp
|
|
../HelperProcess.cpp
|
|
../ImageCodecPlugin.cpp
|
|
../Utilities.cpp
|
|
)
|
|
|
|
if (ENABLE_QT)
|
|
qt_add_executable(WebContent ${WEBCONTENT_SOURCES})
|
|
target_sources(WebContent PRIVATE
|
|
../Qt/EventLoopImplementationQt.cpp
|
|
../Qt/EventLoopImplementationQtEventTarget.cpp
|
|
../Qt/RequestManagerQt.cpp
|
|
../Qt/StringUtils.cpp
|
|
../Qt/WebSocketQt.cpp
|
|
../Qt/WebSocketImplQt.cpp
|
|
main.cpp
|
|
)
|
|
target_link_libraries(WebContent PRIVATE Qt::Core Qt::Network)
|
|
target_compile_definitions(WebContent PRIVATE HAVE_QT=1)
|
|
|
|
if (NOT HAVE_PULSEAUDIO)
|
|
find_package(Qt6 REQUIRED COMPONENTS Multimedia)
|
|
|
|
target_sources(WebContent PRIVATE
|
|
../Qt/AudioCodecPluginQt.cpp
|
|
../Qt/AudioThread.cpp
|
|
)
|
|
|
|
target_link_libraries(WebContent PRIVATE Qt::Multimedia)
|
|
target_compile_definitions(WebContent PRIVATE HAVE_QT_MULTIMEDIA=1)
|
|
endif()
|
|
else()
|
|
set(LIB_TYPE STATIC)
|
|
if (IOS)
|
|
set(LIB_TYPE SHARED)
|
|
endif()
|
|
add_library(webcontent ${LIB_TYPE} ${WEBCONTENT_SOURCES})
|
|
target_include_directories(webcontent PRIVATE ${SERENITY_SOURCE_DIR}/Userland/Services/)
|
|
target_include_directories(webcontent PRIVATE ${SERENITY_SOURCE_DIR}/Userland/)
|
|
target_include_directories(webcontent PRIVATE ${CMAKE_CURRENT_BINARY_DIR}/..)
|
|
target_link_libraries(webcontent PRIVATE LibAudio LibCore LibFileSystem LibGfx LibIPC LibJS LibMain LibWeb LibWebSocket LibProtocol LibWebView LibImageDecoderClient)
|
|
target_sources(webcontent PUBLIC FILE_SET ladybird TYPE HEADERS
|
|
BASE_DIRS ${SERENITY_SOURCE_DIR}
|
|
FILES ../FontPlugin.h
|
|
../ImageCodecPlugin.h
|
|
)
|
|
target_sources(webcontent PUBLIC FILE_SET server TYPE HEADERS
|
|
BASE_DIRS ${SERENITY_SOURCE_DIR}/Userland/Services
|
|
FILES ${WEBCONTENT_SOURCE_DIR}/ConnectionFromClient.h
|
|
${WEBCONTENT_SOURCE_DIR}/ConsoleGlobalEnvironmentExtensions.h
|
|
${WEBCONTENT_SOURCE_DIR}/Forward.h
|
|
${WEBCONTENT_SOURCE_DIR}/PageHost.h
|
|
${WEBCONTENT_SOURCE_DIR}/WebContentConsoleClient.h
|
|
${WEBCONTENT_SOURCE_DIR}/WebDriverConnection.h
|
|
)
|
|
|
|
add_executable(WebContent main.cpp)
|
|
target_link_libraries(WebContent PRIVATE webcontent)
|
|
endif()
|
|
|
|
target_include_directories(WebContent PRIVATE ${SERENITY_SOURCE_DIR}/Userland/Services/)
|
|
target_include_directories(WebContent PRIVATE ${SERENITY_SOURCE_DIR}/Userland/)
|
|
target_include_directories(WebContent PRIVATE ${CMAKE_CURRENT_BINARY_DIR}/..)
|
|
target_link_libraries(WebContent PRIVATE LibAudio LibCore LibFileSystem LibGfx LibImageDecoderClient LibIPC LibJS LibMain LibSQL LibWeb LibWebSocket LibProtocol LibWebView LibURL)
|
|
|
|
if (HAVE_PULSEAUDIO)
|
|
target_compile_definitions(WebContent PRIVATE HAVE_PULSEAUDIO=1)
|
|
if (TARGET webcontent)
|
|
target_compile_definitions(webcontent PRIVATE HAVE_PULSEAUDIO=1)
|
|
endif()
|
|
endif()
|
|
|
|
if (HAS_ACCELERATED_GRAPHICS)
|
|
target_compile_definitions(WebContent PRIVATE HAS_ACCELERATED_GRAPHICS)
|
|
target_link_libraries(WebContent PRIVATE LibAccelGfx)
|
|
if (TARGET webcontent)
|
|
target_compile_definitions(webcontent PRIVATE HAS_ACCELERATED_GRAPHICS)
|
|
target_link_libraries(webcontent PRIVATE LibAccelGfx)
|
|
endif()
|
|
endif()
|