X-Git-Url: https://cloud.milkyroute.net/gitweb/dolphin.git/blobdiff_plain/482fea3ec69a7fff321281050968426c38edc3bc..dbe2152912cc58f1d2bfba187175ec0e4b3e4761:/src/CMakeLists.txt diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt index ecb1c4f5d..31d3f8928 100644 --- a/src/CMakeLists.txt +++ b/src/CMakeLists.txt @@ -1,86 +1,84 @@ - -find_package(QImageBlitz REQUIRED) - macro_optional_find_package(Nepomuk) macro_log_feature(Nepomuk_FOUND "Nepomuk" "Nepomuk" "http://www.kde.org" FALSE "" "For adding desktop-wide tagging support to dolphin") macro_bool_to_01(Nepomuk_FOUND HAVE_NEPOMUK) configure_file(config-nepomuk.h.cmake ${CMAKE_CURRENT_BINARY_DIR}/config-nepomuk.h ) -include_directories( ${KDE4_INCLUDE_DIR} ${QT_INCLUDES} ${QIMAGEBLITZ_INCLUDES} ) +macro_bool_to_01(X11_Xrender_FOUND HAVE_XRENDER) +configure_file(config-X11.h.cmake ${CMAKE_CURRENT_BINARY_DIR}/config-X11.h ) + +include_directories( ${KDE4_INCLUDE_DIR} ${QT_INCLUDES} ) if (Nepomuk_FOUND) # Yes, Soprano includes is what we need here include_directories( ${SOPRANO_INCLUDE_DIR} ${NEPOMUK_INCLUDE_DIR} ) endif (Nepomuk_FOUND) +add_subdirectory(tests) + ########### next target ############### set(dolphinprivate_LIB_SRCS - dolphincontroller.cpp - dolphindetailsview.cpp - dolphiniconsview.cpp - dolphincolumnview.cpp - dolphincolumnviewcontainer.cpp - dolphindirlister.cpp - dolphinfileitemdelegate.cpp - dolphinmodel.cpp - dolphinnewmenuobserver.cpp - dolphinsortfilterproxymodel.cpp - dolphincategorydrawer.cpp - dolphinview.cpp - dolphinviewactionhandler.cpp - dolphinviewautoscroller.cpp - dolphinremoteencoding.cpp - dolphindetailsviewexpander.cpp - draganddrophelper.cpp - folderexpander.cpp - renamedialog.cpp - selectiontoggle.cpp - selectionmanager.cpp + kitemviews/kfileitemlistview.cpp + kitemviews/kfileitemlistwidget.cpp + kitemviews/kfileitemmodel.cpp + kitemviews/kfileitemmodelrolesupdater.cpp + kitemviews/kitemlistcontainer.cpp + kitemviews/kitemlistcontroller.cpp + kitemviews/kitemlistgroupheader.cpp + kitemviews/kitemlistrubberband.cpp + kitemviews/kitemlistselectionmanager.cpp + kitemviews/kitemlistsizehintresolver.cpp + kitemviews/kitemliststyleoption.cpp + kitemviews/kitemlistview.cpp + kitemviews/kitemlistviewanimation.cpp + kitemviews/kitemlistviewlayouter.cpp + kitemviews/kitemlistwidget.cpp + kitemviews/kitemmodelbase.cpp + kitemviews/kpixmapmodifier.cpp settings/additionalinfodialog.cpp settings/applyviewpropsjob.cpp settings/dolphinsettings.cpp settings/viewpropertiesdialog.cpp settings/viewpropsprogressinfo.cpp - panels/information/kmetadatawidget.cpp - panels/information/kmetadataconfigurationdialog.cpp - tooltips/ktooltip.cpp - tooltips/ktooltipwindow.cpp - tooltips/tooltipmanager.cpp - versioncontrol/updateitemstatesthread.cpp - versioncontrol/versioncontrolobserver.cpp - viewextensionsfactory.cpp - viewproperties.cpp - zoomlevelinfo.cpp + views/additionalinfoaccessor.cpp + views/dolphindirlister.cpp + views/dolphinview.cpp + views/dolphinitemlistcontainer.cpp + views/dolphinnewfilemenuobserver.cpp + views/dolphinremoteencoding.cpp + views/dolphinviewactionhandler.cpp + views/dolphinviewautoscroller.cpp + views/folderexpander.cpp + views/renamedialog.cpp + views/tooltips/filemetadatatooltip.cpp + views/tooltips/tooltipmanager.cpp + views/versioncontrol/pendingthreadsmaintainer.cpp + views/versioncontrol/updateitemstatesthread.cpp + views/versioncontrol/versioncontrolobserver.cpp + views/viewmodecontroller.cpp + views/viewproperties.cpp + views/zoomlevelinfo.cpp ) - -if(Nepomuk_FOUND) - set(dolphinprivate_LIB_SRCS - ${dolphinprivate_LIB_SRCS} - panels/information/kcommentwidget.cpp - panels/information/kedittagsdialog.cpp - panels/information/kloadmetadatathread.cpp - panels/information/nepomukmassupdatejob.cpp - panels/information/ktaggingwidget.cpp - ) -endif(Nepomuk_FOUND) kde4_add_kcfg_files(dolphinprivate_LIB_SRCS - settings/dolphin_columnmodesettings.kcfgc + settings/dolphin_compactmodesettings.kcfgc settings/dolphin_directoryviewpropertysettings.kcfgc settings/dolphin_detailsmodesettings.kcfgc settings/dolphin_iconsmodesettings.kcfgc - settings/dolphin_generalsettings.kcfgc) + settings/dolphin_generalsettings.kcfgc + settings/dolphin_versioncontrolsettings.kcfgc +) kde4_add_library(dolphinprivate SHARED ${dolphinprivate_LIB_SRCS}) -target_link_libraries(dolphinprivate ${KDE4_KFILE_LIBS} konq knewstuff2 ${QIMAGEBLITZ_LIBRARIES} ${X11_LIBRARIES}) +target_link_libraries(dolphinprivate ${KDE4_KFILE_LIBS} konq ${KDE4_KNEWSTUFF3_LIBS}) +if (Nepomuk_FOUND) + target_link_libraries(dolphinprivate ${NEPOMUK_LIBRARIES} ${NEPOMUK_QUERY_LIBRARIES} nepomukutils ${SOPRANO_LIBRARIES}) +endif (Nepomuk_FOUND) if(X11_Xrender_FOUND) target_link_libraries(dolphinprivate ${X11_Xrender_LIB} ) endif(X11_Xrender_FOUND) -if (Nepomuk_FOUND) - target_link_libraries(dolphinprivate ${NEPOMUK_LIBRARIES} ${NEPOMUK_QUERY_LIBRARIES} ${SOPRANO_LIBRARIES}) -endif (Nepomuk_FOUND) + set_target_properties(dolphinprivate PROPERTIES VERSION ${GENERIC_LIB_VERSION} SOVERSION ${GENERIC_LIB_SOVERSION} ) @@ -93,40 +91,31 @@ set(dolphinpart_SRCS dolphinpart.cpp ) -set(fileviewsvnplugin_SRCS - versioncontrol/fileviewsvnplugin.cpp -) - kde4_add_plugin(dolphinpart ${dolphinpart_SRCS}) -kde4_add_plugin(fileviewsvnplugin ${fileviewsvnplugin_SRCS}) target_link_libraries(dolphinpart dolphinprivate konq ${KDE4_KPARTS_LIBS} ${KDE4_KFILE_LIBS}) -target_link_libraries(fileviewsvnplugin ${KDE4_KIO_LIBS} konq) install(TARGETS dolphinpart DESTINATION ${PLUGIN_INSTALL_DIR}) -install(TARGETS fileviewsvnplugin DESTINATION ${PLUGIN_INSTALL_DIR}) install(FILES dolphinpart.rc DESTINATION ${DATA_INSTALL_DIR}/dolphinpart) install(FILES dolphinpart.desktop DESTINATION ${SERVICES_INSTALL_DIR} ) -install(FILES versioncontrol/fileviewsvnplugin.desktop DESTINATION ${SERVICES_INSTALL_DIR}) -install(FILES versioncontrol/fileviewversioncontrolplugin.desktop DESTINATION ${SERVICETYPES_INSTALL_DIR}) +install(FILES views/versioncontrol/fileviewversioncontrolplugin.desktop DESTINATION ${SERVICETYPES_INSTALL_DIR}) ########################################## set(dolphin_SRCS dolphinapplication.cpp + dolphindockwidget.cpp dolphinmainwindow.cpp - dolphinnewmenu.cpp + dolphinnewfilemenu.cpp dolphinviewcontainer.cpp - dolphindirlister.cpp dolphincontextmenu.cpp - filterbar.cpp + filterbar/filterbar.cpp main.cpp - pixmapviewer.cpp + panels/information/filemetadataconfigurationdialog.cpp panels/information/informationpanel.cpp panels/information/informationpanelcontent.cpp - panels/information/kmetadatawidget.cpp - panels/information/kmetadataconfigurationdialog.cpp + panels/information/pixmapviewer.cpp panels/information/phononwidget.cpp panels/folders/ktreeview.cpp panels/places/placespanel.cpp @@ -135,48 +124,47 @@ set(dolphin_SRCS panels/folders/folderspanel.cpp panels/folders/paneltreeview.cpp search/dolphinsearchbox.cpp - settings/behaviorsettingspage.cpp - settings/columnviewsettingspage.cpp - settings/contextmenusettingspage.cpp - settings/dolphinfontrequester.cpp + search/dolphinsearchinformation.cpp + settings/general/behaviorsettingspage.cpp + settings/general/configurepreviewplugindialog.cpp + settings/general/contextmenusettingspage.cpp + settings/general/generalsettingspage.cpp + settings/general/previewssettingspage.cpp + settings/general/statusbarsettingspage.cpp settings/dolphinsettingsdialog.cpp - settings/detailsviewsettingspage.cpp - settings/generalsettingspage.cpp - settings/iconsizegroupbox.cpp - settings/iconsviewsettingspage.cpp - settings/navigationsettingspage.cpp - settings/previewssettingspage.cpp - settings/servicessettingspage.cpp + settings/navigation/navigationsettingspage.cpp + settings/services/servicessettingspage.cpp settings/settingspagebase.cpp - settings/startupsettingspage.cpp - settings/statusbarsettingspage.cpp - settings/trashsettingspage.cpp - settings/viewsettingspage.cpp - settings/viewsettingspagebase.cpp + settings/serviceitemdelegate.cpp + settings/servicemodel.cpp + settings/startup/startupsettingspage.cpp + settings/trash/trashsettingspage.cpp + settings/viewmodes/detailsviewsettingspage.cpp + settings/viewmodes/dolphinfontrequester.cpp + settings/viewmodes/iconsizegroupbox.cpp + settings/viewmodes/iconsviewsettingspage.cpp + settings/viewmodes/viewsettingspage.cpp + settings/viewmodes/viewsettingspagebase.cpp statusbar/dolphinstatusbar.cpp statusbar/statusbarspaceinfo.cpp - statusbar/statusbarmessagelabel.cpp - zoomlevelinfo.cpp + views/zoomlevelinfo.cpp ) kde4_add_kcfg_files(dolphin_SRCS panels/folders/dolphin_folderspanelsettings.kcfgc panels/information/dolphin_informationpanelsettings.kcfgc + settings/dolphin_compactmodesettings.kcfgc + settings/dolphin_detailsmodesettings.kcfgc + settings/dolphin_generalsettings.kcfgc + settings/dolphin_iconsmodesettings.kcfgc search/dolphin_searchsettings.kcfgc + settings/dolphin_versioncontrolsettings.kcfgc ) if(Nepomuk_FOUND) set(dolphin_SRCS ${dolphin_SRCS} - panels/information/kcommentwidget.cpp - panels/information/kedittagsdialog.cpp - panels/information/kloadmetadatathread.cpp - panels/information/nepomukmassupdatejob.cpp - panels/information/ktaggingwidget.cpp - search/dolphinsearchoptionsconfigurator.cpp - search/searchcriteriondescription.cpp - search/searchcriterionselector.cpp - search/searchcriterionvalue.cpp + panels/search/searchpanel.cpp ) endif(Nepomuk_FOUND) @@ -184,91 +172,81 @@ if(NOT WIN32) set(dolphin_SRCS ${dolphin_SRCS} panels/terminal/terminalpanel.cpp) endif(NOT WIN32) -qt4_add_dbus_adaptor(dolphin_SRCS - org.kde.dolphin.Application.xml - dolphinapplication.h DolphinApplication) -qt4_add_dbus_adaptor(dolphin_SRCS - org.kde.dolphin.MainWindow.xml - dolphinmainwindow.h DolphinMainWindow) - kde4_add_app_icon(dolphin_SRCS "${KDE4_ICON_INSTALL_DIR}/oxygen/*/apps/system-file-manager.png") -kde4_add_executable(dolphin ${dolphin_SRCS}) +kde4_add_kdeinit_executable(dolphin ${dolphin_SRCS}) -target_link_libraries(dolphin +target_link_libraries(kdeinit_dolphin ${KDE4_KDEPRINT_LIBS} ${KDE4_KFILE_LIBS} - ${KDE4_KUTILS_LIBRARY} + ${KDE4_KPARTS_LIBS} + ${KDE4_KCMUTILS_LIBRARY} konq dolphinprivate - knewstuff2 + knewstuff3 ${KDE4_PHONON_LIBS} ) if (Nepomuk_FOUND) - target_link_libraries(dolphin + target_link_libraries(kdeinit_dolphin ${NEPOMUK_LIBRARIES} ${SOPRANO_LIBRARIES} ${NEPOMUK_QUERY_LIBRARIES} + nepomukutils ) endif (Nepomuk_FOUND) +install(TARGETS kdeinit_dolphin ${INSTALL_TARGETS_DEFAULT_ARGS}) install(TARGETS dolphin ${INSTALL_TARGETS_DEFAULT_ARGS}) ########################################## set(kcm_dolphinviewmodes_PART_SRCS - kcm/kcmdolphinviewmodes.cpp - pixmapviewer.cpp - settings/columnviewsettingspage.cpp - settings/detailsviewsettingspage.cpp - settings/dolphinfontrequester.cpp - settings/iconsizegroupbox.cpp - settings/iconsviewsettingspage.cpp - settings/viewsettingspagebase.cpp - zoomlevelinfo.cpp) + settings/kcm/kcmdolphinviewmodes.cpp + settings/viewmodes/detailsviewsettingspage.cpp + settings/viewmodes/dolphinfontrequester.cpp + settings/viewmodes/iconsizegroupbox.cpp + settings/viewmodes/iconsviewsettingspage.cpp + settings/viewmodes/viewsettingspagebase.cpp + views/zoomlevelinfo.cpp) set(kcm_dolphinnavigation_PART_SRCS - kcm/kcmdolphinnavigation.cpp - settings/navigationsettingspage.cpp + settings/kcm/kcmdolphinnavigation.cpp + settings/navigation/navigationsettingspage.cpp settings/settingspagebase.cpp) set(kcm_dolphinservices_PART_SRCS - kcm/kcmdolphinservices.cpp - settings/servicessettingspage.cpp - settings/settingspagebase.cpp) + settings/kcm/kcmdolphinservices.cpp + settings/services/servicessettingspage.cpp + settings/settingspagebase.cpp + settings/serviceitemdelegate.cpp + settings/servicemodel.cpp) set(kcm_dolphingeneral_PART_SRCS - kcm/kcmdolphingeneral.cpp - panels/information/kmetadataconfigurationdialog.cpp - panels/information/kmetadatawidget.cpp - settings/behaviorsettingspage.cpp - settings/previewssettingspage.cpp - settings/contextmenusettingspage.cpp - settings/settingspagebase.cpp) -if (Nepomuk_FOUND) - set(kcm_dolphingeneral_PART_SRCS - ${kcm_dolphingeneral_PART_SRCS} - panels/information/kcommentwidget.cpp - panels/information/kedittagsdialog.cpp - panels/information/kloadmetadatathread.cpp - panels/information/nepomukmassupdatejob.cpp - panels/information/ktaggingwidget.cpp - ) -endif (Nepomuk_FOUND) + settings/kcm/kcmdolphingeneral.cpp + settings/general/behaviorsettingspage.cpp + settings/general/previewssettingspage.cpp + settings/general/configurepreviewplugindialog.cpp + settings/general/contextmenusettingspage.cpp + settings/settingspagebase.cpp + settings/serviceitemdelegate.cpp + settings/servicemodel.cpp) kde4_add_kcfg_files(kcm_dolphinviewmodes_PART_SRCS - settings/dolphin_columnmodesettings.kcfgc + settings/dolphin_compactmodesettings.kcfgc settings/dolphin_directoryviewpropertysettings.kcfgc settings/dolphin_detailsmodesettings.kcfgc settings/dolphin_iconsmodesettings.kcfgc - settings/dolphin_generalsettings.kcfgc) + settings/dolphin_generalsettings.kcfgc + settings/dolphin_versioncontrolsettings.kcfgc +) kde4_add_kcfg_files(kcm_dolphinnavigation_PART_SRCS settings/dolphin_generalsettings.kcfgc) kde4_add_kcfg_files(kcm_dolphinservices_PART_SRCS - settings/dolphin_generalsettings.kcfgc) + settings/dolphin_generalsettings.kcfgc + settings/dolphin_versioncontrolsettings.kcfgc) kde4_add_kcfg_files(kcm_dolphingeneral_PART_SRCS settings/dolphin_generalsettings.kcfgc) @@ -280,7 +258,7 @@ kde4_add_plugin(kcm_dolphingeneral ${kcm_dolphingeneral_PART_SRCS}) target_link_libraries(kcm_dolphinviewmodes ${KDE4_KDEUI_LIBS} ${KDE4_KFILE_LIBS} dolphinprivate) target_link_libraries(kcm_dolphinnavigation ${KDE4_KDEUI_LIBS} ${KDE4_KFILE_LIBS} dolphinprivate) -target_link_libraries(kcm_dolphinservices ${KDE4_KDEUI_LIBS} ${KDE4_KFILE_LIBS} ${KDE4_KIO_LIBS} ${KDE4_KNEWSTUFF2_LIBRARY} dolphinprivate) +target_link_libraries(kcm_dolphinservices ${KDE4_KDEUI_LIBS} ${KDE4_KFILE_LIBS} ${KDE4_KIO_LIBS} ${KDE4_KNEWSTUFF3_LIBRARY} dolphinprivate) target_link_libraries(kcm_dolphingeneral ${KDE4_KDEUI_LIBS} ${KDE4_KFILE_LIBS} ${KDE4_KIO_LIBS} dolphinprivate) if (Nepomuk_FOUND) target_link_libraries(kcm_dolphinviewmodes ${NEPOMUK_LIBRARIES}) @@ -294,16 +272,32 @@ install(TARGETS kcm_dolphinnavigation DESTINATION ${PLUGIN_INSTALL_DIR} ) install(TARGETS kcm_dolphinservices DESTINATION ${PLUGIN_INSTALL_DIR} ) install(TARGETS kcm_dolphingeneral DESTINATION ${PLUGIN_INSTALL_DIR} ) +######################################### + +set(kio_search_PART_SRCS + search/filenamesearchprotocol.cpp) +kde4_add_plugin(kio_filenamesearch ${kio_search_PART_SRCS}) +target_link_libraries(kio_filenamesearch ${KDE4_KIO_LIBS}) +install(TARGETS kio_filenamesearch DESTINATION ${PLUGIN_INSTALL_DIR}) + ########### install files ############### -install( FILES dolphin.desktop DESTINATION ${XDG_APPS_INSTALL_DIR} ) -install( FILES settings/dolphin_directoryviewpropertysettings.kcfg settings/dolphin_generalsettings.kcfg settings/dolphin_columnmodesettings.kcfg settings/dolphin_iconsmodesettings.kcfg settings/dolphin_detailsmodesettings.kcfg DESTINATION ${KCFG_INSTALL_DIR} ) -install( FILES dolphinui.rc DESTINATION ${DATA_INSTALL_DIR}/dolphin ) -install( FILES search/dolphinsearchcommands.desktop DESTINATION ${DATA_INSTALL_DIR}/dolphin ) -install( FILES kcm/kcmdolphinviewmodes.desktop DESTINATION ${SERVICES_INSTALL_DIR} ) -install( FILES kcm/kcmdolphinnavigation.desktop DESTINATION ${SERVICES_INSTALL_DIR} ) -install( FILES kcm/kcmdolphinservices.desktop DESTINATION ${SERVICES_INSTALL_DIR} ) -install( FILES kcm/kcmdolphingeneral.desktop DESTINATION ${SERVICES_INSTALL_DIR} ) -install( FILES khns/servicemenu.knsrc DESTINATION ${CONFIG_INSTALL_DIR} ) -install( PROGRAMS khns/servicemenuinstallation DESTINATION ${BIN_INSTALL_DIR} ) -install( PROGRAMS khns/servicemenudeinstallation DESTINATION ${BIN_INSTALL_DIR} ) +install( PROGRAMS dolphin.desktop DESTINATION ${XDG_APPS_INSTALL_DIR} ) +install( FILES settings/dolphin_directoryviewpropertysettings.kcfg + settings/dolphin_generalsettings.kcfg + settings/dolphin_compactmodesettings.kcfg + settings/dolphin_iconsmodesettings.kcfg + settings/dolphin_detailsmodesettings.kcfg + settings/dolphin_versioncontrolsettings.kcfg + DESTINATION ${KCFG_INSTALL_DIR} ) +install( FILES dolphinui.rc DESTINATION ${DATA_INSTALL_DIR}/dolphin ) +install( FILES search/filenamesearch.protocol DESTINATION ${SERVICES_INSTALL_DIR} ) +install( FILES settings/kcm/kcmdolphinviewmodes.desktop DESTINATION +${SERVICES_INSTALL_DIR} ) +install( FILES settings/kcm/kcmdolphinnavigation.desktop DESTINATION ${SERVICES_INSTALL_DIR} ) +install( FILES settings/kcm/kcmdolphinservices.desktop DESTINATION ${SERVICES_INSTALL_DIR} ) +install( FILES settings/kcm/kcmdolphingeneral.desktop DESTINATION ${SERVICES_INSTALL_DIR} ) +install( FILES settings/services/servicemenu.knsrc DESTINATION ${CONFIG_INSTALL_DIR} ) +install( PROGRAMS settings/services/servicemenuinstallation DESTINATION ${BIN_INSTALL_DIR} ) +install( PROGRAMS settings/services/servicemenudeinstallation DESTINATION ${BIN_INSTALL_DIR} ) +