kde-extraapps/kget/CMakeLists.txt
Ivailo Monev e610051108 generic: misc cleanups
Signed-off-by: Ivailo Monev <xakepa10@laimg.moc>
2017-06-24 07:13:30 +00:00

228 lines
No EOL
6.7 KiB
CMake

project(kget)
include(CheckIncludeFile)
include(CheckIncludeFiles)
include(CheckSymbolExists)
include(CheckFunctionExists)
include(CheckLibraryExists)
include(CheckTypeSize)
add_definitions(${QT_DEFINITIONS})
include_directories(${CMAKE_SOURCE_DIR} ${CMAKE_BINARY_DIR} ${KDE4_INCLUDES})
macro_optional_find_package(Sqlite)
macro_log_feature(SQLITE_FOUND "SQLite" "SQLite is a Binary-Database" "" FALSE "" "Needed for the SQLite-Backend of the KGet-History and the Kopete-Statistic-Plugin")
macro_optional_find_package(QGpgme)
macro_log_feature(QGPGME_FOUND "QGpgME" "The QGpgME library" "http://www.kde.org" FALSE "" "QGpgME is required to have signature verifying support in KGet.")
macro_optional_find_package(LibMms)
macro_log_feature(LIBMMS_FOUND "libmms" "Library to read mms streams" "http://libmms.sourceforge.net" FALSE "" "Needed to build KGet mms support.")
set(kget_adaptor_SRCS
dbus/dbuskgetwrapper.cpp
)
# set(kget_transfer_adaptor_SRCS
# core/transferhandler.cpp
# core/transfertreemodel.cpp
# )
add_definitions(-DKDE_DEFAULT_DEBUG_AREA=5001)
if(CMAKE_BUILD_TYPE MATCHES debugfull)
add_definitions(-DDEBUG)
endif(CMAKE_BUILD_TYPE MATCHES debugfull)
if(QGPGME_FOUND)
add_definitions(-DHAVE_QGPGME)
include_directories(${QGPGME_INCLUDE_DIR})
endif(QGPGME_FOUND)
add_subdirectory(conf)
add_subdirectory(core)
add_subdirectory(ui)
add_subdirectory(transfer-plugins)
add_subdirectory(extensions)
add_subdirectory(desktop)
add_subdirectory(plasma)
if(ENABLE_TESTING)
add_subdirectory(tests)
endif()
macro_optional_find_package(KDE4Workspace)
macro_log_feature(KDE4WORKSPACE_FOUND "KDE4Workspace" "KDE4 workspace libraries, part of kdebase-workspace" "http://www.kde.org" FALSE "" "Allows 'shutdown after downloads completed' in kget")
if(KDE4WORKSPACE_FOUND)
add_definitions(-DHAVE_KWORKSPACE)
include_directories(${KDE4WORKSPACE_INCLUDE_DIR})
endif(KDE4WORKSPACE_FOUND)
include_directories(
${CMAKE_CURRENT_SOURCE_DIR}
${CMAKE_CURRENT_SOURCE_DIR}/core/
${CMAKE_CURRENT_BINARY_DIR}/core/
${CMAKE_CURRENT_BINARY_DIR}
)
if(SQLITE_FOUND)
add_definitions(-DHAVE_SQLITE)
endif(SQLITE_FOUND)
remove_definitions(-DQT_NO_HTTP)
# kgetcore
set(kgetcore_SRCS
core/job.cpp
core/jobqueue.cpp
core/kget.cpp
core/scheduler.cpp
core/transfertreemodel.cpp
core/transfertreeselectionmodel.cpp
core/transfer.cpp
core/transfergroup.cpp
core/transfergrouphandler.cpp
core/transferhandler.cpp
core/handler.cpp
core/transfergroupscheduler.cpp
core/plugin/plugin.cpp
core/plugin/transferfactory.cpp
core/transferdatasource.cpp
core/datasourcefactory.cpp
core/kgetkjobadapter.cpp
core/kuiserverjobs.cpp
core/kgetglobaljob.cpp
core/bitset.cpp
core/download.cpp
core/transferhistorystore.cpp
core/linkimporter.cpp
dbus/dbustransferwrapper.cpp
dbus/dbusverifierwrapper.cpp
core/filemodel.cpp
core/verifier.cpp
core/verificationthread.cpp
core/verificationmodel.cpp
core/verificationdelegate.cpp
core/signature.cpp
core/signaturethread.cpp
core/keydownloader.cpp
core/urlchecker.cpp
core/basedialog.cpp
core/mostlocalurl.cpp
core/filedeleter.cpp
)
kde4_add_kcfg_files(kgetcore_SRCS conf/settings.kcfgc)
qt4_add_dbus_adaptor(kgetcore_SRCS dbus/org.kde.kget.transfer.xml dbus/dbustransferwrapper.h DBusTransferWrapper)
qt4_add_dbus_adaptor(kgetcore_SRCS dbus/org.kde.kget.verifier.xml dbus/dbusverifierwrapper.h DBusVerifierWrapper)
add_library(kgetcore SHARED ${kgetcore_SRCS})
target_link_libraries(kgetcore ${KDE4_KIO_LIBS} ${KDE4_SOLID_LIBS})
if (KDE4WORKSPACE_FOUND)
target_link_libraries(kgetcore ${KDE4WORKSPACE_KWORKSPACE_LIBS})
endif (KDE4WORKSPACE_FOUND)
if (SQLITE_FOUND)
target_link_libraries(kgetcore ${QT_QTSQL_LIBRARY})
endif (SQLITE_FOUND)
if (QGPGME_FOUND)
target_link_libraries(kgetcore ${QGPGME_LIBRARIES})
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${KDE4_ENABLE_EXCEPTIONS}")
endif(QGPGME_FOUND)
set_target_properties(kgetcore PROPERTIES VERSION ${GENERIC_LIB_VERSION} SOVERSION ${GENERIC_LIB_SOVERSION} )
install(TARGETS kgetcore ${INSTALL_TARGETS_DEFAULT_ARGS})
# kget
set(kget_SRCS ${kget_adaptor_SRCS} ${kget_transfer_adaptor_SRCS}
conf/autopastemodel.cpp
conf/integrationpreferences.cpp
conf/dlgwebinterface.cpp
conf/preferencesdialog.cpp
conf/transfersgrouptree.cpp
conf/transfersgroupwidget.cpp
conf/pluginselector.cpp
conf/verificationpreferences.cpp
ui/droptarget.cpp
ui/transfersview.cpp
ui/transfersviewdelegate.cpp
ui/transferdetails.cpp
ui/viewscontainer.cpp
ui/newtransferdialog.cpp
ui/groupsettingsdialog.cpp
ui/transfersettingsdialog.cpp
ui/contextmenu.cpp
ui/tray.cpp
ui/history/rangetreewidget.cpp
ui/history/transferhistory.cpp
ui/history/transferhistoryitemdelegate.cpp
ui/history/transferhistorycategorizeddelegate.cpp
ui/history/transferhistorycategorizedview.cpp
ui/linkview/kget_linkview.cpp
ui/linkview/kget_sortfilterproxymodel.cpp
ui/mirror/mirrorsettings.cpp
ui/mirror/mirrormodel.cpp
ui/renamefile.cpp
ui/verificationdialog.cpp
ui/metalinkcreator/metalinkcreator.cpp
ui/metalinkcreator/generalwidget.cpp
ui/metalinkcreator/metalinker.cpp
ui/metalinkcreator/filedlg.cpp
ui/metalinkcreator/localemodels.cpp
ui/metalinkcreator/dragdlg.cpp
ui/metalinkcreator/urlwidget.cpp
ui/metalinkcreator/filehandler.cpp
ui/signaturedlg.cpp
mainwindow.cpp
main.cpp
extensions/webinterface/httpserver.cpp
conf/dlgadvanced.ui
conf/dlgappearance.ui
conf/dlggroups.ui
conf/dlgintegration.ui
conf/dlgwebinterface.ui
conf/dlgnetwork.ui
conf/verificationpreferences.ui
ui/transferdetailsfrm.ui
ui/newtransferwidget.ui
ui/history/transferhistory.ui
ui/groupsettingsdialog.ui
ui/transfersettingsdialog.ui
ui/linkview/importlinkdialog.ui
ui/mirror/mirrorsettings.ui
ui/mirror/mirroradddlg.ui
ui/renamefile.ui
ui/verificationdialog.ui
ui/verificationadddlg.ui
ui/metalinkcreator/introduction.ui
ui/metalinkcreator/generalwidget.ui
ui/metalinkcreator/files.ui
ui/metalinkcreator/filedlg.ui
ui/metalinkcreator/dragdlg.ui
ui/metalinkcreator/urlwidget.ui
ui/metalinkcreator/commondata.ui
ui/signaturedlg.ui
)
qt4_add_dbus_adaptor(kget_SRCS dbus/org.kde.kget.main.xml dbus/dbuskgetwrapper.h DBusKGetWrapper)
add_executable(kget ${kget_SRCS})
target_link_libraries(kget ${QT_QTTEST_LIBRARY} ${KDE4_KDEUI_LIBRARY} ${KDE4_KIO_LIBRARY} ${KDE4_KCMUTILS_LIBRARY} kgetcore ${KDE4_KNOTIFYCONFIG_LIBS})
if (QGPGME_FOUND)
target_link_libraries(kget ${QGPGME_LIBRARIES})
endif(QGPGME_FOUND)
install(TARGETS kget ${INSTALL_TARGETS_DEFAULT_ARGS})
install(FILES kget.notifyrc DESTINATION ${DATA_INSTALL_DIR}/kget)