Warning, /frameworks/ktexteditor/src/CMakeLists.txt is written in an unsupported language. File is not indexed.
0001 # jscripts for the part 0002 add_subdirectory( script/data ) 0003 0004 if(EditorConfig_FOUND) 0005 SET (CMAKE_REQUIRED_LIBRARIES ${EditorConfig_LIBRARIES}) 0006 set (KTEXTEDITOR_OPTIONAL_LIBS ${KTEXTEDITOR_OPTIONAL_LIBS} ${EditorConfig_LIBRARIES}) 0007 include_directories(${EditorConfig_INCLUDE_DIRS}) 0008 endif() 0009 0010 # handle include files, both normal ones and generated ones 0011 add_subdirectory(include) 0012 0013 # includes 0014 include_directories( 0015 # for config.h 0016 ${CMAKE_BINARY_DIR} 0017 0018 # for generated ktexteditor headers 0019 ${CMAKE_CURRENT_BINARY_DIR}/include 0020 0021 # for normal sources 0022 ${CMAKE_CURRENT_SOURCE_DIR} 0023 ${CMAKE_CURRENT_SOURCE_DIR}/include 0024 ${CMAKE_CURRENT_SOURCE_DIR}/include/ktexteditor 0025 ${CMAKE_CURRENT_SOURCE_DIR}/buffer 0026 ${CMAKE_CURRENT_SOURCE_DIR}/completion 0027 ${CMAKE_CURRENT_SOURCE_DIR}/dialogs 0028 ${CMAKE_CURRENT_SOURCE_DIR}/document 0029 ${CMAKE_CURRENT_SOURCE_DIR}/script 0030 ${CMAKE_CURRENT_SOURCE_DIR}/mode 0031 ${CMAKE_CURRENT_SOURCE_DIR}/render 0032 ${CMAKE_CURRENT_SOURCE_DIR}/search 0033 ${CMAKE_CURRENT_SOURCE_DIR}/syntax 0034 ${CMAKE_CURRENT_SOURCE_DIR}/undo 0035 ${CMAKE_CURRENT_SOURCE_DIR}/utils 0036 ${CMAKE_CURRENT_SOURCE_DIR}/inputmode 0037 ${CMAKE_CURRENT_SOURCE_DIR}/view 0038 ${CMAKE_CURRENT_SOURCE_DIR}/swapfile 0039 ${CMAKE_CURRENT_SOURCE_DIR}/variableeditor) 0040 0041 # KTextEditor interface sources 0042 set(ktexteditor_LIB_SRCS 0043 # text buffer & buffer helpers 0044 buffer/katetextbuffer.cpp 0045 buffer/katetextblock.cpp 0046 buffer/katetextline.cpp 0047 buffer/katetextcursor.cpp 0048 buffer/katetextrange.cpp 0049 buffer/katetexthistory.cpp 0050 buffer/katetextfolding.cpp 0051 0052 # completion (widget, model, delegate, ...) 0053 completion/katecompletionwidget.cpp 0054 completion/katecompletionmodel.cpp 0055 completion/katecompletiontree.cpp 0056 completion/kateargumenthinttree.cpp 0057 completion/kateargumenthintmodel.cpp 0058 completion/katecompletiondelegate.cpp 0059 completion/expandingtree/expandingwidgetmodel.cpp 0060 completion/documentation_tip.cpp 0061 0062 # simple internal word completion 0063 completion/katewordcompletion.cpp 0064 0065 # internal syntax-file based keyword completion 0066 completion/katekeywordcompletion.cpp 0067 0068 # dialogs 0069 dialogs/kateconfigpage.cpp 0070 dialogs/katedialogs.cpp 0071 dialogs/kateconfigpage.cpp 0072 dialogs/clipboardhistorydialog.cpp 0073 0074 # document (THE document, buffer, lines/cursors/..., CORE STUFF) 0075 document/katedocument.cpp 0076 document/katebuffer.cpp 0077 0078 # undo 0079 undo/kateundo.cpp 0080 undo/kateundomanager.cpp 0081 0082 # scripting 0083 script/katescript.cpp 0084 script/kateindentscript.cpp 0085 script/katecommandlinescript.cpp 0086 script/katescriptmanager.cpp 0087 script/katescriptaction.cpp 0088 0089 # scripting wrappers 0090 script/katescripteditor.cpp 0091 script/katescriptdocument.cpp 0092 script/katescriptview.cpp 0093 script/katescripthelpers.cpp 0094 0095 # mode (modemanager and co) 0096 mode/katemodemanager.cpp 0097 mode/katemodeconfigpage.cpp 0098 mode/katemodemenu.cpp 0099 mode/katemodemenulist.cpp 0100 0101 # modeline variable editor 0102 variableeditor/variablelineedit.cpp 0103 variableeditor/variablelistview.cpp 0104 variableeditor/variableeditor.cpp 0105 variableeditor/variableitem.cpp 0106 0107 # printing classes 0108 printing/kateprinter.cpp 0109 printing/printpainter.cpp 0110 printing/printconfigwidgets.cpp 0111 0112 # rendering stuff (katerenderer and helpers) 0113 render/katerenderer.cpp 0114 render/katerenderrange.cpp 0115 render/katelayoutcache.cpp 0116 render/katetextlayout.cpp 0117 render/katelinelayout.cpp 0118 0119 # search stuff 0120 search/kateplaintextsearch.cpp 0121 search/kateregexpsearch.cpp 0122 search/katematch.cpp 0123 search/katesearchbar.cpp 0124 0125 # KSyntaxHighlighting integration 0126 syntax/katecategorydrawer.cpp 0127 syntax/katecolortreewidget.cpp 0128 syntax/katehighlight.cpp 0129 syntax/katehighlightingcmds.cpp 0130 syntax/katehighlightmenu.cpp 0131 syntax/katestyletreewidget.cpp 0132 syntax/katesyntaxmanager.cpp 0133 syntax/katethemeconfig.cpp 0134 0135 # view stuff (THE view and its helpers) 0136 view/kateview.cpp 0137 view/kateviewinternal.cpp 0138 view/kateviewhelpers.cpp 0139 view/kateannotationitemdelegate.cpp 0140 view/katemessagewidget.cpp 0141 view/katefadeeffect.cpp 0142 view/kateanimation.cpp 0143 view/katetextanimation.cpp 0144 view/katetextpreview.cpp 0145 view/katestatusbar.cpp 0146 view/wordcounter.cpp 0147 view/screenshotdialog.cpp 0148 0149 # spell checking 0150 spellcheck/prefixstore.h 0151 spellcheck/prefixstore.cpp 0152 spellcheck/ontheflycheck.h 0153 spellcheck/ontheflycheck.cpp 0154 spellcheck/spellcheck.h 0155 spellcheck/spellcheck.cpp 0156 spellcheck/spellcheckdialog.h 0157 spellcheck/spellcheckdialog.cpp 0158 spellcheck/spellcheckbar.cpp 0159 spellcheck/spellingmenu.h 0160 spellcheck/spellingmenu.cpp 0161 0162 # generic stuff, unsorted... 0163 utils/katecmds.cpp 0164 utils/kateconfig.cpp 0165 utils/katebookmarks.cpp 0166 utils/kateautoindent.cpp 0167 utils/kateindentdetecter.cpp 0168 utils/katetemplatehandler.cpp 0169 utils/kateglobal.cpp 0170 utils/katecmd.cpp 0171 utils/ktexteditor.cpp 0172 utils/document.cpp 0173 utils/range.cpp 0174 utils/documentcursor.cpp 0175 utils/attribute.cpp 0176 utils/codecompletionmodel.cpp 0177 utils/codecompletionmodelcontrollerinterface.cpp 0178 utils/movingapi.cpp 0179 utils/messageinterface.cpp 0180 utils/application.cpp 0181 utils/mainwindow.cpp 0182 utils/katecommandrangeexpressionparser.cpp 0183 utils/katesedcmd.cpp 0184 utils/variable.cpp 0185 utils/katevariableexpansionmanager.cpp 0186 utils/katevariableexpansionhelpers.cpp 0187 0188 # swapfile 0189 swapfile/kateswapdiffcreator.cpp 0190 swapfile/kateswapfile.cpp 0191 0192 # export as HTML 0193 export/exporter.cpp 0194 export/htmlexporter.cpp 0195 0196 # input modes 0197 inputmode/kateabstractinputmode.cpp 0198 inputmode/kateabstractinputmodefactory.cpp 0199 inputmode/katenormalinputmode.cpp 0200 inputmode/katenormalinputmodefactory.cpp 0201 ) 0202 0203 # optionally compile with EditorConfig support 0204 if(EditorConfig_FOUND) 0205 set(ktexteditor_LIB_SRCS ${ktexteditor_LIB_SRCS} document/editorconfig.cpp) 0206 endif() 0207 0208 if(HAVE_KAUTH) 0209 set(ktexteditor_LIB_SRCS ${ktexteditor_LIB_SRCS} buffer/katesecuretextbuffer.cpp) 0210 endif() 0211 0212 ecm_qt_declare_logging_category(ktexteditor_LIB_SRCS 0213 HEADER katepartdebug.h 0214 IDENTIFIER LOG_KTE 0215 CATEGORY_NAME kf.texteditor 0216 OLD_CATEGORY_NAMES org.kde.ktexteditor 0217 DEFAULT_SEVERITY Warning 0218 DESCRIPTION "ktexteditor lib" 0219 EXPORT KTEXTEDITOR 0220 ) 0221 0222 0223 ki18n_wrap_ui(ktexteditor_LIB_SRCS 0224 dialogs/textareaappearanceconfigwidget.ui 0225 dialogs/bordersappearanceconfigwidget.ui 0226 dialogs/completionconfigtab.ui 0227 dialogs/navigationconfigwidget.ui 0228 dialogs/editconfigwidget.ui 0229 dialogs/filetypeconfigwidget.ui 0230 dialogs/indentationconfigwidget.ui 0231 dialogs/opensaveconfigwidget.ui 0232 dialogs/opensaveconfigadvwidget.ui 0233 dialogs/statusbarconfigwidget.ui 0234 search/searchbarincremental.ui 0235 search/searchbarpower.ui 0236 spellcheck/spellcheckbar.ui 0237 dialogs/spellcheckconfigwidget.ui) 0238 0239 qt_add_resources( ktexteditor_qrc_SRCS data/ktexteditor.qrc "${CMAKE_CURRENT_BINARY_DIR}/script/data/script.qrc") 0240 set_source_files_properties(${ktexteditor_qrc_SRCS} PROPERTIES SKIP_UNITY_BUILD_INCLUSION ON) 0241 0242 # vi mode 0243 ki18n_wrap_ui(ktexteditor_LIB_SRCS vimode/config/configwidget.ui) 0244 set(ktexteditor_LIB_SRCS ${ktexteditor_LIB_SRCS} ${ktexteditor_qrc_SRCS} 0245 inputmode/kateviinputmode.cpp 0246 inputmode/kateviinputmodefactory.cpp 0247 0248 # vi input mode 0249 vimode/config/configtab.cpp 0250 0251 vimode/modes/insertvimode.cpp 0252 vimode/modes/modebase.cpp 0253 vimode/modes/normalvimode.cpp 0254 vimode/modes/replacevimode.cpp 0255 vimode/modes/visualvimode.cpp 0256 0257 vimode/appcommands.cpp 0258 vimode/cmds.cpp 0259 vimode/inputmodemanager.cpp 0260 vimode/command.cpp 0261 vimode/motion.cpp 0262 vimode/range.cpp 0263 vimode/keyparser.cpp 0264 vimode/globalstate.cpp 0265 vimode/emulatedcommandbar/emulatedcommandbar.cpp 0266 vimode/emulatedcommandbar/matchhighlighter.cpp 0267 vimode/emulatedcommandbar/completer.cpp 0268 vimode/emulatedcommandbar/activemode.cpp 0269 vimode/emulatedcommandbar/interactivesedreplacemode.cpp 0270 vimode/emulatedcommandbar/searchmode.cpp 0271 vimode/emulatedcommandbar/commandmode.cpp 0272 vimode/commandrangeexpressionparser.cpp 0273 vimode/keyevent.cpp 0274 vimode/keymapper.cpp 0275 vimode/marks.cpp 0276 vimode/jumps.cpp 0277 vimode/history.cpp 0278 vimode/macros.cpp 0279 vimode/mappings.cpp 0280 vimode/registers.cpp 0281 vimode/searcher.cpp 0282 vimode/completion.cpp 0283 vimode/completionrecorder.cpp 0284 vimode/completionreplayer.cpp 0285 vimode/macrorecorder.cpp 0286 vimode/lastchangerecorder.cpp 0287 ) 0288 0289 add_library(KF6TextEditor ${ktexteditor_LIB_SRCS} ${KTEXTEDITOR_PUBLIC_HEADERS}) 0290 ecm_generate_export_header(KF6TextEditor 0291 BASE_NAME KTextEditor 0292 GROUP_BASE_NAME KF 0293 VERSION ${KF_VERSION} 0294 USE_VERSION_HEADER 0295 DEPRECATED_BASE_VERSION 0 0296 DEPRECATION_VERSIONS 0297 EXCLUDE_DEPRECATED_BEFORE_AND_AT ${EXCLUDE_DEPRECATED_BEFORE_AND_AT} 0298 ) 0299 add_library(KF6::TextEditor ALIAS KF6TextEditor) 0300 0301 target_include_directories(KF6TextEditor INTERFACE "$<INSTALL_INTERFACE:${KDE_INSTALL_INCLUDEDIR_KF}/KTextEditor>") 0302 0303 # API is more or less KParts & KSyntaxHighlighting, other stuff is used only internally 0304 target_link_libraries(KF6TextEditor 0305 PUBLIC 0306 KF6::Parts 0307 KF6::Completion 0308 KF6::SyntaxHighlighting 0309 PRIVATE 0310 Qt6::Qml 0311 Qt6::PrintSupport 0312 Qt6::TextToSpeech 0313 KF6::I18n 0314 KF6::Archive 0315 KF6::GuiAddons 0316 KF6::ItemViews 0317 KF6::SonnetCore 0318 KF6::SonnetUi 0319 KF6::Codecs 0320 KF6::KIOWidgets 0321 KF6::TextWidgets 0322 ${KTEXTEDITOR_OPTIONAL_LIBS} 0323 ) 0324 0325 if(HAVE_KAUTH) 0326 target_link_libraries(KF6TextEditor PRIVATE KF6::AuthCore) 0327 endif() 0328 0329 set_target_properties(KF6TextEditor 0330 PROPERTIES 0331 VERSION ${KTEXTEDITOR_VERSION} 0332 SOVERSION ${KTEXTEDITOR_SOVERSION} 0333 EXPORT_NAME "TextEditor" 0334 ) 0335 0336 # precompiled headers support 0337 if(ENABLE_PCH) 0338 target_precompile_headers(KF6TextEditor 0339 PRIVATE 0340 <QList> 0341 <QPointer> 0342 <QSharedData> 0343 <QString> 0344 <QStringList> 0345 <QJsonDocument> 0346 <QTextFormat> 0347 <QWidget> 0348 <QObject> 0349 <QDebug> 0350 <algorithm> 0351 <functional> 0352 <type_traits> 0353 <utility> 0354 <vector> 0355 ) 0356 endif() 0357 0358 install(TARGETS KF6TextEditor EXPORT KF6TextEditorTargets ${KF_INSTALL_TARGETS_DEFAULT_ARGS}) 0359 0360 install(FILES 0361 ${CMAKE_CURRENT_BINARY_DIR}/ktexteditor_export.h 0362 DESTINATION ${KDE_INSTALL_INCLUDEDIR_KF}/KTextEditor 0363 COMPONENT Devel 0364 ) 0365 0366 if(BUILD_QCH) 0367 ecm_add_qch( 0368 KF6TextEditor_QCH 0369 NAME KTextEditor 0370 BASE_NAME KF6TextEditor 0371 VERSION ${KF_VERSION} 0372 ORG_DOMAIN org.kde 0373 SOURCES # using only public headers, to cover only public API 0374 ${KTEXTEDITOR_PUBLIC_HEADERS} 0375 "${CMAKE_SOURCE_DIR}/docs/apidocs-groups.dox" 0376 "${CMAKE_SOURCE_DIR}/docs/coding-guidelines.dox" 0377 "${CMAKE_SOURCE_DIR}/docs/design.dox" 0378 "${CMAKE_SOURCE_DIR}/docs/porting.dox" 0379 MD_MAINPAGE "${CMAKE_SOURCE_DIR}/README.md" 0380 IMAGE_DIRS "${CMAKE_SOURCE_DIR}/docs/pics" 0381 LINK_QCHS 0382 KF6Parts_QCH 0383 BLANK_MACROS 0384 KTEXTEDITOR_EXPORT 0385 KTEXTEDITOR_DEPRECATED 0386 KTEXTEDITOR_DEPRECATED_EXPORT 0387 "KTEXTEDITOR_DEPRECATED_VERSION(x, y, t)" 0388 TAGFILE_INSTALL_DESTINATION ${KDE_INSTALL_QTQCHDIR} 0389 QCH_INSTALL_DESTINATION ${KDE_INSTALL_QTQCHDIR} 0390 COMPONENT Devel 0391 ) 0392 endif() 0393 0394 if(HAVE_KAUTH) 0395 add_executable(kauth_ktexteditor_helper buffer/katesecuretextbuffer.cpp) 0396 target_link_libraries(kauth_ktexteditor_helper KF6::AuthCore) 0397 install(TARGETS kauth_ktexteditor_helper DESTINATION ${KAUTH_HELPER_INSTALL_DIR} ) 0398 kauth_install_helper_files(kauth_ktexteditor_helper org.kde.ktexteditor6.katetextbuffer root) 0399 kauth_install_actions(org.kde.ktexteditor6.katetextbuffer buffer/org.kde.ktexteditor6.katetextbuffer.actions) 0400 endif() 0401 0402 # add part 0403 add_subdirectory(part) 0404 0405 ecm_qt_install_logging_categories( 0406 EXPORT KTEXTEDITOR 0407 FILE ktexteditor.categories 0408 DESTINATION ${KDE_INSTALL_LOGGINGCATEGORIESDIR} 0409 )