Warning, /pim/kldap/CMakeLists.txt is written in an unsupported language. File is not indexed.

0001 # SPDX-FileCopyrightText: none
0002 # SPDX-License-Identifier: BSD-3-Clause
0003 cmake_minimum_required(VERSION 3.16 FATAL_ERROR)
0004 set(PIM_VERSION "6.0.40")
0005 
0006 project(KLdap VERSION ${PIM_VERSION})
0007 
0008 # ECM setup
0009 set(KF_MIN_VERSION "5.248.0")
0010 set(QT_REQUIRED_VERSION "6.6.0")
0011 find_package(ECM ${KF_MIN_VERSION} CONFIG REQUIRED)
0012 set(CMAKE_MODULE_PATH ${KLdap_SOURCE_DIR}/cmake ${ECM_MODULE_PATH})
0013 
0014 include(KDEInstallDirs)
0015 include(KDECMakeSettings)
0016 include(KDECompilerSettings NO_POLICY_SCOPE)
0017 
0018 include(GenerateExportHeader)
0019 include(ECMGenerateHeaders)
0020 
0021 include(ECMSetupVersion)
0022 include(FeatureSummary)
0023 include(KDEGitCommitHooks)
0024 include(KDEClangFormat)
0025 file(GLOB_RECURSE ALL_CLANG_FORMAT_SOURCE_FILES *.cpp *.h *.c)
0026 kde_clang_format(${ALL_CLANG_FORMAT_SOURCE_FILES})
0027 
0028 include(ECMQtDeclareLoggingCategory)
0029 include(ECMDeprecationSettings)
0030 include(ECMFeatureSummary)
0031 include(ECMAddQch)
0032 
0033 set(KLDAP_LIB_VERSION ${PIM_VERSION})
0034 
0035 find_package(KF6KIO ${KF_MIN_VERSION} CONFIG REQUIRED)
0036 find_package(KF6I18n ${KF_MIN_VERSION} CONFIG REQUIRED)
0037 find_package(KF6DocTools ${KF_MIN_VERSION} CONFIG)
0038 
0039 find_package(Qt6Keychain CONFIG)
0040 set_package_properties(Qt6Keychain PROPERTIES
0041                                    DESCRIPTION "Provides support for secure credentials storage"
0042                                    URL "https://github.com/frankosterfeld/qtkeychain"
0043                                    TYPE REQUIRED)
0044 
0045 if (Qt6Keychain_VERSION VERSION_LESS 0.14.2)
0046      MESSAGE(STATUS "Qt6KeyChain version is less 0.14.2. It will not support KWallet 6... It will not able to load password. Please update it.")
0047 endif()
0048 
0049 # tell what is missing without doctools
0050 set_package_properties(KF6DocTools PROPERTIES DESCRIPTION "Provides tools to generate documentation in various format from DocBook files"
0051                        TYPE OPTIONAL
0052                        PURPOSE "Required to build documentation")
0053 
0054 option(BUILD_QCH "Build API documentation in QCH format (for e.g. Qt Assistant, Qt Creator & KDevelop)" OFF)
0055 add_feature_info(QCH ${BUILD_QCH} "API documentation in QCH format (for e.g. Qt Assistant, Qt Creator & KDevelop)")
0056 
0057 
0058 option(USE_UNITY_CMAKE_SUPPORT "Use UNITY cmake support (speedup compile time)" OFF)
0059 set(COMPILE_WITH_UNITY_CMAKE_SUPPORT OFF)
0060 if (USE_UNITY_CMAKE_SUPPORT)
0061     set(COMPILE_WITH_UNITY_CMAKE_SUPPORT ON)
0062 endif()
0063 
0064 ########### Find packages ###########
0065 find_package(KF6WidgetsAddons ${KF_MIN_VERSION} CONFIG REQUIRED)
0066 
0067 add_definitions(-DQT_NO_CONTEXTLESS_CONNECT)
0068 ecm_set_disabled_deprecation_versions(QT 6.6.0 KF 5.249.0)
0069 
0070 
0071 find_package(Ldap)
0072 set_package_properties(Ldap PROPERTIES
0073   TYPE RECOMMENDED
0074   PURPOSE "Needed to provide LDAP functionality in KDE"
0075 )
0076 
0077 find_package(Sasl2)
0078 set_package_properties(Sasl2 PROPERTIES TYPE REQUIRED)
0079 
0080 if (Ldap_FOUND)
0081    set(LDAP_FOUND 1)
0082 endif()
0083 
0084 add_definitions(-DTRANSLATION_DOMAIN=\"libkldap6\")
0085 
0086 
0087 ########### Targets ###########
0088 add_subdirectory(src)
0089 add_subdirectory(kioworker)
0090 
0091 ecm_qt_install_logging_categories(
0092         EXPORT KLDAP
0093         FILE kldap.categories
0094         DESTINATION ${KDE_INSTALL_LOGGINGCATEGORIESDIR}
0095         )
0096 
0097 kde_configure_git_pre_commit_hook(CHECKS CLANG_FORMAT)
0098 ki18n_install(po)
0099 if(KF6DocTools_FOUND)
0100         kdoctools_install(po)
0101 endif()
0102 ecm_feature_summary(WHAT ALL FATAL_ON_MISSING_REQUIRED_PACKAGES)