Browse Source

CMake: Don't split GUI code into several libraries

adaptive-webui-19844
Vladimir Golovnev (Glassez) 5 years ago
parent
commit
642bf7b8a6
No known key found for this signature in database
GPG Key ID: 52A2C7DEE2DFA6F7
  1. 6
      CMakeLists.txt
  2. 13
      dist/CMakeLists.txt
  3. 2
      src/CMakeLists.txt
  4. 87
      src/app/CMakeLists.txt
  5. 312
      src/base/CMakeLists.txt
  6. 7
      src/base/preferences.cpp
  7. 299
      src/gui/CMakeLists.txt
  8. 11
      src/gui/log/CMakeLists.txt
  9. 23
      src/gui/powermanagement/CMakeLists.txt
  10. 84
      src/gui/properties/CMakeLists.txt
  11. 12
      src/gui/qtnotify/CMakeLists.txt
  12. 40
      src/gui/rss/CMakeLists.txt
  13. 49
      src/gui/search/CMakeLists.txt

6
CMakeLists.txt

@ -2,7 +2,7 @@ cmake_minimum_required(VERSION 3.16 FATAL_ERROR) @@ -2,7 +2,7 @@ cmake_minimum_required(VERSION 3.16 FATAL_ERROR)
message(AUTHOR_WARNING "If the build fails, please try the autotools/qmake method.")
if(POLICY CMP0074)
if (POLICY CMP0074)
cmake_policy(SET CMP0074 NEW)
endif()
@ -45,9 +45,9 @@ set(requiredQtVersion 5.9.0) @@ -45,9 +45,9 @@ set(requiredQtVersion 5.9.0)
set(requiredOpensslVersion 1.0)
set(requiredLibtorrentVersion 1.1.10)
if(WIN32)
if (WIN32)
include(winconf)
endif(WIN32)
endif()
# we need options here, at the top level, because they are used not only in "src" subdir, but in the "dist" dir too

13
dist/CMakeLists.txt vendored

@ -2,11 +2,8 @@ find_package(Qt5Widgets ${requiredQtVersion}) # to conditionally install desktop @@ -2,11 +2,8 @@ find_package(Qt5Widgets ${requiredQtVersion}) # to conditionally install desktop
if (APPLE)
add_subdirectory(mac)
else (APPLE)
if (UNIX)
add_subdirectory(unix)
endif (UNIX)
if (WIN32)
add_subdirectory(windows)
endif (WIN32)
endif (APPLE)
elseif (UNIX)
add_subdirectory(unix)
elseif (WIN32)
add_subdirectory(windows)
endif()

2
src/CMakeLists.txt

@ -37,7 +37,7 @@ if (APPLE) @@ -37,7 +37,7 @@ if (APPLE)
# Workaround CMake bug (autogen does not pass required parameters to moc)
# Relevant issue: https://gitlab.kitware.com/cmake/cmake/issues/18041
list(APPEND CMAKE_AUTOMOC_MOC_OPTIONS -DQ_OS_MACOS -DQ_OS_DARWIN)
endif ()
endif()
include_directories(${CMAKE_CURRENT_SOURCE_DIR})

87
src/app/CMakeLists.txt

@ -1,27 +1,24 @@ @@ -1,27 +1,24 @@
add_executable(qBittorrent
# headers
application.h
applicationinstancemanager.h
cmdoptions.h
filelogger.h
qtlocalpeer/qtlocalpeer.h
upgrade.h
# sources
application.cpp
applicationinstancemanager.cpp
cmdoptions.cpp
filelogger.cpp
main.cpp
qtlocalpeer/qtlocalpeer.cpp
upgrade.cpp
# headers
application.h
applicationinstancemanager.h
cmdoptions.h
filelogger.h
qtlocalpeer/qtlocalpeer.h
upgrade.h
# sources
application.cpp
applicationinstancemanager.cpp
cmdoptions.cpp
filelogger.cpp
main.cpp
qtlocalpeer/qtlocalpeer.cpp
upgrade.cpp
)
target_include_directories(qBittorrent PRIVATE ${CMAKE_CURRENT_BINARY_DIR})
target_link_libraries(qBittorrent
PRIVATE
qbt_base
)
target_link_libraries(qBittorrent PRIVATE qbt_base)
set_target_properties(qBittorrent
PROPERTIES
@ -42,8 +39,8 @@ if (NOT DISABLE_WEBUI) @@ -42,8 +39,8 @@ if (NOT DISABLE_WEBUI)
endif()
set(QBT_APP_RESOURCES
../icons/icons.qrc
../searchengine/searchengine.qrc
../icons/icons.qrc
../searchengine/searchengine.qrc
)
# With AUTORCC rcc is ran by cmake before language files are generated,
@ -53,49 +50,53 @@ qt5_add_resources(QBT_APP_RESOURCE_SOURCE ${QBT_APP_RESOURCES}) @@ -53,49 +50,53 @@ qt5_add_resources(QBT_APP_RESOURCE_SOURCE ${QBT_APP_RESOURCES})
if (WIN32)
if (MINGW)
target_sources(qBittorrent PRIVATE ../qbittorrent_mingw.rc)
else (MINGW)
else()
target_sources(qBittorrent PRIVATE ../qbittorrent.rc)
endif (MINGW)
endif()
target_sources(qBittorrent PRIVATE ../qbittorrent.exe.manifest)
endif (WIN32)
endif()
if (STACKTRACE)
if (UNIX)
target_sources(qBittorrent PRIVATE stacktrace.h)
else (UNIX)
else()
target_sources(qBittorrent PRIVATE stacktrace_win.h)
if (Qt5Widgets_FOUND)
target_sources(qBittorrent PRIVATE stacktracedialog.cpp stacktracedialog.h)
endif (Qt5Widgets_FOUND)
endif()
if (MSVC)
if (NOT "${WINXXBITS}" STREQUAL "Win64")
# i686 arch requires frame pointer preservation
add_compile_options(-Oy-)
endif (NOT "${WINXXBITS}" STREQUAL "Win64")
endif()
add_compile_options(-Zi)
target_link_libraries(qBittorrent PUBLIC dbghelp -DEBUG)
else (MSVC)
else()
if (NOT "${WINXXBITS}" STREQUAL "Win64")
add_compile_options(-fno-omit-frame-pointer)
endif (NOT "${WINXXBITS}" STREQUAL "Win64")
endif()
target_link_libraries(qBittorrent PUBLIC dbghelp -Wl,--export-all-symbols)
endif (MSVC)
endif (UNIX)
endif (STACKTRACE)
endif()
endif()
endif()
if (Qt5Widgets_FOUND)
target_link_libraries(qBittorrent PRIVATE qbt_searchengine qbt_gui)
target_link_libraries(qBittorrent PRIVATE qbt_gui)
set_target_properties(qBittorrent
PROPERTIES
OUTPUT_NAME qbittorrent
WIN32_EXECUTABLE True
)
else(Qt5Widgets_FOUND)
else()
set_target_properties(qBittorrent
PROPERTIES
OUTPUT_NAME qbittorrent-nox
)
endif (Qt5Widgets_FOUND)
endif()
if (NOT DISABLE_WEBUI)
target_link_libraries(qBittorrent PRIVATE qbt_webui)
@ -127,9 +128,8 @@ if (APPLE) @@ -127,9 +128,8 @@ if (APPLE)
${QT_TR_DIR}/qt_zh_CN.qm
)
list(APPEND QBT_APP_RESOURCE_SOURCE ${QT_TRANSLATIONS})
set_source_files_properties(${QT_TRANSLATIONS}
PROPERTIES MACOSX_PACKAGE_LOCATION translations)
endif (APPLE)
set_source_files_properties(${QT_TRANSLATIONS} PROPERTIES MACOSX_PACKAGE_LOCATION translations)
endif()
target_sources(qBittorrent PRIVATE ${QBT_QM_FILES} ${QBT_APP_RESOURCE_SOURCE})
@ -138,7 +138,7 @@ get_target_property(QBT_EXECUTABLE_NAME qBittorrent OUTPUT_NAME) @@ -138,7 +138,7 @@ get_target_property(QBT_EXECUTABLE_NAME qBittorrent OUTPUT_NAME)
if (APPLE)
set(qbt_BUNDLE_NAME ${QBT_EXECUTABLE_NAME})
# substitute @EXECUTABLE@ in dist/mac/Info.plist
# substitute @EXECUTABLE@ in dist/mac/Info.plist
set(EXECUTABLE ${qbt_BUNDLE_NAME})
configure_file(${qBittorrent_SOURCE_DIR}/dist/mac/Info.plist ${qBittorrent_BINARY_DIR}/dist/mac/Info.plist @ONLY)
@ -146,15 +146,16 @@ if (APPLE) @@ -146,15 +146,16 @@ if (APPLE)
MACOSX_BUNDLE_BUNDLE_NAME "${qbt_BUNDLE_NAME}"
MACOSX_BUNDLE_INFO_PLIST ${qBittorrent_BINARY_DIR}/dist/mac/Info.plist
)
endif (APPLE)
endif()
# installation
install(TARGETS qBittorrent
RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
BUNDLE DESTINATION .
COMPONENT runtime)
COMPONENT runtime
)
if (Qt5Widgets_FOUND AND APPLE)
find_package(Qt5Svg REQUIRED)
include(bundle)
endif (Qt5Widgets_FOUND AND APPLE)
endif()

312
src/base/CMakeLists.txt

@ -1,159 +1,159 @@ @@ -1,159 +1,159 @@
find_package(ZLIB 1.2.5.2 REQUIRED)
add_library(qbt_base STATIC
# headers
bittorrent/addtorrentparams.h
bittorrent/cachestatus.h
bittorrent/downloadpriority.h
bittorrent/infohash.h
bittorrent/magneturi.h
bittorrent/peeraddress.h
bittorrent/peerinfo.h
bittorrent/private/bandwidthscheduler.h
bittorrent/private/filterparserthread.h
bittorrent/private/ltunderlyingtype.h
bittorrent/private/nativesessionextension.h
bittorrent/private/nativetorrentextension.h
bittorrent/private/portforwarderimpl.h
bittorrent/private/resumedatasavingmanager.h
bittorrent/private/speedmonitor.h
bittorrent/private/statistics.h
bittorrent/session.h
bittorrent/sessionstatus.h
bittorrent/torrentcreatorthread.h
bittorrent/torrenthandle.h
bittorrent/torrenthandleimpl.h
bittorrent/torrentinfo.h
bittorrent/tracker.h
bittorrent/trackerentry.h
http/connection.h
http/httperror.h
http/irequesthandler.h
http/requestparser.h
http/responsebuilder.h
http/responsegenerator.h
http/server.h
http/types.h
net/dnsupdater.h
net/downloadmanager.h
net/geoipmanager.h
net/portforwarder.h
net/private/downloadhandlerimpl.h
net/private/geoipdatabase.h
net/proxyconfigurationmanager.h
net/reverseresolution.h
net/smtp.h
private/profile_p.h
rss/private/rss_parser.h
rss/rss_article.h
rss/rss_autodownloader.h
rss/rss_autodownloadrule.h
rss/rss_feed.h
rss/rss_folder.h
rss/rss_item.h
rss/rss_session.h
search/searchdownloadhandler.h
search/searchhandler.h
search/searchpluginmanager.h
utils/bytearray.h
utils/foreignapps.h
utils/fs.h
utils/gzip.h
utils/io.h
utils/misc.h
utils/net.h
utils/password.h
utils/random.h
utils/string.h
utils/version.h
algorithm.h
asyncfilestorage.h
exceptions.h
filesystemwatcher.h
global.h
iconprovider.h
indexrange.h
logger.h
preferences.h
profile.h
scanfoldersmodel.h
settingsstorage.h
torrentfileguard.h
torrentfilter.h
tristatebool.h
types.h
unicodestrings.h
# headers
bittorrent/addtorrentparams.h
bittorrent/cachestatus.h
bittorrent/downloadpriority.h
bittorrent/infohash.h
bittorrent/magneturi.h
bittorrent/peeraddress.h
bittorrent/peerinfo.h
bittorrent/private/bandwidthscheduler.h
bittorrent/private/filterparserthread.h
bittorrent/private/ltunderlyingtype.h
bittorrent/private/nativesessionextension.h
bittorrent/private/nativetorrentextension.h
bittorrent/private/portforwarderimpl.h
bittorrent/private/resumedatasavingmanager.h
bittorrent/private/speedmonitor.h
bittorrent/private/statistics.h
bittorrent/session.h
bittorrent/sessionstatus.h
bittorrent/torrentcreatorthread.h
bittorrent/torrenthandle.h
bittorrent/torrenthandleimpl.h
bittorrent/torrentinfo.h
bittorrent/tracker.h
bittorrent/trackerentry.h
http/connection.h
http/httperror.h
http/irequesthandler.h
http/requestparser.h
http/responsebuilder.h
http/responsegenerator.h
http/server.h
http/types.h
net/dnsupdater.h
net/downloadmanager.h
net/geoipmanager.h
net/portforwarder.h
net/private/downloadhandlerimpl.h
net/private/geoipdatabase.h
net/proxyconfigurationmanager.h
net/reverseresolution.h
net/smtp.h
private/profile_p.h
rss/private/rss_parser.h
rss/rss_article.h
rss/rss_autodownloader.h
rss/rss_autodownloadrule.h
rss/rss_feed.h
rss/rss_folder.h
rss/rss_item.h
rss/rss_session.h
search/searchdownloadhandler.h
search/searchhandler.h
search/searchpluginmanager.h
utils/bytearray.h
utils/foreignapps.h
utils/fs.h
utils/gzip.h
utils/io.h
utils/misc.h
utils/net.h
utils/password.h
utils/random.h
utils/string.h
utils/version.h
algorithm.h
asyncfilestorage.h
exceptions.h
filesystemwatcher.h
global.h
iconprovider.h
indexrange.h
logger.h
preferences.h
profile.h
scanfoldersmodel.h
settingsstorage.h
torrentfileguard.h
torrentfilter.h
tristatebool.h
types.h
unicodestrings.h
# sources
bittorrent/downloadpriority.cpp
bittorrent/infohash.cpp
bittorrent/magneturi.cpp
bittorrent/peeraddress.cpp
bittorrent/peerinfo.cpp
bittorrent/private/bandwidthscheduler.cpp
bittorrent/private/filterparserthread.cpp
bittorrent/private/nativesessionextension.cpp
bittorrent/private/nativetorrentextension.cpp
bittorrent/private/portforwarderimpl.cpp
bittorrent/private/resumedatasavingmanager.cpp
bittorrent/private/speedmonitor.cpp
bittorrent/private/statistics.cpp
bittorrent/session.cpp
bittorrent/torrentcreatorthread.cpp
bittorrent/torrenthandle.cpp
bittorrent/torrenthandleimpl.cpp
bittorrent/torrentinfo.cpp
bittorrent/tracker.cpp
bittorrent/trackerentry.cpp
http/connection.cpp
http/httperror.cpp
http/requestparser.cpp
http/responsebuilder.cpp
http/responsegenerator.cpp
http/server.cpp
net/dnsupdater.cpp
net/downloadmanager.cpp
net/geoipmanager.cpp
net/portforwarder.cpp
net/private/downloadhandlerimpl.cpp
net/private/geoipdatabase.cpp
net/proxyconfigurationmanager.cpp
net/reverseresolution.cpp
net/smtp.cpp
private/profile_p.cpp
rss/private/rss_parser.cpp
rss/rss_article.cpp
rss/rss_autodownloader.cpp
rss/rss_autodownloadrule.cpp
rss/rss_feed.cpp
rss/rss_folder.cpp
rss/rss_item.cpp
rss/rss_session.cpp
search/searchdownloadhandler.cpp
search/searchhandler.cpp
search/searchpluginmanager.cpp
utils/bytearray.cpp
utils/foreignapps.cpp
utils/fs.cpp
utils/gzip.cpp
utils/io.cpp
utils/misc.cpp
utils/net.cpp
utils/password.cpp
utils/random.cpp
utils/string.cpp
asyncfilestorage.cpp
exceptions.cpp
filesystemwatcher.cpp
iconprovider.cpp
logger.cpp
preferences.cpp
profile.cpp
scanfoldersmodel.cpp
settingsstorage.cpp
torrentfileguard.cpp
torrentfilter.cpp
tristatebool.cpp
# sources
bittorrent/downloadpriority.cpp
bittorrent/infohash.cpp
bittorrent/magneturi.cpp
bittorrent/peeraddress.cpp
bittorrent/peerinfo.cpp
bittorrent/private/bandwidthscheduler.cpp
bittorrent/private/filterparserthread.cpp
bittorrent/private/nativesessionextension.cpp
bittorrent/private/nativetorrentextension.cpp
bittorrent/private/portforwarderimpl.cpp
bittorrent/private/resumedatasavingmanager.cpp
bittorrent/private/speedmonitor.cpp
bittorrent/private/statistics.cpp
bittorrent/session.cpp
bittorrent/torrentcreatorthread.cpp
bittorrent/torrenthandle.cpp
bittorrent/torrenthandleimpl.cpp
bittorrent/torrentinfo.cpp
bittorrent/tracker.cpp
bittorrent/trackerentry.cpp
http/connection.cpp
http/httperror.cpp
http/requestparser.cpp
http/responsebuilder.cpp
http/responsegenerator.cpp
http/server.cpp
net/dnsupdater.cpp
net/downloadmanager.cpp
net/geoipmanager.cpp
net/portforwarder.cpp
net/private/downloadhandlerimpl.cpp
net/private/geoipdatabase.cpp
net/proxyconfigurationmanager.cpp
net/reverseresolution.cpp
net/smtp.cpp
private/profile_p.cpp
rss/private/rss_parser.cpp
rss/rss_article.cpp
rss/rss_autodownloader.cpp
rss/rss_autodownloadrule.cpp
rss/rss_feed.cpp
rss/rss_folder.cpp
rss/rss_item.cpp
rss/rss_session.cpp
search/searchdownloadhandler.cpp
search/searchhandler.cpp
search/searchpluginmanager.cpp
utils/bytearray.cpp
utils/foreignapps.cpp
utils/fs.cpp
utils/gzip.cpp
utils/io.cpp
utils/misc.cpp
utils/net.cpp
utils/password.cpp
utils/random.cpp
utils/string.cpp
asyncfilestorage.cpp
exceptions.cpp
filesystemwatcher.cpp
iconprovider.cpp
logger.cpp
preferences.cpp
profile.cpp
scanfoldersmodel.cpp
settingsstorage.cpp
torrentfileguard.cpp
torrentfilter.cpp
tristatebool.cpp
)
target_link_libraries(qbt_base
@ -164,17 +164,13 @@ target_link_libraries(qbt_base @@ -164,17 +164,13 @@ target_link_libraries(qbt_base
Qt5::Core Qt5::Network Qt5::Xml
)
if (Qt5Widgets_FOUND)
target_link_libraries(qbt_base PUBLIC Qt5::Gui Qt5::Widgets)
endif (Qt5Widgets_FOUND)
if (Qt5DBus_FOUND)
target_link_libraries(qbt_base PRIVATE Qt5::DBus)
endif ()
endif()
if (APPLE)
find_library(IOKit_LIBRARY IOKit)
find_library(Carbon_LIBRARY Carbon)
find_library(AppKit_LIBRARY AppKit)
target_link_libraries(qbt_base PRIVATE ${Carbon_LIBRARY} ${IOKit_LIBRARY} ${AppKit_LIBRARY})
endif (APPLE)
endif()

7
src/base/preferences.cpp

@ -38,6 +38,7 @@ @@ -38,6 +38,7 @@
#include <shlobj.h>
#endif
#include <QCoreApplication>
#include <QDateTime>
#include <QDir>
#include <QLocale>
@ -47,12 +48,6 @@ @@ -47,12 +48,6 @@
#include <QTime>
#include <QVariant>
#ifndef DISABLE_GUI
#include <QApplication>
#else
#include <QCoreApplication>
#endif
#ifdef Q_OS_WIN
#include <QRegularExpression>
#endif

299
src/gui/CMakeLists.txt

@ -1,176 +1,165 @@ @@ -1,176 +1,165 @@
set(CMAKE_AUTORCC True)
set(CMAKE_AUTOUIC True)
add_library(qbt_gui_headers INTERFACE)
target_include_directories(qbt_gui_headers INTERFACE ${CMAKE_CURRENT_SOURCE_DIR})
add_library(qbt_gui STATIC
# headers
aboutdialog.h
addnewtorrentdialog.h
advancedsettings.h
autoexpandabledialog.h
banlistoptionsdialog.h
categoryfiltermodel.h
categoryfilterproxymodel.h
categoryfilterwidget.h
cookiesdialog.h
cookiesmodel.h
deletionconfirmationdialog.h
downloadfromurldialog.h
executionlogwidget.h
fspathedit.h
hidabletabwidget.h
ipsubnetwhitelistoptionsdialog.h
lineedit.h
mainwindow.h
optionsdialog.h
previewlistdelegate.h
previewselectdialog.h
private/fspathedit_p.h
private/tristatewidget.h
raisedmessagebox.h
scanfoldersdelegate.h
shutdownconfirmdialog.h
speedlimitdialog.h
statsdialog.h
statusbar.h
tagfiltermodel.h
tagfilterproxymodel.h
tagfilterwidget.h
torrentcategorydialog.h
torrentcontentfiltermodel.h
torrentcontentmodel.h
torrentcontentmodelfile.h
torrentcontentmodelfolder.h
torrentcontentmodelitem.h
torrentcontenttreeview.h
torrentcreatordialog.h
trackerentriesdialog.h
transferlistdelegate.h
transferlistfilterswidget.h
transferlistmodel.h
transferlistsortmodel.h
transferlistwidget.h
tristateaction.h
uithememanager.h
updownratiodialog.h
utils.h
# sources
aboutdialog.cpp
addnewtorrentdialog.cpp
advancedsettings.cpp
autoexpandabledialog.cpp
banlistoptionsdialog.cpp
categoryfiltermodel.cpp
categoryfilterproxymodel.cpp
categoryfilterwidget.cpp
cookiesdialog.cpp
cookiesmodel.cpp
deletionconfirmationdialog.cpp
downloadfromurldialog.cpp
executionlogwidget.cpp
fspathedit.cpp
hidabletabwidget.cpp
ipsubnetwhitelistoptionsdialog.cpp
lineedit.cpp
mainwindow.cpp
optionsdialog.cpp
previewlistdelegate.cpp
previewselectdialog.cpp
private/fspathedit_p.cpp
private/tristatewidget.cpp
raisedmessagebox.cpp
scanfoldersdelegate.cpp
shutdownconfirmdialog.cpp
speedlimitdialog.cpp
statsdialog.cpp
statusbar.cpp
tagfiltermodel.cpp
tagfilterproxymodel.cpp
tagfilterwidget.cpp
torrentcategorydialog.cpp
torrentcontentfiltermodel.cpp
torrentcontentmodel.cpp
torrentcontentmodelfile.cpp
torrentcontentmodelfolder.cpp
torrentcontentmodelitem.cpp
torrentcontenttreeview.cpp
torrentcreatordialog.cpp
trackerentriesdialog.cpp
transferlistdelegate.cpp
transferlistfilterswidget.cpp
transferlistmodel.cpp
transferlistsortmodel.cpp
transferlistwidget.cpp
tristateaction.cpp
uithememanager.cpp
updownratiodialog.cpp
utils.cpp
# forms
aboutdialog.ui
addnewtorrentdialog.ui
autoexpandabledialog.ui
banlistoptionsdialog.ui
cookiesdialog.ui
deletionconfirmationdialog.ui
downloadfromurldialog.ui
executionlogwidget.ui
ipsubnetwhitelistoptionsdialog.ui
mainwindow.ui
optionsdialog.ui
previewselectdialog.ui
shutdownconfirmdialog.ui
speedlimitdialog.ui
statsdialog.ui
torrentcategorydialog.ui
torrentcreatordialog.ui
trackerentriesdialog.ui
updownratiodialog.ui
# resources
about.qrc
)
if (WIN32 OR APPLE)
target_sources(qbt_gui PRIVATE programupdater.h programupdater.cpp)
endif()
add_subdirectory(log)
add_subdirectory(properties)
add_subdirectory(powermanagement)
add_subdirectory(rss)
add_subdirectory(search)
add_library(qbt_gui STATIC
# headers
aboutdialog.h
addnewtorrentdialog.h
advancedsettings.h
autoexpandabledialog.h
banlistoptionsdialog.h
categoryfiltermodel.h
categoryfilterproxymodel.h
categoryfilterwidget.h
cookiesdialog.h
cookiesmodel.h
deletionconfirmationdialog.h
downloadfromurldialog.h
executionlogwidget.h
fspathedit.h
hidabletabwidget.h
ipsubnetwhitelistoptionsdialog.h
lineedit.h
log/logfiltermodel.h
log/loglistview.h
log/logmodel.h
mainwindow.h
optionsdialog.h
previewlistdelegate.h
previewselectdialog.h
private/fspathedit_p.h
private/tristatewidget.h
raisedmessagebox.h
scanfoldersdelegate.h
shutdownconfirmdialog.h
speedlimitdialog.h
statsdialog.h
statusbar.h
tagfiltermodel.h
tagfilterproxymodel.h
tagfilterwidget.h
torrentcategorydialog.h
torrentcontentfiltermodel.h
torrentcontentmodel.h
torrentcontentmodelfile.h
torrentcontentmodelfolder.h
torrentcontentmodelitem.h
torrentcontenttreeview.h
torrentcreatordialog.h
trackerentriesdialog.h
transferlistdelegate.h
transferlistfilterswidget.h
transferlistmodel.h
transferlistsortmodel.h
transferlistwidget.h
tristateaction.h
uithememanager.h
updownratiodialog.h
utils.h
# sources
aboutdialog.cpp
addnewtorrentdialog.cpp
advancedsettings.cpp
autoexpandabledialog.cpp
banlistoptionsdialog.cpp
categoryfiltermodel.cpp
categoryfilterproxymodel.cpp
categoryfilterwidget.cpp
cookiesdialog.cpp
cookiesmodel.cpp
deletionconfirmationdialog.cpp
downloadfromurldialog.cpp
executionlogwidget.cpp
fspathedit.cpp
hidabletabwidget.cpp
ipsubnetwhitelistoptionsdialog.cpp
lineedit.cpp
log/logfiltermodel.cpp
log/loglistview.cpp
log/logmodel.cpp
mainwindow.cpp
optionsdialog.cpp
previewlistdelegate.cpp
previewselectdialog.cpp
private/fspathedit_p.cpp
private/tristatewidget.cpp
raisedmessagebox.cpp
scanfoldersdelegate.cpp
shutdownconfirmdialog.cpp
speedlimitdialog.cpp
statsdialog.cpp
statusbar.cpp
tagfiltermodel.cpp
tagfilterproxymodel.cpp
tagfilterwidget.cpp
torrentcategorydialog.cpp
torrentcontentfiltermodel.cpp
torrentcontentmodel.cpp
torrentcontentmodelfile.cpp
torrentcontentmodelfolder.cpp
torrentcontentmodelitem.cpp
torrentcontenttreeview.cpp
torrentcreatordialog.cpp
trackerentriesdialog.cpp
transferlistdelegate.cpp
transferlistfilterswidget.cpp
transferlistmodel.cpp
transferlistsortmodel.cpp
transferlistwidget.cpp
tristateaction.cpp
uithememanager.cpp
updownratiodialog.cpp
utils.cpp
# forms
aboutdialog.ui
addnewtorrentdialog.ui
autoexpandabledialog.ui
banlistoptionsdialog.ui
cookiesdialog.ui
deletionconfirmationdialog.ui
downloadfromurldialog.ui
executionlogwidget.ui
ipsubnetwhitelistoptionsdialog.ui
mainwindow.ui
optionsdialog.ui
previewselectdialog.ui
shutdownconfirmdialog.ui
speedlimitdialog.ui
statsdialog.ui
torrentcategorydialog.ui
torrentcreatordialog.ui
trackerentriesdialog.ui
updownratiodialog.ui
)
if (UNIX AND Qt5DBus_FOUND)
add_subdirectory(qtnotify)
target_link_libraries(qbt_gui PRIVATE Qt5::DBus)
endif()
target_link_libraries(qbt_gui
PRIVATE
qbt_powermanagement qbt_rss qbt_properties qbt_searchengine
qbt_base
PUBLIC
Qt5::Gui Qt5::Widgets
)
target_include_directories(qbt_gui
PRIVATE ../app
PUBLIC ${CMAKE_CURRENT_SOURCE_DIR}
)
if (UNIX AND Qt5DBus_FOUND)
add_subdirectory(qtnotify)
target_link_libraries(qbt_gui PRIVATE qbt_qtnotify)
endif (UNIX AND Qt5DBus_FOUND)
if (APPLE)
target_sources(qbt_gui PRIVATE macutilities.h macutilities.mm)
find_package(Qt5 ${requiredQtVersion} REQUIRED COMPONENTS MacExtras)
target_link_libraries(qbt_gui PRIVATE Qt5::MacExtras objc)
endif (APPLE)
if (WIN32 OR APPLE)
target_sources(qbt_gui PRIVATE programupdater.h programupdater.cpp)
endif (WIN32 OR APPLE)
qbt_target_sources(qBittorrent PRIVATE about.qrc)
endif()
if(WIN32)
if (WIN32)
find_package(Qt5 ${requiredQtVersion} REQUIRED COMPONENTS WinExtras)
target_link_libraries(qbt_gui PRIVATE Qt5::WinExtras)
endif(WIN32)
target_link_libraries(qbt_gui PRIVATE Qt5::WinExtras PowrProf)
endif()

11
src/gui/log/CMakeLists.txt

@ -0,0 +1,11 @@ @@ -0,0 +1,11 @@
target_sources(qbt_gui PRIVATE
# headers
logfiltermodel.h
loglistview.h
logmodel.h
#sources
logfiltermodel.cpp
loglistview.cpp
logmodel.cpp
)

23
src/gui/powermanagement/CMakeLists.txt

@ -1,23 +1,8 @@ @@ -1,23 +1,8 @@
add_library(qbt_powermanagement STATIC
# headers
powermanagement.h
# sources
powermanagement.cpp
)
target_link_libraries(qbt_powermanagement PUBLIC Qt5::Core)
set_target_properties(qbt_powermanagement PROPERTIES AUTOUIC False AUTORCC False)
target_include_directories(qbt_powermanagement PUBLIC ${CMAKE_CURRENT_SOURCE_DIR})
target_sources(qbt_gui PRIVATE powermanagement.h powermanagement.cpp)
if (UNIX AND Qt5DBus_FOUND)
find_package(X11)
if (X11_FOUND)
target_sources(qbt_powermanagement PRIVATE powermanagement_x11.h powermanagement_x11.cpp)
target_link_libraries(qbt_powermanagement PRIVATE Qt5::DBus)
endif (X11_FOUND)
endif (UNIX AND Qt5DBus_FOUND)
if (WIN32)
target_link_libraries(qbt_powermanagement PRIVATE PowrProf)
endif (WIN32)
target_sources(qbt_gui PRIVATE powermanagement_x11.h powermanagement_x11.cpp)
endif()
endif()

84
src/gui/properties/CMakeLists.txt

@ -1,52 +1,38 @@ @@ -1,52 +1,38 @@
add_library(qbt_properties STATIC
# headers
downloadedpiecesbar.h
peerlistdelegate.h
peerlistsortmodel.h
peerlistwidget.h
peersadditiondialog.h
pieceavailabilitybar.h
piecesbar.h
propertieswidget.h
proplistdelegate.h
proptabbar.h
speedplotview.h
speedwidget.h
trackerlistwidget.h
trackersadditiondialog.h
target_sources(qbt_gui PRIVATE
# headers
downloadedpiecesbar.h
peerlistdelegate.h
peerlistsortmodel.h
peerlistwidget.h
peersadditiondialog.h
pieceavailabilitybar.h
piecesbar.h
propertieswidget.h
proplistdelegate.h
proptabbar.h
speedplotview.h
speedwidget.h
trackerlistwidget.h
trackersadditiondialog.h
# sources
downloadedpiecesbar.cpp
peerlistdelegate.cpp
peerlistsortmodel.cpp
peerlistwidget.cpp
peersadditiondialog.cpp
pieceavailabilitybar.cpp
piecesbar.cpp
propertieswidget.cpp
proplistdelegate.cpp
proptabbar.cpp
speedplotview.cpp
speedwidget.cpp
trackerlistwidget.cpp
trackersadditiondialog.cpp
# sources
downloadedpiecesbar.cpp
peerlistdelegate.cpp
peerlistsortmodel.cpp
peerlistwidget.cpp
peersadditiondialog.cpp
pieceavailabilitybar.cpp
piecesbar.cpp
propertieswidget.cpp
proplistdelegate.cpp
proptabbar.cpp
speedplotview.cpp
speedwidget.cpp
trackerlistwidget.cpp
trackersadditiondialog.cpp
# forms
peersadditiondialog.ui
propertieswidget.ui
trackersadditiondialog.ui
)
target_link_libraries(qbt_properties
PRIVATE
qbt_gui_headers
PUBLIC
qbt_base Qt5::Widgets
)
target_include_directories(qbt_properties
PRIVATE
${CMAKE_CURRENT_BINARY_DIR}
PUBLIC
${CMAKE_CURRENT_SOURCE_DIR}
# forms
peersadditiondialog.ui
propertieswidget.ui
trackersadditiondialog.ui
)

12
src/gui/qtnotify/CMakeLists.txt

@ -1,11 +1 @@ @@ -1,11 +1 @@
add_library(qbt_qtnotify STATIC
# headers
notifications.h
# sources
notifications.cpp
)
set_target_properties(qbt_qtnotify PROPERTIES AUTOUIC False AUTORCC False)
target_link_libraries(qbt_qtnotify PUBLIC Qt5::DBus)
target_include_directories(qbt_qtnotify PUBLIC ${CMAKE_CURRENT_SOURCE_DIR})
target_sources(qbt_gui PRIVATE notifications.h notifications.cpp)

40
src/gui/rss/CMakeLists.txt

@ -1,27 +1,19 @@ @@ -1,27 +1,19 @@
add_library(qbt_rss STATIC
# headers
articlelistwidget.h
automatedrssdownloader.h
feedlistwidget.h
htmlbrowser.h
rsswidget.h
target_sources(qbt_gui PRIVATE
# headers
articlelistwidget.h
automatedrssdownloader.h
feedlistwidget.h
htmlbrowser.h
rsswidget.h
#sources
articlelistwidget.cpp
automatedrssdownloader.cpp
feedlistwidget.cpp
htmlbrowser.cpp
rsswidget.cpp
#sources
articlelistwidget.cpp
automatedrssdownloader.cpp
feedlistwidget.cpp
htmlbrowser.cpp
rsswidget.cpp
# forms
automatedrssdownloader.ui
rsswidget.ui
)
target_include_directories(qbt_rss PRIVATE ${CMAKE_CURRENT_BINARY_DIR} ${CMAKE_CURRENT_SOURCE_DIR})
target_link_libraries(qbt_rss
PRIVATE
qbt_gui_headers
PUBLIC
qbt_base Qt5::Gui Qt5::Widgets Qt5::Network
# forms
automatedrssdownloader.ui
rsswidget.ui
)

49
src/gui/search/CMakeLists.txt

@ -1,33 +1,22 @@ @@ -1,33 +1,22 @@
add_library(qbt_searchengine STATIC
# headers
pluginselectdialog.h
pluginsourcedialog.h
searchjobwidget.h
searchlistdelegate.h
searchsortmodel.h
searchwidget.h
target_sources(qbt_gui PRIVATE
# headers
pluginselectdialog.h
pluginsourcedialog.h
searchjobwidget.h
searchlistdelegate.h
searchsortmodel.h
searchwidget.h
# sources
pluginselectdialog.cpp
pluginsourcedialog.cpp
searchjobwidget.cpp
searchlistdelegate.cpp
searchsortmodel.cpp
searchwidget.cpp
# sources
pluginselectdialog.cpp
pluginsourcedialog.cpp
searchjobwidget.cpp
searchlistdelegate.cpp
searchsortmodel.cpp
searchwidget.cpp
# forms
pluginselectdialog.ui
pluginsourcedialog.ui
searchwidget.ui
)
set(QBT_SEARCHENGINE_RESOURCES
# search.qrc
)
target_link_libraries(qbt_searchengine
PUBLIC
qbt_base
PRIVATE
qbt_gui_headers
# forms
pluginselectdialog.ui
pluginsourcedialog.ui
searchwidget.ui
)

Loading…
Cancel
Save