X-Git-Url: https://cloud.milkyroute.net/gitweb/dolphin.git/blobdiff_plain/c2ef0392e985988a248854523362c39824480d1e..afc47abcb8c143674ba7148cee358c02f4b0fd7a:/CMakeLists.txt diff --git a/CMakeLists.txt b/CMakeLists.txt index 424e30f6f..fb7be4db2 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -1,14 +1,14 @@ cmake_minimum_required(VERSION 3.16) # KDE Application Version, managed by release script -set (RELEASE_SERVICE_VERSION_MAJOR "23") -set (RELEASE_SERVICE_VERSION_MINOR "03") -set (RELEASE_SERVICE_VERSION_MICRO "70") +set (RELEASE_SERVICE_VERSION_MAJOR "24") +set (RELEASE_SERVICE_VERSION_MINOR "01") +set (RELEASE_SERVICE_VERSION_MICRO "75") set (RELEASE_SERVICE_VERSION "${RELEASE_SERVICE_VERSION_MAJOR}.${RELEASE_SERVICE_VERSION_MINOR}.${RELEASE_SERVICE_VERSION_MICRO}") project(Dolphin VERSION ${RELEASE_SERVICE_VERSION}) -set(QT_MIN_VERSION "5.15.2") -set(KF6_MIN_VERSION "5.102.0") +set(QT_MIN_VERSION "6.4.0") +set(KF6_MIN_VERSION "5.240.0") # ECM setup find_package(ECM ${KF6_MIN_VERSION} CONFIG REQUIRED) @@ -27,22 +27,24 @@ include(GenerateExportHeader) include(FeatureSummary) include(ECMQtDeclareLoggingCategory) include(ECMDeprecationSettings) +include(CheckIncludeFiles) +include(CheckLibraryExists) ecm_setup_version(${RELEASE_SERVICE_VERSION} VARIABLE_PREFIX DOLPHIN VERSION_HEADER "${CMAKE_CURRENT_BINARY_DIR}/src/dolphin_version.h" ) -ecm_setup_version("5.0.0" VARIABLE_PREFIX DOLPHINVCS +ecm_setup_version(${RELEASE_SERVICE_VERSION} VARIABLE_PREFIX DOLPHINVCS VERSION_HEADER "${CMAKE_CURRENT_BINARY_DIR}/dolphinvcs_version.h" PACKAGE_VERSION_FILE "${CMAKE_CURRENT_BINARY_DIR}/DolphinVcsConfigVersion.cmake" - SOVERSION 5 + SOVERSION 6 ) -ecm_setup_version("5.0.0" VARIABLE_PREFIX DOLPHINPRIVATE - SOVERSION 5 +ecm_setup_version(${RELEASE_SERVICE_VERSION} VARIABLE_PREFIX DOLPHINPRIVATE + SOVERSION 6 ) -find_package(Qt${QT_MAJOR_VERSION} ${QT_MIN_VERSION} CONFIG REQUIRED COMPONENTS +find_package(Qt6 ${QT_MIN_VERSION} CONFIG REQUIRED COMPONENTS Core Concurrent Widgets @@ -52,10 +54,6 @@ find_package(Qt${QT_MAJOR_VERSION} ${QT_MIN_VERSION} CONFIG REQUIRED COMPONENTS if (UNIX AND NOT APPLE) set(HAVE_X11 TRUE) - - if (QT_MAJOR_VERSION STREQUAL "5") - find_package(Qt5X11Extras REQUIRED) - endif() endif() find_package(KF6 ${KF6_MIN_VERSION} REQUIRED COMPONENTS @@ -79,35 +77,35 @@ find_package(KF6 ${KF6_MIN_VERSION} REQUIRED COMPONENTS Codecs ) -find_package(KUserFeedback 1.2.0) -set_package_properties(KUserFeedback +find_package(KUserFeedbackQt6 1.2.1) +set_package_properties(KUserFeedbackQt6 PROPERTIES TYPE OPTIONAL PURPOSE "Used for submission of telemetry data" ) -if(KUserFeedback_FOUND) +if(KUserFeedbackQt6_FOUND) set(HAVE_KUSERFEEDBACK TRUE) endif() find_package(KF6 ${KF6_MIN_VERSION} OPTIONAL_COMPONENTS - Activities DocTools ) +find_package(KF6Activities) set_package_properties(KF6Activities PROPERTIES DESCRIPTION "KActivities libraries" URL "https://www.kde.org" TYPE OPTIONAL PURPOSE "For tracking which folders are frequently accessed on a Plasma desktop" ) -find_package(Phonon4Qt${QT_MAJOR_VERSION} CONFIG REQUIRED) +find_package(Phonon4Qt6 CONFIG REQUIRED) -find_package(PackageKitQt${QT_MAJOR_VERSION}) -set_package_properties(PackageKitQt${QT_MAJOR_VERSION} +find_package(PackageKitQt6) +set_package_properties(PackageKitQt6 PROPERTIES DESCRIPTION "Software Manager integration" TYPE OPTIONAL PURPOSE "Used in the service menu installer" ) -if(PackageKitQt${QT_MAJOR_VERSION}_FOUND) +if(PackageKitQt6_FOUND) set(HAVE_PACKAGEKIT TRUE) endif() @@ -118,7 +116,7 @@ set_package_properties(KF6Baloo PROPERTIES DESCRIPTION "Baloo Core libraries" PURPOSE "For adding desktop-wide search and tagging support to dolphin" ) -find_package(KF6BalooWidgets 19.07.70) +find_package(KF6BalooWidgets ${RELEASE_SERVICE_VERSION}) set_package_properties(KF6BalooWidgets PROPERTIES DESCRIPTION "Baloos Widgets" URL "https://www.kde.org" TYPE OPTIONAL @@ -149,10 +147,20 @@ else() set(HAVE_TERMINAL TRUE) endif() -ecm_set_disabled_deprecation_versions( - QT 5.15 - KF 5.90 -) +# Compatibility with platforms without native fts (e.g. musl) +check_include_files("sys/types.h;sys/stat.h;fts.h" HAVE_FTS_H) +if(HAVE_FTS_H) + check_function_exists(fts_open HAVE_FTS_OPEN) + if(NOT HAVE_FTS_OPEN) + check_library_exists(fts fts_open "" HAVE_LIB_FTS) + endif() +endif() + +if(HAVE_LIB_FTS) + set(FTS_LIB fts) +else() + set(FTS_LIB "") +endif() add_subdirectory(src) add_subdirectory(doc)