]> cloud.milkyroute.net Git - dolphin.git/blob - CMakeLists.txt
GIT_SILENT Upgrade KDE Applications version to 18.04.1.
[dolphin.git] / CMakeLists.txt
1 cmake_minimum_required(VERSION 3.0)
2
3 # KDE Application Version, managed by release script
4 set (KDE_APPLICATIONS_VERSION_MAJOR "18")
5 set (KDE_APPLICATIONS_VERSION_MINOR "04")
6 set (KDE_APPLICATIONS_VERSION_MICRO "1")
7 set (KDE_APPLICATIONS_VERSION "${KDE_APPLICATIONS_VERSION_MAJOR}.${KDE_APPLICATIONS_VERSION_MINOR}.${KDE_APPLICATIONS_VERSION_MICRO}")
8 project(Dolphin VERSION ${KDE_APPLICATIONS_VERSION})
9
10 set(QT_MIN_VERSION "5.8.0")
11 set(KF5_MIN_VERSION "5.43.0")
12
13 # ECM setup
14 find_package(ECM ${KF5_MIN_VERSION} CONFIG REQUIRED)
15 set(CMAKE_MODULE_PATH ${ECM_MODULE_PATH} ${CMAKE_SOURCE_DIR}/cmake)
16
17 include(ECMSetupVersion)
18 include(ECMGenerateHeaders)
19 include(CMakePackageConfigHelpers)
20 include(GenerateExportHeader)
21 include(FeatureSummary)
22 include(KDEInstallDirs)
23 include(KDECMakeSettings)
24 include(KDEFrameworkCompilerSettings NO_POLICY_SCOPE)
25
26 ecm_setup_version(${KDE_APPLICATIONS_VERSION} VARIABLE_PREFIX DOLPHIN
27 VERSION_HEADER "${CMAKE_CURRENT_BINARY_DIR}/src/dolphin_version.h"
28 )
29
30 ecm_setup_version("5.0.0" VARIABLE_PREFIX DOLPHINVCS
31 VERSION_HEADER "${CMAKE_CURRENT_BINARY_DIR}/dolphinvcs_version.h"
32 PACKAGE_VERSION_FILE "${CMAKE_CURRENT_BINARY_DIR}/DolphinVcsConfigVersion.cmake"
33 SOVERSION 5
34 )
35
36 ecm_setup_version("5.0.0" VARIABLE_PREFIX DOLPHINPRIVATE
37 SOVERSION 5
38 )
39
40 find_package(Qt5 ${QT_MIN_VERSION} CONFIG REQUIRED COMPONENTS
41 Core
42 Concurrent
43 Widgets
44 Gui
45 DBus
46 )
47
48 find_package(KF5 ${KF5_MIN_VERSION} REQUIRED COMPONENTS
49 DocTools
50 Init
51 KCMUtils
52 NewStuff
53 CoreAddons
54 I18n
55 DBusAddons
56 Bookmarks
57 Config
58 KIO
59 Parts
60 Solid
61 IconThemes
62 Completion
63 TextWidgets
64 Notifications
65 Crash
66 )
67 find_package(KF5 ${KF5_MIN_VERSION} OPTIONAL_COMPONENTS
68 Activities
69 )
70
71 find_package(Phonon4Qt5 CONFIG REQUIRED)
72
73 find_package(KF5Baloo 4.97)
74 set_package_properties(KF5Baloo PROPERTIES DESCRIPTION "Baloo Core libraries"
75 URL "http://www.kde.org"
76 TYPE OPTIONAL
77 PURPOSE "For adding desktop-wide search and tagging support to dolphin"
78 )
79
80 find_package(KF5BalooWidgets 4.97)
81 set_package_properties(KF5BalooWidgets PROPERTIES DESCRIPTION "Baloos Widgets"
82 URL "http://www.kde.org"
83 TYPE OPTIONAL
84 )
85
86 find_package(KF5FileMetaData 5.19.0)
87 set_package_properties(KF5FileMetaData PROPERTIES
88 URL "https://projects.kde.org/kfilemetadata"
89 TYPE OPTIONAL
90 PURPOSE "For accessing file metadata labels"
91 )
92
93 if (KF5Baloo_FOUND AND KF5BalooWidgets_FOUND AND KF5FileMetaData_FOUND)
94 message(STATUS "Baloo packages are found")
95 set(HAVE_BALOO TRUE)
96 else()
97 find_package(KF5 ${KF5_MIN_VERSION} REQUIRED COMPONENTS
98 KDELibs4Support # for KFileMetaDataWidget
99 )
100 endif()
101
102 add_definitions(-DQT_NO_URL_CAST_FROM_STRING)
103
104 add_subdirectory(src)
105 add_subdirectory(doc)
106
107 # CMake files
108 set(CMAKECONFIG_INSTALL_DIR "${KDE_INSTALL_CMAKEPACKAGEDIR}/DolphinVcs")
109
110 configure_package_config_file(
111 "${CMAKE_CURRENT_SOURCE_DIR}/DolphinVcsConfig.cmake.in"
112 "${CMAKE_CURRENT_BINARY_DIR}/DolphinVcsConfig.cmake"
113 INSTALL_DESTINATION ${CMAKECONFIG_INSTALL_DIR}
114 )
115
116 install(FILES
117 "${CMAKE_CURRENT_BINARY_DIR}/DolphinVcsConfig.cmake"
118 "${CMAKE_CURRENT_BINARY_DIR}/DolphinVcsConfigVersion.cmake"
119 DESTINATION "${CMAKECONFIG_INSTALL_DIR}"
120 COMPONENT Devel
121 )
122
123 install(EXPORT DolphinVcsTargets
124 DESTINATION "${CMAKECONFIG_INSTALL_DIR}"
125 FILE DolphinVcsTargets.cmake
126 )
127
128 install(FILES
129 "${CMAKE_CURRENT_BINARY_DIR}/dolphinvcs_version.h"
130 DESTINATION "${KDE_INSTALL_INCLUDEDIR}/Dolphin"
131 COMPONENT Devel
132 )
133
134 configure_file(org.kde.dolphin.FileManager1.service.in
135 ${CMAKE_CURRENT_BINARY_DIR}/org.kde.dolphin.FileManager1.service)
136 install(FILES ${CMAKE_CURRENT_BINARY_DIR}/org.kde.dolphin.FileManager1.service
137 DESTINATION ${DBUS_SERVICES_INSTALL_DIR})
138
139 feature_summary(WHAT ALL FATAL_ON_MISSING_REQUIRED_PACKAGES)
140