Warning, /sdk/cervisia/CMakeLists.txt is written in an unsupported language. File is not indexed.
0001 cmake_minimum_required(VERSION 3.16) 0002 0003 # KDE Application Version, managed by release script 0004 set(RELEASE_SERVICE_VERSION_MAJOR "23") 0005 set(RELEASE_SERVICE_VERSION_MINOR "03") 0006 set(RELEASE_SERVICE_VERSION_MICRO "70") 0007 set(RELEASE_SERVICE_VERSION "${RELEASE_SERVICE_VERSION_MAJOR}.${RELEASE_SERVICE_VERSION_MINOR}.${RELEASE_SERVICE_VERSION_MICRO}") 0008 0009 project(cervisia VERSION ${RELEASE_SERVICE_VERSION}) 0010 0011 set(QT_MIN_VERSION "5.15.0") 0012 set (KDE_COMPILERSETTINGS_LEVEL "5.82.0") 0013 0014 find_package(ECM 5.90.0 REQUIRED NO_MODULE) 0015 set(CMAKE_MODULE_PATH ${ECM_MODULE_PATH}) 0016 0017 add_definitions(-DTRANSLATION_DOMAIN="cervisia") 0018 0019 include(KDEInstallDirs) 0020 include(KDECMakeSettings) 0021 include(KDECompilerSettings NO_POLICY_SCOPE) 0022 include(ECMInstallIcons) 0023 include(ECMAddAppIcon) 0024 include(ECMMarkNonGuiExecutable) 0025 include(FeatureSummary) 0026 include(ECMSetupVersion) 0027 include(KDEGitCommitHooks) 0028 include(KDEClangFormat) 0029 file(GLOB_RECURSE ALL_CLANG_FORMAT_SOURCE_FILES *.cpp *.h *.c) 0030 kde_clang_format(${ALL_CLANG_FORMAT_SOURCE_FILES}) 0031 0032 ecm_setup_version(${RELEASE_SERVICE_VERSION} VARIABLE_PREFIX CERVISIA VERSION_HEADER cervisia_version.h) 0033 0034 find_package(Qt${QT_MAJOR_VERSION} ${QT_MIN_VERSION} CONFIG REQUIRED COMPONENTS Core Widgets DBus) 0035 0036 find_package(KF5 REQUIRED COMPONENTS I18n Parts DocTools Init IconThemes Notifications WidgetsAddons ItemViews Su TextWidgets) 0037 0038 add_subdirectory( doc ) 0039 add_subdirectory( cvsservice ) 0040 add_subdirectory( pics ) 0041 0042 ki18n_install(po) 0043 kdoctools_install(po) 0044 0045 set(_KDECONFDIR_ ${KDE_INSTALL_CONFDIR}) 0046 set(_KDEHTMLDIR_ ${KDE_INSTALL_DOCBUNDLEDIR}) 0047 0048 ########### next target ############### 0049 0050 set(libcervisia_SRCS 0051 annotatedialog.cpp 0052 diffdialog.cpp 0053 patchoptiondialog.cpp 0054 logdialog.cpp 0055 progressdialog.cpp 0056 resolvedialog.cpp 0057 resolvedialog_p.cpp 0058 annotateview.cpp 0059 diffview.cpp 0060 loglist.cpp 0061 logplainview.cpp 0062 logtree.cpp 0063 annotatecontroller.cpp 0064 loginfo.cpp 0065 misc.cpp 0066 qttableview.cpp 0067 tooltip.cpp 0068 settingsdialog.cpp 0069 debug.cpp 0070 annotatedialog.h 0071 diffdialog.h 0072 patchoptiondialog.h 0073 logdialog.h 0074 progressdialog.h 0075 resolvedialog.h 0076 resolvedialog_p.h 0077 annotateview.h 0078 diffview.h 0079 loglist.h 0080 logplainview.h 0081 logtree.h 0082 annotatecontroller.h 0083 loginfo.h 0084 misc.h 0085 qttableview.h 0086 tooltip.h 0087 settingsdialog.h 0088 debug.h 0089 ) 0090 0091 qt_add_dbus_interfaces( libcervisia_SRCS cvsservice/org.kde.cervisia5.cvsservice.xml ) 0092 qt_add_dbus_interfaces( libcervisia_SRCS cvsservice/org.kde.cervisia5.cvsjob.xml ) 0093 qt_add_dbus_interfaces( libcervisia_SRCS cvsservice/org.kde.cervisia5.cvsloginjob.xml ) 0094 qt_add_dbus_interfaces( libcervisia_SRCS cvsservice/org.kde.cervisia5.repository.xml ) 0095 0096 0097 ki18n_wrap_ui(libcervisia_SRCS settingsdialog_advanced.ui ) 0098 0099 kconfig_add_kcfg_files(libcervisia_SRCS cervisiasettings.kcfgc ) 0100 0101 0102 set(cervisia_KDEINIT_SRCS ${libcervisia_SRCS} 0103 main.cpp 0104 cervisiashell.cpp ) 0105 0106 kf5_add_kdeinit_executable(cervisia ${cervisia_KDEINIT_SRCS}) 0107 0108 target_link_libraries(kdeinit_cervisia KF5::I18n KF5::TextWidgets KF5::Parts KF5::ItemViews) 0109 0110 install(TARGETS kdeinit_cervisia ${KDE_INSTALL_TARGETS_DEFAULT_ARGS} ) 0111 0112 install(TARGETS cervisia ${KDE_INSTALL_TARGETS_DEFAULT_ARGS} ) 0113 0114 ########### next target ############### 0115 0116 set(cervisiapart_PART_SRCS ${libcervisia_SRCS} 0117 updateview.cpp 0118 protocolview.cpp 0119 watchdialog.cpp 0120 changelogdialog.cpp 0121 historydialog.cpp 0122 repositorydialog.cpp 0123 commitdialog.cpp 0124 checkoutdialog.cpp 0125 updatedialog.cpp 0126 tagdialog.cpp 0127 mergedialog.cpp 0128 cvsdir.cpp 0129 repositories.cpp 0130 cervisiapart.cpp 0131 addrepositorydialog.cpp 0132 addremovedialog.cpp 0133 watchersdialog.cpp 0134 watchersmodel.cpp 0135 updateview_items.cpp 0136 updateview_visitors.cpp 0137 entry.cpp 0138 entry_status.cpp 0139 stringmatcher.cpp 0140 cvsinitdialog.cpp 0141 ignorelistbase.cpp 0142 dirignorelist.cpp 0143 globalignorelist.cpp 0144 addignoremenu.cpp 0145 editwithmenu.cpp 0146 logmessageedit.cpp 0147 updateview.h 0148 protocolview.h 0149 watchdialog.h 0150 changelogdialog.h 0151 historydialog.h 0152 repositorydialog.h 0153 commitdialog.h 0154 checkoutdialog.h 0155 updatedialog.h 0156 tagdialog.h 0157 mergedialog.h 0158 cvsdir.h 0159 repositories.h 0160 cervisiapart.h 0161 addrepositorydialog.h 0162 addremovedialog.h 0163 watchersdialog.h 0164 watchersmodel.h 0165 updateview_items.h 0166 updateview_visitors.h 0167 entry.h 0168 entry_status.h 0169 stringmatcher.h 0170 cvsinitdialog.h 0171 ignorelistbase.h 0172 dirignorelist.h 0173 globalignorelist.h 0174 addignoremenu.h 0175 editwithmenu.h 0176 logmessageedit.h 0177 ) 0178 0179 0180 qt_add_dbus_adaptor(cervisiapart_PART_SRCS org.kde.cervisia5.protocolview.xml protocolview.h ProtocolView) 0181 0182 add_library(cervisiapart5 MODULE ${cervisiapart_PART_SRCS}) 0183 0184 target_link_libraries(cervisiapart5 KF5::I18n KF5::TextWidgets KF5::Parts KF5::Notifications KF5::ItemViews) 0185 0186 install(TARGETS cervisiapart5 DESTINATION ${KDE_INSTALL_PLUGINDIR} ) 0187 0188 0189 ########### next target ############### 0190 0191 0192 ########### install files ############### 0193 0194 install(PROGRAMS org.kde.cervisia.desktop DESTINATION ${KDE_INSTALL_APPDIR} ) 0195 install(FILES org.kde.cervisia.appdata.xml DESTINATION ${KDE_INSTALL_METAINFODIR} ) 0196 install(FILES org.kde.cervisiapart5.desktop DESTINATION ${KDE_INSTALL_KSERVICESDIR} ) 0197 install(FILES cervisiapart.kcfg DESTINATION ${KDE_INSTALL_KCFGDIR} ) 0198 install(FILES cervisiaui.rc DESTINATION ${KDE_INSTALL_KXMLGUIDIR}/cervisiapart ) 0199 install(FILES cervisiashellui.rc DESTINATION ${KDE_INSTALL_KXMLGUIDIR}/cervisia ) 0200 install(FILES cervisia.notifyrc DESTINATION ${KDE_INSTALL_KNOTIFYRCDIR} ) 0201 0202 ecm_install_icons(ICONS 0203 16-apps-cervisia.png 0204 22-apps-cervisia.png 0205 32-apps-cervisia.png 0206 48-apps-cervisia.png 0207 DESTINATION ${KDE_INSTALL_ICONDIR} 0208 THEME hicolor 0209 ) 0210 kde_configure_git_pre_commit_hook(CHECKS CLANG_FORMAT) 0211 feature_summary(WHAT ALL FATAL_ON_MISSING_REQUIRED_PACKAGES)