Warning, /libraries/ktextaddons/textutils/CMakeLists.txt is written in an unsupported language. File is not indexed.
0001 # SPDX-FileCopyrightText: 2023-2024 Laurent Montel <montel.org> 0002 # SPDX-License-Identifier: BSD-3-Clause 0003 # add_definitions(-DTRANSLATION_DOMAIN=\"libtextaddonswidgets\") 0004 0005 ########### CMake Config Files ########### 0006 set(CMAKECONFIG_INSTALL_DIR "${KDE_INSTALL_CMAKEPACKAGEDIR}/KF${KF_MAJOR_VERSION}TextUtils") 0007 0008 ecm_setup_version(PROJECT VARIABLE_PREFIX TEXTUTILS 0009 VERSION_HEADER "${CMAKE_CURRENT_BINARY_DIR}/textutils_version.h" 0010 PACKAGE_VERSION_FILE "${CMAKE_CURRENT_BINARY_DIR}/KF${KF_MAJOR_VERSION}TextUtilsConfigVersion.cmake" 0011 SOVERSION 1 0012 ) 0013 0014 add_library(KF${KF_MAJOR_VERSION}TextUtils) 0015 add_library(KF${KF_MAJOR_VERSION}::TextUtils ALIAS KF${KF_MAJOR_VERSION}TextUtils) 0016 0017 target_sources(KF${KF_MAJOR_VERSION}TextUtils PRIVATE 0018 converttext.cpp 0019 converttext.h 0020 ) 0021 0022 target_link_libraries(KF${KF_MAJOR_VERSION}TextUtils 0023 PRIVATE 0024 Qt::Core 0025 ) 0026 0027 ecm_qt_declare_logging_category(KF${KF_MAJOR_VERSION}TextUtils HEADER textutils_debug.h 0028 IDENTIFIER TEXTUTILS_LOG 0029 CATEGORY_NAME org.kde.kf.textutils 0030 OLD_CATEGORY_NAMES org.kde.kf${KF_MAJOR_VERSION}.textutils 0031 DESCRIPTION "KF${KF_MAJOR_VERSION} (textutils)" EXPORT KTEXTADDONS) 0032 0033 if (COMPILE_WITH_UNITY_CMAKE_SUPPORT) 0034 set_target_properties(KF${KF_MAJOR_VERSION}TextUtils PROPERTIES UNITY_BUILD ON) 0035 endif() 0036 generate_export_header(KF${KF_MAJOR_VERSION}TextUtils BASE_NAME TextUtils) 0037 0038 target_include_directories(KF${KF_MAJOR_VERSION}TextUtils INTERFACE "$<INSTALL_INTERFACE:${KDE_INSTALL_INCLUDEDIR_KF}/TextUtils;>") 0039 0040 0041 target_link_libraries(KF${KF_MAJOR_VERSION}TextUtils 0042 PUBLIC 0043 Qt::Gui 0044 ) 0045 0046 set_target_properties(KF${KF_MAJOR_VERSION}TextUtils PROPERTIES 0047 VERSION ${TEXTUTILS_VERSION} 0048 SOVERSION ${TEXTUTILS_SOVERSION} 0049 EXPORT_NAME TextUtils 0050 ) 0051 0052 install(TARGETS KF${KF_MAJOR_VERSION}TextUtils EXPORT KF${KF_MAJOR_VERSION}TextUtilsTargets ${KDE_INSTALL_TARGETS_DEFAULT_ARGS}) 0053 0054 ecm_generate_headers(TextUtils_CamelCase_HEADERS 0055 HEADER_NAMES 0056 ConvertText 0057 REQUIRED_HEADERS TextUtils_HEADERS 0058 PREFIX TextUtils 0059 ) 0060 0061 install(FILES 0062 ${TextUtils_HEADERS} 0063 ${CMAKE_CURRENT_BINARY_DIR}/textutils_export.h 0064 DESTINATION ${KDE_INSTALL_INCLUDEDIR_KF}/TextUtils/textutils 0065 COMPONENT Devel 0066 ) 0067 install(FILES 0068 ${TextUtils_CamelCase_HEADERS} 0069 DESTINATION ${KDE_INSTALL_INCLUDEDIR_KF}/TextUtils/TextUtils/ 0070 COMPONENT Devel 0071 ) 0072 if (BUILD_QCH) 0073 ecm_install_qch_export( 0074 TARGETS KF${KF_MAJOR_VERSION}TextUtils_QCH 0075 FILE KF${KF_MAJOR_VERSION}TextUtilsQchTargets.cmake 0076 DESTINATION "${CMAKECONFIG_INSTALL_DIR}" 0077 COMPONENT Devel 0078 ) 0079 set(PACKAGE_INCLUDE_QCHTARGETS "include(\"\${CMAKE_CURRENT_LIST_DIR}/KF${KF_MAJOR_VERSION}TextUtilsQchTargets.cmake\")") 0080 endif() 0081 0082 configure_package_config_file( 0083 "${CMAKE_CURRENT_SOURCE_DIR}/KFTextUtilsConfig.cmake.in" 0084 "${CMAKE_CURRENT_BINARY_DIR}/KF${KF_MAJOR_VERSION}TextUtilsConfig.cmake" 0085 INSTALL_DESTINATION ${CMAKECONFIG_INSTALL_DIR} 0086 ) 0087 0088 install(FILES 0089 "${CMAKE_CURRENT_BINARY_DIR}/KF${KF_MAJOR_VERSION}TextUtilsConfig.cmake" 0090 "${CMAKE_CURRENT_BINARY_DIR}/KF${KF_MAJOR_VERSION}TextUtilsConfigVersion.cmake" 0091 DESTINATION "${CMAKECONFIG_INSTALL_DIR}" 0092 COMPONENT Devel 0093 ) 0094 0095 install(EXPORT KF${KF_MAJOR_VERSION}TextUtilsTargets 0096 DESTINATION "${CMAKECONFIG_INSTALL_DIR}" 0097 FILE KF${KF_MAJOR_VERSION}TextUtilsTargets.cmake 0098 NAMESPACE KF${KF_MAJOR_VERSION}:: 0099 ) 0100 0101 install(FILES 0102 ${CMAKE_CURRENT_BINARY_DIR}/textutils_version.h 0103 DESTINATION ${KDE_INSTALL_INCLUDEDIR_KF}/TextUtils 0104 COMPONENT Devel 0105 ) 0106 0107 0108 if (BUILD_QCH) 0109 ecm_add_qch( 0110 KF${KF_MAJOR_VERSION}TextUtils_QCH 0111 NAME KF${KF_MAJOR_VERSION}TextUtils 0112 BASE_NAME KF${KF_MAJOR_VERSION}TextUtils 0113 VERSION ${TEXTUTILS_VERSION} 0114 ORG_DOMAIN org.kde 0115 SOURCES # using only public headers, to cover only public API 0116 ${TextUtils_HEADERS} 0117 LINK_QCHS 0118 Qt${QT_MAJOR_VERSION}Core_QCH 0119 INCLUDE_DIRS 0120 ${CMAKE_CURRENT_BINARY_DIR} 0121 BLANK_MACROS 0122 TEXTUTILS_EXPORT 0123 TAGFILE_INSTALL_DESTINATION ${KDE_INSTALL_QTQCHDIR} 0124 QCH_INSTALL_DESTINATION ${KDE_INSTALL_QTQCHDIR} 0125 COMPONENT Devel 0126 ) 0127 endif() 0128 0129 if (BUILD_TESTING) 0130 add_subdirectory(autotests) 0131 endif()