Warning, /multimedia/kasts/src/CMakeLists.txt is written in an unsupported language. File is not indexed.
0001 # SPDX-FileCopyrightText: 2020 Tobias Fella <tobias.fella@kde.org> 0002 # SPDX-FileCopyrightText: 2023 Bart De Vries <bart@mogwai.be> 0003 # SPDX-License-Identifier: BSD-2-Clause 0004 0005 add_subdirectory(kmediasession) 0006 if (NOT QT_MAJOR_VERSION EQUAL "6") 0007 add_subdirectory(solidextras) 0008 endif() 0009 0010 set(kasts_srcs 0011 main.cpp 0012 fetcher.cpp 0013 database.cpp 0014 entry.cpp 0015 feed.cpp 0016 author.cpp 0017 enclosure.cpp 0018 chapter.cpp 0019 datamanager.cpp 0020 audiomanager.cpp 0021 error.cpp 0022 enclosuredownloadjob.cpp 0023 storagemanager.cpp 0024 storagemovejob.cpp 0025 updatefeedjob.cpp 0026 fetchfeedsjob.cpp 0027 systrayicon.cpp 0028 networkconnectionmanager.cpp 0029 models/abstractepisodemodel.cpp 0030 models/abstractepisodeproxymodel.cpp 0031 models/chaptermodel.cpp 0032 models/feedsmodel.cpp 0033 models/feedsproxymodel.cpp 0034 models/entriesmodel.cpp 0035 models/entriesproxymodel.cpp 0036 models/queuemodel.cpp 0037 models/episodemodel.cpp 0038 models/episodeproxymodel.cpp 0039 models/downloadmodel.cpp 0040 models/errorlogmodel.cpp 0041 models/podcastsearchmodel.cpp 0042 sync/sync.cpp 0043 sync/syncjob.cpp 0044 sync/syncutils.cpp 0045 sync/gpodder/gpodder.cpp 0046 sync/gpodder/genericrequest.cpp 0047 sync/gpodder/loginrequest.cpp 0048 sync/gpodder/logoutrequest.cpp 0049 sync/gpodder/devicerequest.cpp 0050 sync/gpodder/syncrequest.cpp 0051 sync/gpodder/updatesyncrequest.cpp 0052 sync/gpodder/updatedevicerequest.cpp 0053 sync/gpodder/subscriptionrequest.cpp 0054 sync/gpodder/uploadsubscriptionrequest.cpp 0055 sync/gpodder/episodeactionrequest.cpp 0056 sync/gpodder/uploadepisodeactionrequest.cpp 0057 resources.qrc 0058 ) 0059 0060 ecm_qt_declare_logging_category(kasts_srcs 0061 HEADER "audiologging.h" 0062 IDENTIFIER "kastsAudio" 0063 CATEGORY_NAME "org.kde.kasts.audio" 0064 DEFAULT_SEVERITY Info 0065 ) 0066 0067 ecm_qt_declare_logging_category(kasts_srcs 0068 HEADER "datamanagerlogging.h" 0069 IDENTIFIER "kastsDataManager" 0070 CATEGORY_NAME "org.kde.kasts.datamanager" 0071 DEFAULT_SEVERITY Info 0072 ) 0073 0074 ecm_qt_declare_logging_category(kasts_srcs 0075 HEADER "enclosurelogging.h" 0076 IDENTIFIER "kastsEnclosure" 0077 CATEGORY_NAME "org.kde.kasts.enclosure" 0078 DEFAULT_SEVERITY Info 0079 ) 0080 0081 ecm_qt_declare_logging_category(kasts_srcs 0082 HEADER "entrylogging.h" 0083 IDENTIFIER "kastsEntry" 0084 CATEGORY_NAME "org.kde.kasts.entry" 0085 DEFAULT_SEVERITY Info 0086 ) 0087 0088 ecm_qt_declare_logging_category(kasts_srcs 0089 HEADER "feedlogging.h" 0090 IDENTIFIER "kastsFeed" 0091 CATEGORY_NAME "org.kde.kasts.feed" 0092 DEFAULT_SEVERITY Info 0093 ) 0094 0095 ecm_qt_declare_logging_category(kasts_srcs 0096 HEADER "fetcherlogging.h" 0097 IDENTIFIER "kastsFetcher" 0098 CATEGORY_NAME "org.kde.kasts.fetcher" 0099 DEFAULT_SEVERITY Info 0100 ) 0101 0102 ecm_qt_declare_logging_category(kasts_srcs 0103 HEADER "synclogging.h" 0104 IDENTIFIER "kastsSync" 0105 CATEGORY_NAME "org.kde.kasts.sync" 0106 DEFAULT_SEVERITY Info 0107 ) 0108 0109 ecm_qt_declare_logging_category(kasts_srcs 0110 HEADER "models/downloadmodellogging.h" 0111 IDENTIFIER "kastsDownloadModel" 0112 CATEGORY_NAME "org.kde.kasts.downloadmodel" 0113 DEFAULT_SEVERITY Info 0114 ) 0115 0116 ecm_qt_declare_logging_category(kasts_srcs 0117 HEADER "models/queuemodellogging.h" 0118 IDENTIFIER "kastsQueueModel" 0119 CATEGORY_NAME "org.kde.kasts.queuemodel" 0120 DEFAULT_SEVERITY Info 0121 ) 0122 0123 ecm_qt_declare_logging_category(kasts_srcs 0124 HEADER "storagemanagerlogging.h" 0125 IDENTIFIER "kastsStorageManager" 0126 CATEGORY_NAME "org.kde.kasts.storagemanager" 0127 DEFAULT_SEVERITY Info 0128 ) 0129 0130 ecm_qt_declare_logging_category(kasts_srcs 0131 HEADER "storagemovejoblogging.h" 0132 IDENTIFIER "kastsStorageMoveJob" 0133 CATEGORY_NAME "org.kde.kasts.storagemovejob" 0134 DEFAULT_SEVERITY Info 0135 ) 0136 0137 ecm_qt_declare_logging_category(kasts_srcs 0138 HEADER "networkconnectionmanagerlogging.h" 0139 IDENTIFIER "kastsNetworkConnectionManager" 0140 CATEGORY_NAME "org.kde.kasts.networkconnectionmanager" 0141 DEFAULT_SEVERITY Info 0142 ) 0143 0144 if(ANDROID) 0145 list(APPEND kasts_srcs 0146 androidlogging.h) 0147 endif() 0148 0149 if(KASTS_FLATPAK) 0150 list(APPEND kasts_srcs 0151 resources-flatpak.qrc) 0152 else() 0153 list(APPEND kasts_srcs 0154 resources-non-flatpak.qrc) 0155 endif() 0156 0157 set(kasts_ICONS_PNG 0158 ../icons/16-apps-kasts.png 0159 ../icons/24-apps-kasts.png 0160 ../icons/32-apps-kasts.png 0161 ../icons/48-apps-kasts.png 0162 ../icons/64-apps-kasts.png 0163 ../icons/128-apps-kasts.png 0164 ) 0165 0166 # add icons to application sources, to have them bundled 0167 ecm_add_app_icon(kasts_srcs ICONS ${kasts_ICONS_PNG}) 0168 0169 add_executable(kasts ${kasts_srcs}) 0170 0171 kconfig_add_kcfg_files(kasts settingsmanager.kcfgc GENERATE_MOC) 0172 0173 target_include_directories(kasts PRIVATE ${CMAKE_BINARY_DIR}) 0174 target_link_libraries(kasts PRIVATE Qt::Core Qt::Qml Qt::Quick Qt::QuickControls2 Qt::Sql Qt::Svg Qt::Xml KF${KF_MAJOR_VERSION}::Kirigami2 KF${KF_MAJOR_VERSION}::Syndication KF${KF_MAJOR_VERSION}::CoreAddons KF${KF_MAJOR_VERSION}::ConfigGui KF${KF_MAJOR_VERSION}::I18n Taglib::Taglib ${QTKEYCHAIN_LIBRARIES} KF${KF_MAJOR_VERSION}::ThreadWeaver KMediaSession) 0175 0176 if (QT_MAJOR_VERSION EQUAL "6") 0177 target_link_libraries(kasts PRIVATE Qt6::Network) 0178 else () 0179 target_link_libraries(kasts PRIVATE KastsSolidExtras) 0180 endif() 0181 0182 if(KASTS_FLATPAK) 0183 target_compile_definitions(kasts PUBLIC KASTS_FLATPAK) 0184 endif() 0185 0186 if(ANDROID) 0187 target_link_libraries(kasts PRIVATE 0188 OpenSSL::SSL 0189 log 0190 ) 0191 if(SQLite3_FOUND) 0192 target_link_libraries(kasts PRIVATE SQLite::SQLite3) 0193 endif() 0194 0195 if(ZLIB_FOUND) 0196 target_link_libraries(kasts PRIVATE ZLIB::ZLIB) 0197 endif() 0198 0199 kirigami_package_breeze_icons(ICONS 0200 window-close 0201 window-close-symbolic 0202 delete 0203 settings-configure 0204 documentinfo 0205 tools-report-bug 0206 list-add 0207 list-remove 0208 view-refresh 0209 view-filter 0210 kasts 0211 mail-sent 0212 globe 0213 data-error 0214 rss 0215 bookmarks 0216 document-import 0217 document-export 0218 document-open-folder 0219 document-save 0220 edit-delete-remove 0221 edit-clear-all 0222 edit-select-all 0223 edit-select-none 0224 edit-copy 0225 download 0226 media-playlist-append 0227 media-seek-backward 0228 media-seek-forward 0229 media-skip-forward 0230 media-playback-start 0231 media-playback-pause 0232 view-media-playlist 0233 source-playlist 0234 arrow-down 0235 go-next 0236 overflow-menu 0237 checkbox 0238 error 0239 search 0240 kt-add-feeds 0241 state-sync 0242 network-connect 0243 drive-harddisk-symbolic 0244 dialog-ok 0245 dialog-cancel 0246 computer 0247 computer-laptop 0248 network-server-database 0249 smartphone 0250 emblem-music-symbolic 0251 gpodder 0252 kaccounts-nextcloud 0253 clock 0254 viewimage 0255 player-volume-muted 0256 player-volume 0257 application-exit 0258 starred-symbolic 0259 non-starred-symbolic 0260 media-playback-cloud 0261 zoom-in 0262 zoom-out 0263 object-rotate-left 0264 object-rotate-right 0265 add-subtitle 0266 view-sort 0267 view-sort-descending 0268 view-sort-ascending 0269 view-sort-descending-name 0270 view-sort-ascending-name 0271 ) 0272 else() 0273 target_link_libraries(kasts PRIVATE Qt::Widgets) 0274 endif() 0275 0276 install(TARGETS kasts ${KDE_INSTALL_TARGETS_DEFAULT_ARGS})