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)