X-Git-Url: https://cloud.milkyroute.net/gitweb/dolphin.git/blobdiff_plain/aca62bee91684f0b4b8ebd603bfd102dbefb814a..d48b733:/CMakeLists.txt diff --git a/CMakeLists.txt b/CMakeLists.txt index 5a007f302..7e6111307 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -2,11 +2,19 @@ cmake_minimum_required(VERSION 2.8.12) project(Dolphin) -# ECM setup -find_package(ECM 1.6.0 CONFIG REQUIRED) -set(CMAKE_MODULE_PATH ${ECM_MODULE_PATH}) +# KDE Application Version, managed by release script +set (KDE_APPLICATIONS_VERSION_MAJOR "16") +set (KDE_APPLICATIONS_VERSION_MINOR "04") +set (KDE_APPLICATIONS_VERSION_MICRO "1") +set (KDE_APPLICATIONS_VERSION "${KDE_APPLICATIONS_VERSION_MAJOR}.${KDE_APPLICATIONS_VERSION_MINOR}.${KDE_APPLICATIONS_VERSION_MICRO}") + +set(QT_MIN_VERSION "5.4.0") +set(KF5_MIN_VERSION "5.21.0") +set(ECM_MIN_VERSION "1.6.0") -set(DOLPHIN_VERSION "4.97.0") +# ECM setup +find_package(ECM ${ECM_MIN_VERSION} CONFIG REQUIRED) +set(CMAKE_MODULE_PATH ${ECM_MODULE_PATH} ${CMAKE_SOURCE_DIR}/cmake) include(ECMSetupVersion) include(ECMGenerateHeaders) @@ -15,20 +23,53 @@ include(GenerateExportHeader) include(FeatureSummary) include(KDEInstallDirs) include(KDECMakeSettings) -include(KDEFrameworkCompilerSettings) +include(KDEFrameworkCompilerSettings NO_POLICY_SCOPE) -ecm_setup_version(${DOLPHIN_VERSION} VARIABLE_PREFIX DOLPHINVCS +ecm_setup_version(${KDE_APPLICATIONS_VERSION} VARIABLE_PREFIX DOLPHIN + VERSION_HEADER "${CMAKE_CURRENT_BINARY_DIR}/src/dolphin_version.h" +) + +ecm_setup_version("5.0.0" VARIABLE_PREFIX DOLPHINVCS VERSION_HEADER "${CMAKE_CURRENT_BINARY_DIR}/dolphinvcs_version.h" PACKAGE_VERSION_FILE "${CMAKE_CURRENT_BINARY_DIR}/DolphinVcsConfigVersion.cmake" SOVERSION 5 ) -ecm_setup_version(${DOLPHIN_VERSION} VARIABLE_PREFIX DOLPHINPRIVATE +ecm_setup_version("5.0.0" VARIABLE_PREFIX DOLPHINPRIVATE SOVERSION 5 ) -find_package(KF5 REQUIRED COMPONENTS DocTools Init KCMUtils KDELibs4Support NewStuff CoreAddons I18n DBusAddons) -find_package(KF5 COMPONENTS Activities) +find_package(Qt5 ${QT_MIN_VERSION} CONFIG REQUIRED COMPONENTS + Core + Concurrent + Widgets + Gui + DBus +) + +find_package(KF5 ${KF5_MIN_VERSION} REQUIRED COMPONENTS + DocTools + Init + KCMUtils + NewStuff + CoreAddons + I18n + DBusAddons + Bookmarks + Config + KIO + Parts + Solid + IconThemes + Completion + TextWidgets + WindowSystem + Notifications + Crash +) +find_package(KF5 ${KF5_MIN_VERSION} OPTIONAL_COMPONENTS + Activities +) find_package(Phonon4Qt5 CONFIG REQUIRED) @@ -45,7 +86,7 @@ set_package_properties(KF5BalooWidgets PROPERTIES DESCRIPTION "Baloos Widgets" TYPE OPTIONAL ) -find_package(KF5FileMetaData 4.97) +find_package(KF5FileMetaData 5.19.0) set_package_properties(KF5FileMetaData PROPERTIES URL "https://projects.kde.org/kfilemetadata" TYPE OPTIONAL @@ -55,10 +96,14 @@ set_package_properties(KF5FileMetaData PROPERTIES if (KF5Baloo_FOUND AND KF5BalooWidgets_FOUND AND KF5FileMetaData_FOUND) message(STATUS "Baloo packages are found") set(HAVE_BALOO TRUE) +else() + find_package(KF5 ${KF5_MIN_VERSION} REQUIRED COMPONENTS + KDELibs4Support # for KFileMetaDataWidget + ) endif() add_subdirectory(src) -add_subdirectory(docs) +add_subdirectory(doc) # CMake files set(CMAKECONFIG_INSTALL_DIR "${KDE_INSTALL_CMAKEPACKAGEDIR}/DolphinVcs") @@ -87,7 +132,10 @@ install(FILES COMPONENT Devel ) -# TODO Remove the if/endif lines if Dolphin is split. -if ("${CMAKE_SOURCE_DIR}" STREQUAL "${Dolphin_SOURCE_DIR}") - feature_summary(WHAT ALL FATAL_ON_MISSING_REQUIRED_PACKAGES) -endif() +configure_file(org.kde.dolphin.FileManager1.service.in + ${CMAKE_CURRENT_BINARY_DIR}/org.kde.dolphin.FileManager1.service) +install(FILES ${CMAKE_CURRENT_BINARY_DIR}/org.kde.dolphin.FileManager1.service + DESTINATION ${DBUS_SERVICES_INSTALL_DIR}) + +feature_summary(WHAT ALL FATAL_ON_MISSING_REQUIRED_PACKAGES) +