Warning, /network/telepathy-logger-qt/CMakeLists.txt is written in an unsupported language. File is not indexed.
0001 cmake_minimum_required(VERSION 3.5) 0002 0003 project(TelepathyLoggerQt) 0004 0005 # ECM setup 0006 find_package(ECM 1.6.0 CONFIG REQUIRED) 0007 set(CMAKE_MODULE_PATH ${ECM_MODULE_PATH} "${TelepathyLoggerQt_SOURCE_DIR}/cmake/modules") 0008 0009 include(GenerateExportHeader) 0010 include(ECMGeneratePriFile) 0011 include(ECMPackageConfigHelpers) 0012 include(ECMSetupVersion) 0013 include(FeatureSummary) 0014 include(KDEInstallDirs) 0015 include(KDECMakeSettings) 0016 0017 include(Doxygen) 0018 0019 set(TELEPATHY_LOGGER_QT_VERSION "0.9.80.0") 0020 0021 ecm_setup_version(${TELEPATHY_LOGGER_QT_VERSION} VARIABLE_PREFIX TelepathyLoggerQt 0022 VERSION_HEADER "${CMAKE_CURRENT_BINARY_DIR}/TelepathyLoggerQt_version.h" 0023 PACKAGE_VERSION_FILE "${CMAKE_CURRENT_BINARY_DIR}/TelepathyLoggerQtConfigVersion.cmake" 0024 SOVERSION 5 0025 ) 0026 0027 # TelepathyLoggerQt specific defines needed to trigger deprecation warnings 0028 if (CXX_DEPRECATED_DECLARATIONS) 0029 set(DEPRECATED_DECLARATIONS_FLAGS "${DEPRECATED_DECLARATIONS_FLAGS} -DTELEPATHY_LOGGER_QT_DEPRECATED_WARNINGS") 0030 endif (CXX_DEPRECATED_DECLARATIONS) 0031 0032 ################# Find packages ##################### 0033 set(QT5_MIN_VERSION "5.2") 0034 find_package(Qt5 ${QT5_MIN_VERSION} REQUIRED COMPONENTS Core DBus Network Xml) 0035 0036 set(TELEPATHY_QT_MIN_VERSION "0.9.1") 0037 find_package(TelepathyQt5 ${TELEPATHY_QT_MIN_VERSION} REQUIRED) 0038 set_package_properties(TelepathyQt5 PROPERTIES 0039 DESCRIPTION "Qt bindings for Telepathy" 0040 URL "https://telepathy.freedesktop.org" 0041 TYPE REQUIRED) 0042 0043 find_package(GLIB2 REQUIRED) 0044 set_package_properties(GLIB2 PROPERTIES 0045 DESCRIPTION "A library containing many useful C routines" 0046 URL "https://developer.gnome.org/glib/" 0047 TYPE REQUIRED) 0048 0049 find_package(GObject REQUIRED) 0050 set_package_properties(GObject PROPERTIES 0051 DESCRIPTION "GLib Object System" 0052 URL "https://developer.gnome.org/glib/" 0053 TYPE REQUIRED) 0054 0055 find_package(DBus REQUIRED) 0056 set_package_properties(DBus PROPERTIES 0057 DESCRIPTION "Inter-process communication system" 0058 URL "https://dbus.freedesktop.org" 0059 TYPE REQUIRED) 0060 0061 find_package(DBusGLib REQUIRED) 0062 set_package_properties(DBusGLib PROPERTIES 0063 DESCRIPTION "GLib bindings for DBus" 0064 URL "https://dbus.freedesktop.org" 0065 TYPE REQUIRED) 0066 0067 find_package(LibXml2 REQUIRED) 0068 set_package_properties(LibXml2 PROPERTIES 0069 DESCRIPTION "XML C parser and toolkit" 0070 URL "http://www.xmlsoft.org" 0071 TYPE REQUIRED) 0072 0073 # Find telepathy-glib 0074 set(TELEPATHY_GLIB_MIN_VERSION 0.16.0) 0075 find_package(TelepathyGlib ${TELEPATHY_GLIB_MIN_VERSION} REQUIRED) 0076 set_package_properties(TelepathyGlib PROPERTIES 0077 DESCRIPTION "Glib bindings for Telepathy" 0078 URL "https://telepathy.freedesktop.org" 0079 TYPE REQUIRED) 0080 0081 # Find python 0082 if(${CMAKE_VERSION} VERSION_LESS 3.12) 0083 find_package(PythonInterp 3 REQUIRED) 0084 set_package_properties(PythonInterp PROPERTIES 0085 DESCRIPTION "Python Interpreter" 0086 URL "https://www.python.org" 0087 TYPE REQUIRED) 0088 0089 # PythonInterp exposes PYTHON_EXECUTABLE on its own 0090 else() 0091 find_package(Python3 REQUIRED) 0092 set_package_properties(Python3 PROPERTIES 0093 DESCRIPTION "Python Interpreter" 0094 URL "https://www.python.org" 0095 TYPE REQUIRED) 0096 set(PYTHON_EXECUTABLE "${Python3_EXECUTABLE}") 0097 endif() 0098 0099 # Find TelepathyLogger >= 0.8.0 0100 set(TELEPATHY_LOGGER_MIN_VERSION 0.8.0) 0101 find_package(TelepathyLogger ${TELEPATHY_LOGGER_MIN_VERSION} REQUIRED) 0102 set_package_properties(TelepathyLogger PROPERTIES 0103 DESCRIPTION "Daemon for logging Telepathy conversations" 0104 URL "https://telepathy.freedesktop.org" 0105 TYPE REQUIRED) 0106 # Generate a helper include file that defines current TPL version 0107 ecm_setup_version(${TELEPATHY_LOGGER_VERSION} VARIABLE_PREFIX TelepathyLogger 0108 VERSION_HEADER "${CMAKE_CURRENT_BINARY_DIR}/TelepathyLogger_version.h") 0109 0110 ################# Targets #################### 0111 0112 # Prevent conflicts between Glib and Qt 0113 add_definitions(-DQT_NO_KEYWORDS) 0114 0115 0116 # Add the source subdirectories 0117 add_subdirectory(TelepathyLoggerQt) 0118 #add_subdirectory(tests) 0119 #add_subdirectory(tools) 0120 0121 0122 ############### CMake Config Files #################### 0123 0124 set(CMAKECONFIG_INSTALL_DIR "${KDE_INSTALL_CMAKEPACKAGEDIR}/TelepathyLoggerQt") 0125 0126 ecm_configure_package_config_file( 0127 "${CMAKE_CURRENT_SOURCE_DIR}/TelepathyLoggerQt/TelepathyLoggerQtConfig.cmake.in" 0128 "${CMAKE_CURRENT_BINARY_DIR}/TelepathyLoggerQt/TelepathyLoggerQtConfig.cmake" 0129 INSTALL_DESTINATION "${CMAKECONFIG_INSTALL_DIR}" 0130 ) 0131 0132 install(FILES 0133 "${CMAKE_CURRENT_BINARY_DIR}/TelepathyLoggerQt/TelepathyLoggerQtConfig.cmake" 0134 "${CMAKE_CURRENT_BINARY_DIR}/TelepathyLoggerQtConfigVersion.cmake" 0135 DESTINATION "${CMAKECONFIG_INSTALL_DIR}" 0136 COMPONENT DEVEL 0137 ) 0138 0139 install(EXPORT TelepathyLoggerQtTargets 0140 DESTINATION "${CMAKECONFIG_INSTALL_DIR}" 0141 FILE TelepathyLoggerQtTargets.cmake) 0142 0143 install(FILES 0144 "${CMAKE_CURRENT_BINARY_DIR}/TelepathyLoggerQt_version.h" 0145 "${CMAKE_CURRENT_BINARY_DIR}/TelepathyLogger_version.h" 0146 DESTINATION "${KDE_INSTALL_INCLUDEDIR}/TelepathyLoggerQt" 0147 COMPONENT Devel) 0148 0149 0150 feature_summary(WHAT ALL FATAL_ON_MISSING_REQUIRED_PACKAGES)