4 if(${CMAKE_SOURCE_DIR} STREQUAL ${knotes_SOURCE_DIR})
5 cmake_minimum_required(VERSION 3.1)
6 set(KF5_VERSION "5.23.0")
7 find_package(ECM ${KF5_VERSION} REQUIRED NO_MODULE)
8 set(CMAKE_MODULE_PATH ${knotes_SOURCE_DIR}/cmake/modules ${ECM_MODULE_PATH})
9 include(ECMInstallIcons)
11 include(ECMOptionalAddSubdirectory)
12 include(ECMSetupVersion)
14 include(ECMMarkNonGuiExecutable)
15 include(GenerateExportHeader)
16 include(ECMGenerateHeaders)
17 include(CMakePackageConfigHelpers)
18 include(FeatureSummary)
19 include(CheckFunctionExists)
20 include(ECMGeneratePriFile)
22 include(KDEInstallDirs)
23 include(KDECMakeSettings)
24 include(KDECompilerSettings NO_POLICY_SCOPE)
25 include(ECMAddAppIcon)
26 include(ECMQtDeclareLoggingCategory)
29 set(KDEPIM_DEV_VERSION )
32 if(DEFINED KDEPIM_DEV_VERSION)
33 set(KDEPIM_DEV_VERSION " ${KDEPIM_DEV_VERSION}")
38 set(KDEPIM_VERSION_NUMBER "5.3.0")
39 set(KDEPIM_VERSION "${KDEPIM_VERSION_NUMBER}${KDEPIM_DEV_VERSION}")
40 set(KDEPIM_LIB_VERSION "${KDEPIM_VERSION_NUMBER}")
41 set(KDEPIM_LIB_SOVERSION "5")
44 set(AKONADINOTES_LIB_VERSION "5.3.0")
45 set(AKONADI_VERSION "5.3.0")
46 set(CALENDARUTILS_LIB_VERSION "5.3.0")
47 set(KDEPIM_APPS_LIB_VERSION_LIB "5.3.0")
48 set(KONTACTINTERFACE_LIB_VERSION "5.3.0")
49 set(KPIMTEXTEDIT_LIB_VERSION "5.3.0")
50 set(LIBKDEPIM_LIB_VERSION_LIB "5.3.0")
51 set(KMIME_LIB_VERSION "5.3.0")
52 set(PIMCOMMON_LIB_VERSION_LIB "5.3.0")
55 set(QT_REQUIRED_VERSION "5.6.0")
56 find_package(Qt5 ${QT_REQUIRED_VERSION} CONFIG REQUIRED DBus Network PrintSupport Test Widgets Xml)
57 find_package(Qt5X11Extras NO_MODULE)
58 find_package(Grantlee5 "5.1" CONFIG REQUIRED)
60 find_package(KF5Completion ${KF5_VERSION} REQUIRED)
61 find_package(KF5Config ${KF5_VERSION} REQUIRED)
62 find_package(KF5ConfigWidgets ${KF5_VERSION} REQUIRED)
63 find_package(KF5CoreAddons ${KF5_VERSION} REQUIRED)
64 find_package(KF5Crash ${KF5_VERSION} REQUIRED)
65 find_package(KF5DBusAddons ${KF5_VERSION} CONFIG REQUIRED)
66 find_package(KF5DNSSD ${KF5_VERSION} CONFIG REQUIRED)
67 find_package(KF5DocTools ${KF5_VERSION} REQUIRED)
68 find_package(KF5GlobalAccel ${KF5_VERSION} CONFIG REQUIRED)
69 find_package(KF5IconThemes ${KF5_VERSION} CONFIG REQUIRED)
70 find_package(KF5ItemModels ${KF5_VERSION} CONFIG REQUIRED)
71 find_package(KF5ItemViews ${KF5_VERSION} CONFIG REQUIRED)
72 find_package(KF5KCMUtils ${KF5_VERSION} CONFIG REQUIRED)
73 find_package(KF5NewStuff ${KF5_VERSION} CONFIG REQUIRED)
74 find_package(KF5Notifications ${KF5_VERSION} CONFIG REQUIRED)
75 find_package(KF5NotifyConfig ${KF5_VERSION} CONFIG REQUIRED)
76 find_package(KF5Parts ${KF5_VERSION} CONFIG REQUIRED)
77 find_package(KF5TextWidgets ${KF5_VERSION} REQUIRED)
78 find_package(KF5WidgetsAddons ${KF5_VERSION} REQUIRED)
79 find_package(KF5WindowSystem ${KF5_VERSION} CONFIG REQUIRED)
80 find_package(KF5XmlGui ${KF5_VERSION} CONFIG REQUIRED)
83 # Find KdepimLibs Package
84 find_package(KF5Akonadi ${AKONADI_VERSION} CONFIG REQUIRED)
85 find_package(KF5AkonadiNotes ${AKONADINOTES_LIB_VERSION} CONFIG REQUIRED)
86 find_package(KF5CalendarUtils ${CALENDARUTILS_LIB_VERSION} CONFIG REQUIRED)
87 find_package(KF5KontactInterface ${KONTACTINTERFACE_LIB_VERSION} CONFIG REQUIRED)
88 find_package(KF5Libkdepim ${LIBKDEPIM_LIB_VERSION_LIB} CONFIG REQUIRED)
89 find_package(KF5Mime ${KMIME_LIB_VERSION} CONFIG REQUIRED)
90 find_package(KF5PimCommon ${PIMCOMMON_LIB_VERSION_LIB} CONFIG REQUIRED)
91 find_package(KF5PimTextEdit ${KPIMTEXTEDIT_LIB_VERSION} CONFIG REQUIRED)
94 find_package(KF5AkonadiSearch "5.3.0" CONFIG REQUIRED)
95 set_package_properties(KF5AkonadiSearch PROPERTIES DESCRIPTION "The Akonadi Search libraries" URL "http://www.kde.org" TYPE REQUIRED PURPOSE "Provides search capabilities in KMail and Akonadi")
97 find_package(Boost 1.34.0)
98 set_package_properties(Boost PROPERTIES DESCRIPTION "Boost C++ Libraries" URL "http://www.boost.org" TYPE REQUIRED PURPOSE "Boost is required for building most KDEPIM applications")
104 set(KDEPIM_HAVE_X11 ${X11_FOUND})
105 add_definitions(-DQT_NO_URL_CAST_FROM_STRING)
108 add_definitions(-DQT_USE_QSTRINGBUILDER)
109 set(CMAKE_MODULE_PATH ${knotes_SOURCE_DIR}/cmake/modules ${ECM_MODULE_PATH})
110 find_package(Xsltproc)
111 set_package_properties(Xsltproc PROPERTIES DESCRIPTION "XSLT processor from libxslt" TYPE REQUIRED PURPOSE "Required to generate D-Bus interfaces for all Akonadi resources.")
113 include_directories(${knotes_SOURCE_DIR} ${knotes_BINARY_DIR})
114 add_definitions( -DQT_NO_CAST_FROM_ASCII )
115 add_definitions( -DQT_NO_CAST_TO_ASCII )
117 configure_file(knotes-version.h.cmake ${CMAKE_CURRENT_BINARY_DIR}/knotes-version.h @ONLY)
119 add_subdirectory(noteshared)
120 add_subdirectory(src)
121 add_subdirectory(notesagent)
123 install( FILES knotes.categories DESTINATION ${KDE_INSTALL_CONFDIR} )
125 if ("${CMAKE_BINARY_DIR}" STREQUAL "${CMAKE_CURRENT_BINARY_DIR}")
126 feature_summary(WHAT ALL FATAL_ON_MISSING_REQUIRED_PACKAGES)