From 40138a4a3b37c8b952ca785aa315e873615741bc Mon Sep 17 00:00:00 2001 From: Nico Weber Date: Tue, 2 Jan 2024 09:47:08 -0500 Subject: [PATCH] Meta/gn: Build WebContent Qt bits only if enable_qt is set With this, it's possible to build Ladybird without having Qt installed. (Previously, the build required `moc` to exist.) In fact, it's possible to build Ladybird without anything off `brew` as long as you have `ninja` and `gn` (both of which don't have any dependencies themselves and are easy to build). --- .../gn/secondary/Ladybird/WebContent/BUILD.gn | 35 +++++++++++-------- 1 file changed, 20 insertions(+), 15 deletions(-) diff --git a/Meta/gn/secondary/Ladybird/WebContent/BUILD.gn b/Meta/gn/secondary/Ladybird/WebContent/BUILD.gn index 81e79de989..810a3e3171 100644 --- a/Meta/gn/secondary/Ladybird/WebContent/BUILD.gn +++ b/Meta/gn/secondary/Ladybird/WebContent/BUILD.gn @@ -1,3 +1,4 @@ +import("//Ladybird/enable_qt.gni") import("//Ladybird/link_qt.gni") import("//Ladybird/moc_qt_objects.gni") import("//Meta/gn/build/libs/pulse/enable.gni") @@ -20,16 +21,12 @@ link_qt("WebContent_qt") { } executable("WebContent") { - configs += [ - "//Ladybird:ladybird_config", - ":WebContent_qt", - ] + configs += [ "//Ladybird:ladybird_config" ] include_dirs = [ "//Userland/Services", "//Ladybird", ] deps = [ - ":generate_moc", "//AK", "//Meta/gn/build/libs/pulse", "//Userland/Libraries/LibCore", @@ -52,15 +49,6 @@ executable("WebContent") { "//Ladybird/FontPlugin.cpp", "//Ladybird/HelperProcess.cpp", "//Ladybird/ImageCodecPlugin.cpp", - "//Ladybird/Qt/AudioCodecPluginQt.cpp", - "//Ladybird/Qt/AudioThread.cpp", - "//Ladybird/Qt/EventLoopImplementationQt.cpp", - "//Ladybird/Qt/EventLoopImplementationQtEventTarget.cpp", - "//Ladybird/Qt/RequestManagerQt.cpp", - "//Ladybird/Qt/StringUtils.cpp", - "//Ladybird/Qt/WebSocketClientManagerQt.cpp", - "//Ladybird/Qt/WebSocketImplQt.cpp", - "//Ladybird/Qt/WebSocketQt.cpp", "//Ladybird/Utilities.cpp", "//Userland/Services/WebContent/ConnectionFromClient.cpp", "//Userland/Services/WebContent/ConsoleGlobalEnvironmentExtensions.cpp", @@ -70,7 +58,24 @@ executable("WebContent") { "//Userland/Services/WebContent/WebDriverConnection.cpp", "main.cpp", ] - sources += get_target_outputs(":generate_moc") + + if (enable_qt) { + configs += [ ":WebContent_qt" ] + sources += [ + "//Ladybird/Qt/AudioCodecPluginQt.cpp", + "//Ladybird/Qt/AudioThread.cpp", + "//Ladybird/Qt/EventLoopImplementationQt.cpp", + "//Ladybird/Qt/EventLoopImplementationQtEventTarget.cpp", + "//Ladybird/Qt/RequestManagerQt.cpp", + "//Ladybird/Qt/StringUtils.cpp", + "//Ladybird/Qt/WebSocketClientManagerQt.cpp", + "//Ladybird/Qt/WebSocketImplQt.cpp", + "//Ladybird/Qt/WebSocketQt.cpp", + ] + + sources += get_target_outputs(":generate_moc") + deps += [ ":generate_moc" ] + } if (current_os == "linux" || current_os == "mac") { cflags_cc = [ "-DHAS_ACCELERATED_GRAPHICS" ]