From f24c36d6b16c1ca7f57c25e20c021481d5a1cb1a Mon Sep 17 00:00:00 2001 From: BruebachL <44814898+BruebachL@users.noreply.github.com> Date: Wed, 5 Nov 2025 18:51:08 +0100 Subject: [PATCH] Core qt module for libs (#6278) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * Move logger and key signals from libcockatrice_utility to Cockatrice. Took 9 minutes * Only link Qt::Core instead of COCKATRICE_QT_MODULES to libraries, if possible. Took 2 minutes --------- Co-authored-by: Lukas BrĂ¼bach --- cmake/FindQtRuntime.cmake | 3 +++ cockatrice/CMakeLists.txt | 2 ++ .../src/interface}/key_signals.cpp | 0 .../src/interface}/key_signals.h | 0 .../src/interface}/logger.cpp | 0 .../src/interface}/logger.h | 0 .../deck_editor_database_display_widget.h | 2 +- .../deck_editor/deck_editor_deck_dock_widget.h | 2 +- .../deck_editor_filter_dock_widget.h | 2 +- .../interface/widgets/dialogs/dlg_view_log.cpp | 3 ++- .../interface/widgets/tabs/tab_deck_editor.h | 2 +- .../visual_database_display_widget.h | 2 +- cockatrice/src/interface/window_main.cpp | 2 +- cockatrice/src/main.cpp | 2 +- libcockatrice_card/CMakeLists.txt | 2 +- libcockatrice_deck_list/CMakeLists.txt | 4 +--- libcockatrice_protocol/CMakeLists.txt | 4 +--- libcockatrice_rng/CMakeLists.txt | 2 +- libcockatrice_utility/CMakeLists.txt | 17 +++++------------ 19 files changed, 23 insertions(+), 28 deletions(-) rename {libcockatrice_utility/libcockatrice/utility => cockatrice/src/interface}/key_signals.cpp (100%) rename {libcockatrice_utility/libcockatrice/utility => cockatrice/src/interface}/key_signals.h (100%) rename {libcockatrice_utility/libcockatrice/utility => cockatrice/src/interface}/logger.cpp (100%) rename {libcockatrice_utility/libcockatrice/utility => cockatrice/src/interface}/logger.h (100%) diff --git a/cmake/FindQtRuntime.cmake b/cmake/FindQtRuntime.cmake index 3025934f4..769f9b463 100644 --- a/cmake/FindQtRuntime.cmake +++ b/cmake/FindQtRuntime.cmake @@ -115,4 +115,7 @@ string(REGEX REPLACE "([^;]+)" "${COCKATRICE_QT_VERSION_NAME}::\\1" ORACLE_QT_MO string(REGEX REPLACE "([^;]+)" "${COCKATRICE_QT_VERSION_NAME}::\\1" DB_CONVERTER_QT_MODULES "${_DBCONVERTER_NEEDED}") string(REGEX REPLACE "([^;]+)" "${COCKATRICE_QT_VERSION_NAME}::\\1" TEST_QT_MODULES "${_TEST_NEEDED}") +# Core-only export (useful for headless libs) +set(QT_CORE_MODULE "${COCKATRICE_QT_VERSION_NAME}::Core") + message(STATUS "Found Qt ${${COCKATRICE_QT_VERSION_NAME}_VERSION} at: ${${COCKATRICE_QT_VERSION_NAME}_DIR}") diff --git a/cockatrice/CMakeLists.txt b/cockatrice/CMakeLists.txt index 3308b2733..9eed16ff7 100644 --- a/cockatrice/CMakeLists.txt +++ b/cockatrice/CMakeLists.txt @@ -258,6 +258,8 @@ set(cockatrice_SOURCES src/interface/widgets/tabs/visual_deck_editor/tab_deck_editor_visual.cpp src/interface/widgets/tabs/visual_deck_editor/tab_deck_editor_visual_tab_widget.cpp src/interface/widgets/tabs/visual_deck_storage/tab_deck_storage_visual.cpp + src/interface/key_signals.cpp + src/interface/logger.cpp ) add_subdirectory(sounds) diff --git a/libcockatrice_utility/libcockatrice/utility/key_signals.cpp b/cockatrice/src/interface/key_signals.cpp similarity index 100% rename from libcockatrice_utility/libcockatrice/utility/key_signals.cpp rename to cockatrice/src/interface/key_signals.cpp diff --git a/libcockatrice_utility/libcockatrice/utility/key_signals.h b/cockatrice/src/interface/key_signals.h similarity index 100% rename from libcockatrice_utility/libcockatrice/utility/key_signals.h rename to cockatrice/src/interface/key_signals.h diff --git a/libcockatrice_utility/libcockatrice/utility/logger.cpp b/cockatrice/src/interface/logger.cpp similarity index 100% rename from libcockatrice_utility/libcockatrice/utility/logger.cpp rename to cockatrice/src/interface/logger.cpp diff --git a/libcockatrice_utility/libcockatrice/utility/logger.h b/cockatrice/src/interface/logger.h similarity index 100% rename from libcockatrice_utility/libcockatrice/utility/logger.h rename to cockatrice/src/interface/logger.h diff --git a/cockatrice/src/interface/widgets/deck_editor/deck_editor_database_display_widget.h b/cockatrice/src/interface/widgets/deck_editor/deck_editor_database_display_widget.h index 07f79dc55..0add31322 100644 --- a/cockatrice/src/interface/widgets/deck_editor/deck_editor_database_display_widget.h +++ b/cockatrice/src/interface/widgets/deck_editor/deck_editor_database_display_widget.h @@ -9,13 +9,13 @@ #define DECK_EDITOR_DATABASE_DISPLAY_WIDGET_H #include "../../../interface/widgets/tabs/abstract_tab_deck_editor.h" +#include "../../key_signals.h" #include "../utility/custom_line_edit.h" #include #include #include #include -#include class AbstractTabDeckEditor; class DeckEditorDatabaseDisplayWidget : public QWidget diff --git a/cockatrice/src/interface/widgets/deck_editor/deck_editor_deck_dock_widget.h b/cockatrice/src/interface/widgets/deck_editor/deck_editor_deck_dock_widget.h index 06169aa3e..c6c3181b8 100644 --- a/cockatrice/src/interface/widgets/deck_editor/deck_editor_deck_dock_widget.h +++ b/cockatrice/src/interface/widgets/deck_editor/deck_editor_deck_dock_widget.h @@ -9,6 +9,7 @@ #define DECK_EDITOR_DECK_DOCK_WIDGET_H #include "../../../interface/widgets/tabs/abstract_tab_deck_editor.h" +#include "../../key_signals.h" #include "../utility/custom_line_edit.h" #include "../visual_deck_storage/deck_preview/deck_preview_deck_tags_display_widget.h" @@ -18,7 +19,6 @@ #include #include #include -#include class DeckListModel; class AbstractTabDeckEditor; diff --git a/cockatrice/src/interface/widgets/deck_editor/deck_editor_filter_dock_widget.h b/cockatrice/src/interface/widgets/deck_editor/deck_editor_filter_dock_widget.h index 298f6c4e5..de135460f 100644 --- a/cockatrice/src/interface/widgets/deck_editor/deck_editor_filter_dock_widget.h +++ b/cockatrice/src/interface/widgets/deck_editor/deck_editor_filter_dock_widget.h @@ -9,10 +9,10 @@ #define DECK_EDITOR_FILTER_DOCK_WIDGET_H #include "../../../interface/widgets/tabs/abstract_tab_deck_editor.h" +#include "../../key_signals.h" #include #include -#include class FilterTreeModel; class AbstractTabDeckEditor; diff --git a/cockatrice/src/interface/widgets/dialogs/dlg_view_log.cpp b/cockatrice/src/interface/widgets/dialogs/dlg_view_log.cpp index 7ad8ec9ab..0fb98bef9 100644 --- a/cockatrice/src/interface/widgets/dialogs/dlg_view_log.cpp +++ b/cockatrice/src/interface/widgets/dialogs/dlg_view_log.cpp @@ -1,12 +1,13 @@ #include "dlg_view_log.h" +#include "../../logger.h" + #include #include #include #include #include #include -#include DlgViewLog::DlgViewLog(QWidget *parent) : QDialog(parent) { diff --git a/cockatrice/src/interface/widgets/tabs/tab_deck_editor.h b/cockatrice/src/interface/widgets/tabs/tab_deck_editor.h index ec953055c..b80ce8f75 100644 --- a/cockatrice/src/interface/widgets/tabs/tab_deck_editor.h +++ b/cockatrice/src/interface/widgets/tabs/tab_deck_editor.h @@ -1,11 +1,11 @@ #ifndef WINDOW_DECKEDITOR_H #define WINDOW_DECKEDITOR_H +#include "../../key_signals.h" #include "../interface/widgets/visual_deck_storage/deck_preview/deck_preview_deck_tags_display_widget.h" #include "abstract_tab_deck_editor.h" #include -#include class CardDatabaseModel; class CardDatabaseDisplayModel; diff --git a/cockatrice/src/interface/widgets/visual_database_display/visual_database_display_widget.h b/cockatrice/src/interface/widgets/visual_database_display/visual_database_display_widget.h index 898f5ccff..c05c755f1 100644 --- a/cockatrice/src/interface/widgets/visual_database_display/visual_database_display_widget.h +++ b/cockatrice/src/interface/widgets/visual_database_display/visual_database_display_widget.h @@ -9,6 +9,7 @@ #include "../../../filters/filter_tree_model.h" #include "../../../interface/widgets/tabs/abstract_tab_deck_editor.h" +#include "../../key_signals.h" #include "../../layouts/flow_layout.h" #include "../cards/card_info_picture_with_text_overlay_widget.h" #include "../cards/card_size_widget.h" @@ -30,7 +31,6 @@ #include #include #include -#include #include inline Q_LOGGING_CATEGORY(VisualDatabaseDisplayLog, "visual_database_display"); diff --git a/cockatrice/src/interface/window_main.cpp b/cockatrice/src/interface/window_main.cpp index de6c90a98..4186f7ce7 100644 --- a/cockatrice/src/interface/window_main.cpp +++ b/cockatrice/src/interface/window_main.cpp @@ -36,6 +36,7 @@ #include "../interface/widgets/tabs/tab_game.h" #include "../interface/widgets/tabs/tab_supervisor.h" #include "../main.h" +#include "logger.h" #include "version_string.h" #include "widgets/utility/get_text_with_max.h" @@ -71,7 +72,6 @@ #include #include #include -#include #define GITHUB_PAGES_URL "https://cockatrice.github.io" #define GITHUB_CONTRIBUTORS_URL "https://github.com/Cockatrice/Cockatrice/graphs/contributors?type=c" diff --git a/cockatrice/src/main.cpp b/cockatrice/src/main.cpp index 2c79297ef..ecb915cee 100644 --- a/cockatrice/src/main.cpp +++ b/cockatrice/src/main.cpp @@ -23,6 +23,7 @@ #include "QtNetwork/QNetworkInterface" #include "client/network/update/card_spoiler/spoiler_background_updater.h" #include "client/sound_engine.h" +#include "interface/logger.h" #include "interface/pixel_map_generator.h" #include "interface/theme_manager.h" #include "interface/widgets/dialogs/dlg_settings.h" @@ -44,7 +45,6 @@ #include #include #include -#include QTranslator *translator, *qtTranslator; RNG_Abstract *rng; diff --git a/libcockatrice_card/CMakeLists.txt b/libcockatrice_card/CMakeLists.txt index 0d48bf535..7217f7bff 100644 --- a/libcockatrice_card/CMakeLists.txt +++ b/libcockatrice_card/CMakeLists.txt @@ -52,5 +52,5 @@ target_include_directories( target_link_libraries( libcockatrice_card PUBLIC libcockatrice_settings - PUBLIC ${COCKATRICE_QT_MODULES} + PUBLIC ${QT_CORE_MODULE} ) diff --git a/libcockatrice_deck_list/CMakeLists.txt b/libcockatrice_deck_list/CMakeLists.txt index 0523343f6..1e0511c01 100644 --- a/libcockatrice_deck_list/CMakeLists.txt +++ b/libcockatrice_deck_list/CMakeLists.txt @@ -25,6 +25,4 @@ add_dependencies(libcockatrice_deck_list libcockatrice_protocol) target_include_directories(libcockatrice_deck_list PUBLIC ${CMAKE_CURRENT_SOURCE_DIR}) -target_link_libraries( - libcockatrice_deck_list PUBLIC libcockatrice_protocol libcockatrice_utility ${COCKATRICE_QT_MODULES} -) +target_link_libraries(libcockatrice_deck_list PUBLIC libcockatrice_protocol libcockatrice_utility ${QT_CORE_MODULE}) diff --git a/libcockatrice_protocol/CMakeLists.txt b/libcockatrice_protocol/CMakeLists.txt index 64f1ee270..7dc0a0360 100644 --- a/libcockatrice_protocol/CMakeLists.txt +++ b/libcockatrice_protocol/CMakeLists.txt @@ -17,9 +17,7 @@ target_sources(libcockatrice_protocol PRIVATE ${SOURCES} ${HEADERS}) add_dependencies(libcockatrice_protocol libcockatrice_protocol_pb) # Link the actual generated protobuf library -target_link_libraries( - libcockatrice_protocol PUBLIC ${COCKATRICE_QT_MODULES} libcockatrice_protocol_pb libcockatrice_utility -) +target_link_libraries(libcockatrice_protocol PUBLIC ${QT_CORE_MODULE} libcockatrice_protocol_pb libcockatrice_utility) # Expose include paths target_include_directories( diff --git a/libcockatrice_rng/CMakeLists.txt b/libcockatrice_rng/CMakeLists.txt index 0e29e96f2..6ff2a4537 100644 --- a/libcockatrice_rng/CMakeLists.txt +++ b/libcockatrice_rng/CMakeLists.txt @@ -17,4 +17,4 @@ add_library( target_include_directories(libcockatrice_rng PUBLIC ${CMAKE_CURRENT_SOURCE_DIR}) -target_link_libraries(libcockatrice_rng PUBLIC ${COCKATRICE_QT_MODULES}) +target_link_libraries(libcockatrice_rng PUBLIC ${QT_CORE_MODULE}) diff --git a/libcockatrice_utility/CMakeLists.txt b/libcockatrice_utility/CMakeLists.txt index f1e1d4a62..0575c260f 100644 --- a/libcockatrice_utility/CMakeLists.txt +++ b/libcockatrice_utility/CMakeLists.txt @@ -5,27 +5,20 @@ set(CMAKE_AUTOMOC ON) set(CMAKE_AUTOUIC ON) set(CMAKE_AUTORCC ON) -set(UTILITY_SOURCES - libcockatrice/utility/expression.cpp libcockatrice/utility/key_signals.cpp libcockatrice/utility/levenshtein.cpp - libcockatrice/utility/logger.cpp libcockatrice/utility/passwordhasher.cpp +set(UTILITY_SOURCES libcockatrice/utility/expression.cpp libcockatrice/utility/levenshtein.cpp + libcockatrice/utility/passwordhasher.cpp ) set(UTILITY_HEADERS - libcockatrice/utility/color.h - libcockatrice/utility/expression.h - libcockatrice/utility/key_signals.h - libcockatrice/utility/levenshtein.h - libcockatrice/utility/logger.h - libcockatrice/utility/macros.h - libcockatrice/utility/passwordhasher.h - libcockatrice/utility/trice_limits.h + libcockatrice/utility/color.h libcockatrice/utility/expression.h libcockatrice/utility/levenshtein.h + libcockatrice/utility/macros.h libcockatrice/utility/passwordhasher.h libcockatrice/utility/trice_limits.h ) add_library(libcockatrice_utility STATIC ${UTILITY_SOURCES} ${UTILITY_HEADERS}) target_include_directories(libcockatrice_utility PUBLIC ${CMAKE_CURRENT_SOURCE_DIR}) -target_link_libraries(libcockatrice_utility PUBLIC libcockatrice_rng ${COCKATRICE_QT_MODULES}) +target_link_libraries(libcockatrice_utility PUBLIC libcockatrice_rng ${QT_CORE_MODULE}) set(ORACLE_LIBS)