]> cloud.milkyroute.net Git - dolphin.git/blobdiff - src/CMakeLists.txt
Allow compiling Dolphin with KF5
[dolphin.git] / src / CMakeLists.txt
index a914051ec6d96808ada4585c569e3b2d46e2df70..41666e10d46df939e58ed791e5207167024b581a 100644 (file)
@@ -1,17 +1,41 @@
-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 )
+find_package(Baloo)
+set_package_properties(Baloo PROPERTIES DESCRIPTION "Baloo Core libraries"
+                       URL "http://www.kde.org"
+                       TYPE OPTIONAL
+                       PURPOSE "For adding desktop-wide search and tagging support to dolphin"
+                      )
+
+find_package(BalooWidgets)
+set_package_properties(BalooWidgets PROPERTIES DESCRIPTION "Baloos Widgets"
+                       URL "http://www.kde.org"
+                       TYPE OPTIONAL
+                      )
+
+find_package(KFileMetaData)
+set_package_properties(KFileMetaData PROPERTIES
+                       URL "https://projects.kde.org/kfilemetadata"
+                       TYPE OPTIONAL
+                       PURPOSE "For accessing file metadata labels"
+                      )
+
+if (Baloo_FOUND AND BalooWidgets_FOUND AND KFileMetaData_FOUND)
+    set(HAVE_BALOO TRUE)
+endif()
+
+find_package(KF5NewStuff CONFIG REQUIRED)
+find_package(KF5KCMUtils CONFIG REQUIRED)
+find_package(Phonon4Qt5 CONFIG REQUIRED)
+
+configure_file(config-baloo.h.cmake ${CMAKE_CURRENT_BINARY_DIR}/config-baloo.h )
 
 macro_bool_to_01(X11_Xrender_FOUND HAVE_XRENDER)
 configure_file(config-X11.h.cmake ${CMAKE_CURRENT_BINARY_DIR}/config-X11.h )
 
-include_directories( ${KACTIVITIES_INCLUDE_DIRS} )
+include_directories( ${KACTIVITIES_INCLUDE_DIRS} ${CMAKE_CURRENT_BINARY_DIR} )
 
-if (Nepomuk_FOUND)
-  # Yes, Soprano includes is what we need here
-  include_directories( ${SOPRANO_INCLUDE_DIR} ${NEPOMUK_INCLUDE_DIR} )
-endif (Nepomuk_FOUND)
+if(HAVE_BALOO)
+  include_directories(${BALOO_INCLUDE_DIR} ${BALOO_WIDGETS_INCLUDE_DIR} ${KFILEMETADATA_INCLUDE_DIR})
+endif()
 
 add_subdirectory(tests)
 
@@ -29,17 +53,19 @@ set(dolphinprivate_LIB_SRCS
     kitemviews/kitemlistselectionmanager.cpp
     kitemviews/kitemliststyleoption.cpp
     kitemviews/kitemlistview.cpp
-    kitemviews/kitemlistviewaccessible.cpp
+#    kitemviews/kitemlistviewaccessible.cpp
     kitemviews/kitemlistwidget.cpp
     kitemviews/kitemmodelbase.cpp
+    kitemviews/kitemset.cpp
     kitemviews/kstandarditem.cpp
     kitemviews/kstandarditemlistgroupheader.cpp
     kitemviews/kstandarditemlistwidget.cpp
     kitemviews/kstandarditemlistview.cpp
     kitemviews/kstandarditemmodel.cpp
+    kitemviews/private/kdirectorycontentscounter.cpp
+    kitemviews/private/kdirectorycontentscounterworker.cpp
     kitemviews/private/kfileitemclipboard.cpp
     kitemviews/private/kfileitemmodeldirlister.cpp
-    kitemviews/private/kfileitemmodelsortalgorithm.cpp
     kitemviews/private/kfileitemmodelfilter.cpp
     kitemviews/private/kitemlistheaderwidget.cpp
     kitemviews/private/kitemlistkeyboardsearchmanager.cpp
@@ -71,23 +97,16 @@ set(dolphinprivate_LIB_SRCS
     views/viewmodecontroller.cpp
     views/viewproperties.cpp
     views/zoomlevelinfo.cpp
+    dolphinremoveaction.cpp
+    dolphinnewfilemenu.cpp
 )
 
-if (Nepomuk_FOUND)
+if(HAVE_BALOO)
     set(dolphinprivate_LIB_SRCS
         ${dolphinprivate_LIB_SRCS}
-        kitemviews/private/knepomukrolesprovider.cpp
-        kitemviews/private/nepomuk/resourcewatcher.cpp
+        kitemviews/private/kbaloorolesprovider.cpp
     )
-
-    qt4_add_dbus_interface(dolphinprivate_LIB_SRCS
-                           kitemviews/private/nepomuk/org.kde.nepomuk.ResourceWatcherConnection.xml
-                           resourcewatcherconnectioninterface)
-
-    qt4_add_dbus_interface(dolphinprivate_LIB_SRCS
-                           kitemviews/private/nepomuk/org.kde.nepomuk.ResourceWatcher.xml
-                           resourcewatchermanagerinterface)
-endif (Nepomuk_FOUND)
+endif()
 
 kde4_add_kcfg_files(dolphinprivate_LIB_SRCS
     settings/dolphin_compactmodesettings.kcfgc
@@ -102,20 +121,19 @@ kde4_add_library(dolphinprivate SHARED ${dolphinprivate_LIB_SRCS})
 
 target_link_libraries(
     dolphinprivate
-    ${KDE4_KFILE_LIBS}
     konq
-    ${KDE4_KNEWSTUFF3_LIBS}
+    KF5::NewStuff
+    KF5::KDE4Support
 )
 
-if (Nepomuk_FOUND)
+if(HAVE_BALOO)
     target_link_libraries(
         dolphinprivate
-        ${NEPOMUK_LIBRARIES}
-        ${NEPOMUK_QUERY_LIBRARIES}
-        nepomukutils
-        ${SOPRANO_LIBRARIES}
+        ${BALOO_LIBRARIES}
+        ${BALOO_WIDGETS_LIBRARY}
+        ${KFILEMETADATA_LIBRARY}
     )
-endif (Nepomuk_FOUND)
+endif()
 
 if(X11_Xrender_FOUND)
     target_link_libraries(dolphinprivate ${X11_Xrender_LIB})
@@ -130,15 +148,9 @@ install(TARGETS dolphinprivate  ${INSTALL_TARGETS_DEFAULT_ARGS})
 
 set(dolphinpart_SRCS
    dolphinpart.cpp
+   dolphinpart_ext.cpp
 )
 
-# Add dolphinpart_ext.cpp conditionally, only with KDE > 4.9.1.
-if (${KDE_VERSION} VERSION_GREATER "4.9.1")
-set(dolphinpart_SRCS
-    ${dolphinpart_SRCS}
-    dolphinpart_ext.cpp)
-endif (${KDE_VERSION} VERSION_GREATER "4.9.1")
-
 kde4_add_plugin(dolphinpart ${dolphinpart_SRCS})
 
 target_link_libraries(dolphinpart dolphinprivate konq ${KDE4_KPARTS_LIBS} ${KDE4_KFILE_LIBS})
@@ -155,7 +167,6 @@ set(dolphin_SRCS
     dolphinapplication.cpp
     dolphindockwidget.cpp
     dolphinmainwindow.cpp
-    dolphinnewfilemenu.cpp
     dolphinviewcontainer.cpp
     dolphincontextmenu.cpp
     filterbar/filterbar.cpp
@@ -172,13 +183,13 @@ set(dolphin_SRCS
     panels/places/placesitemlistwidget.cpp
     panels/places/placesitemmodel.cpp
     panels/places/placesitemsignalhandler.cpp
+    panels/places/placesview.cpp
     panels/panel.cpp
     panels/folders/foldersitemlistwidget.cpp
     panels/folders/treeviewcontextmenu.cpp
     panels/folders/folderspanel.cpp
     search/dolphinfacetswidget.cpp
     search/dolphinsearchbox.cpp
-    search/dolphinsearchinformation.cpp
     settings/general/behaviorsettingspage.cpp
     settings/general/configurepreviewplugindialog.cpp
     settings/general/confirmationssettingspage.cpp
@@ -205,6 +216,7 @@ set(dolphin_SRCS
 kde4_add_kcfg_files(dolphin_SRCS
     panels/folders/dolphin_folderspanelsettings.kcfgc
     panels/information/dolphin_informationpanelsettings.kcfgc
+    panels/places/dolphin_placespanelsettings.kcfgc
     settings/dolphin_compactmodesettings.kcfgc
     settings/dolphin_detailsmodesettings.kcfgc
     settings/dolphin_generalsettings.kcfgc
@@ -221,26 +233,25 @@ kde4_add_app_icon(dolphin_SRCS "${KDE4_ICON_INSTALL_DIR}/oxygen/*/apps/system-fi
 
 kde4_add_kdeinit_executable(dolphin ${dolphin_SRCS})
 
+target_include_directories(kdeinit_dolphin PRIVATE ${PHONON_INCLUDES})
+
 target_link_libraries(kdeinit_dolphin
-    ${KDE4_KDEPRINT_LIBS}
-    ${KDE4_KFILE_LIBS}
-    ${KDE4_KPARTS_LIBS}
-    ${KDE4_KCMUTILS_LIBRARY}
     konq
     dolphinprivate
-    knewstuff3
-    ${KDE4_SOLID_LIBS}
-    ${KDE4_PHONON_LIBS}
+    KF5::NewStuff
+    KF5::Parts
+    KF5::KCMUtils
+    KF5::Solid
+    Phonon::phonon4qt5
+    KF5::KDE4Support
 )
 
-if (Nepomuk_FOUND)
+if(HAVE_BALOO)
     target_link_libraries(kdeinit_dolphin
-        ${NEPOMUK_LIBRARIES}
-        ${SOPRANO_LIBRARIES}
-        ${NEPOMUK_QUERY_LIBRARIES}
-        nepomukutils
+        ${BALOO_LIBRARIES}
+        ${BALOO_WIDGETS_LIBRARY}
     )
-endif (Nepomuk_FOUND)
+endif()
 
 if (KActivities_FOUND)
     target_link_libraries(
@@ -311,12 +322,6 @@ target_link_libraries(kcm_dolphinviewmodes  ${KDE4_KDEUI_LIBS} ${KDE4_KFILE_LIBS
 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_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})
-  target_link_libraries(kcm_dolphinnavigation ${NEPOMUK_LIBRARIES})
-  target_link_libraries(kcm_dolphinservices ${NEPOMUK_LIBRARIES})
-  target_link_libraries(kcm_dolphingeneral ${NEPOMUK_LIBRARIES})
-endif (Nepomuk_FOUND)
 
 install(TARGETS kcm_dolphinviewmodes DESTINATION ${PLUGIN_INSTALL_DIR} )
 install(TARGETS kcm_dolphinnavigation DESTINATION ${PLUGIN_INSTALL_DIR} )