Warning, /frameworks/kpty/src/CMakeLists.txt is written in an unsupported language. File is not indexed.
0001 add_library(KF6Pty)
0002 add_library(KF6::Pty ALIAS KF6Pty)
0003
0004 set_target_properties(KF6Pty PROPERTIES
0005 VERSION ${KPTY_VERSION}
0006 SOVERSION ${KPTY_SOVERSION}
0007 EXPORT_NAME Pty
0008 )
0009
0010 target_sources(KF6Pty PRIVATE
0011 kpty.cpp
0012 kptydevice.cpp
0013 kptydevice.h
0014 kpty.h
0015 kpty_p.h
0016 kptyprocess.cpp
0017 kptyprocess.h
0018 )
0019
0020 ecm_generate_export_header(KF6Pty
0021 BASE_NAME KPty
0022 GROUP_BASE_NAME KF
0023 VERSION ${KPTY_VERSION}
0024 USE_VERSION_HEADER
0025 DEPRECATED_BASE_VERSION 0
0026 )
0027
0028 ecm_qt_declare_logging_category(KF6Pty
0029 HEADER kpty_debug.h
0030 IDENTIFIER KPTY_LOG
0031 CATEGORY_NAME kf.pty
0032 DESCRIPTION "KPty"
0033 EXPORT KPTY
0034 )
0035
0036 include(ConfigureChecks.cmake)
0037 configure_file(config-pty.h.cmake ${CMAKE_CURRENT_BINARY_DIR}/config-pty.h )
0038
0039 target_include_directories(KF6Pty INTERFACE "$<INSTALL_INTERFACE:${KDE_INSTALL_INCLUDEDIR_KF}/KPty>")
0040
0041 target_link_libraries(KF6Pty PUBLIC Qt6::Core
0042 KF6::CoreAddons # KProcess
0043 PRIVATE
0044 ${UTIL_LIBRARY}
0045 KF6::I18n)
0046
0047 target_include_directories(KF6Pty PRIVATE ${CMAKE_CURRENT_BINARY_DIR}/..)
0048 if(UTEMPTER_FOUND)
0049 target_compile_definitions(KF6Pty PRIVATE ${UTEMPTER_COMPILE_FLAGS})
0050 endif()
0051
0052 ecm_generate_headers(KPty_HEADERS
0053 HEADER_NAMES
0054 KPty
0055 KPtyDevice
0056 KPtyProcess
0057
0058 REQUIRED_HEADERS KPty_HEADERS
0059 )
0060
0061 install(TARGETS KF6Pty EXPORT KF6PtyTargets ${KF_INSTALL_TARGETS_DEFAULT_ARGS})
0062
0063 install(FILES
0064 ${CMAKE_CURRENT_BINARY_DIR}/kpty_export.h
0065 ${KPty_HEADERS}
0066 DESTINATION ${KDE_INSTALL_INCLUDEDIR_KF}/KPty COMPONENT Devel
0067 )
0068
0069 if(BUILD_QCH)
0070 ecm_add_qch(
0071 KF6Pty_QCH
0072 NAME KPty
0073 BASE_NAME KF6Pty
0074 VERSION ${KF_VERSION}
0075 ORG_DOMAIN org.kde
0076 SOURCES # using only public headers, to cover only public API
0077 ${KPty_HEADERS}
0078 MD_MAINPAGE "${CMAKE_SOURCE_DIR}/README.md"
0079 LINK_QCHS
0080 Qt6Core_QCH
0081 KF6CoreAddons_QCH
0082 INCLUDE_DIRS
0083 ${CMAKE_CURRENT_BINARY_DIR}
0084 BLANK_MACROS
0085 KPTY_EXPORT
0086 KPTY_DEPRECATED
0087 KPTY_DEPRECATED_EXPORT
0088 TAGFILE_INSTALL_DESTINATION ${KDE_INSTALL_QTQCHDIR}
0089 QCH_INSTALL_DESTINATION ${KDE_INSTALL_QTQCHDIR}
0090 COMPONENT Devel
0091 )
0092 endif()
0093
0094 ########### next target ###############
0095
0096 if (NOT HAVE_OPENPTY)
0097 add_executable(kgrantpty kgrantpty.c)
0098 ecm_mark_nongui_executable(kgrantpty)
0099 install(TARGETS kgrantpty DESTINATION ${KDE_INSTALL_LIBEXECDIR_KF})
0100 endif ()
0101
0102 ecm_qt_install_logging_categories(
0103 EXPORT KPTY
0104 FILE kpty.categories
0105 DESTINATION "${KDE_INSTALL_LOGGINGCATEGORIESDIR}"
0106 )