ladybird/UI/Qt/CMakeLists.txt
ayeteadoe 782cf581e4 CMake: Make Ladybird and all Services executables console applications
We set bInheritHandles to TRUE for all child processes we spawn. Some
of the types of objects that support handle inheritence is all of the
STD handles (STD_INPUT_HANDLE, STD_OUTPUT_HANDLE, STD_ERROR_HANDLE) and
the console screen buffer. This means if Ladybird and all the child
service processes it launches/communicates with our console apps, only
a single console needs to be allocated and all child process output
their logs to that single console.
2025-11-03 13:23:47 -05:00

38 lines
892 B
CMake

qt_add_executable(ladybird main.cpp)
target_sources(ladybird PRIVATE
Application.cpp
Autocomplete.cpp
BrowserWindow.cpp
FindInPageWidget.cpp
Icon.cpp
LocationEdit.cpp
Menu.cpp
Settings.cpp
StringUtils.cpp
Tab.cpp
TabBar.cpp
TVGIconEngine.cpp
WebContentView.cpp
ladybird.qrc
)
target_link_libraries(ladybird PRIVATE Qt::Core Qt::Gui Qt::Widgets)
create_ladybird_bundle(ladybird)
if (WIN32)
lagom_windows_bin(ladybird CONSOLE)
qt_generate_deploy_script(
TARGET ladybird
OUTPUT_SCRIPT ladybird_deploy_script
CONTENT "
qt_deploy_runtime_dependencies(
EXECUTABLE $<TARGET_FILE:ladybird>
PLUGINS_DIR $<TARGET_FILE_DIR:ladybird>
)
")
add_custom_command(TARGET ladybird POST_BUILD
COMMAND ${CMAKE_COMMAND}
-P ${ladybird_deploy_script}
COMMAND_EXPAND_LISTS
)
endif()