Warning, /frameworks/knewstuff/src/widgets/CMakeLists.txt is written in an unsupported language. File is not indexed.
0001 # SPDX-FileCopyrightText: Alexander Lohnau <alexander.lohnau@gmx.de> 0002 # SPDX-License-Identifier: BSD-2-Clause 0003 0004 add_library(KF5NewStuffWidgets) 0005 add_library(KF5::NewStuffWidgets ALIAS KF5NewStuffWidgets) 0006 0007 # Flag to hint this is compilation of the library itself 0008 # Needed because the overloaded signal Action::dialogFinished(QList<KNSCore::Entry>) was only added in a later version, 0009 # but SC requirement needs to keep usages of plain &Action::dialogFinished working. 0010 # So the flag is used to add all signals to the library itself, 0011 # while consumers will only see one variant depending on KNEWSTUFFWIDGETS_DISABLE_DEPRECATED_BEFORE_AND_AT settings 0012 target_compile_definitions(KF5NewStuffWidgets PRIVATE -DKNEWSTUFFWIDGETS_PRIVATE_BUILDING) 0013 0014 ecm_generate_export_header(KF5NewStuffWidgets 0015 EXPORT_FILE_NAME knewstuffwidgets_export.h 0016 BASE_NAME KNewStuffWidgets 0017 GROUP_BASE_NAME KF 0018 VERSION ${KF_VERSION} 0019 DEPRECATED_BASE_VERSION 0 0020 DEPRECATION_VERSIONS 5.91 0021 EXCLUDE_DEPRECATED_BEFORE_AND_AT ${EXCLUDE_DEPRECATED_BEFORE_AND_AT} 0022 ) 0023 0024 target_sources(KF5NewStuffWidgets PRIVATE 0025 action.cpp button.cpp 0026 ../ui/widgetquestionlistener.cpp) 0027 0028 target_link_libraries(KF5NewStuffWidgets PUBLIC KF5::NewStuff) 0029 target_link_libraries(KF5NewStuffWidgets 0030 PUBLIC 0031 KF5::NewStuffCore 0032 KF5::NewStuff 0033 PRIVATE 0034 KF5::I18n 0035 ) 0036 0037 target_include_directories(KF5NewStuffWidgets 0038 PUBLIC "$<BUILD_INTERFACE:${KNewStuff_BINARY_DIR};${CMAKE_CURRENT_BINARY_DIR}>" 0039 INTERFACE "$<INSTALL_INTERFACE:${KDE_INSTALL_INCLUDEDIR_KF}/KNewStuff3>") 0040 0041 set_target_properties(KF5NewStuffWidgets PROPERTIES 0042 VERSION ${KNEWSTUFF_VERSION} 0043 SOVERSION ${KNEWSTUFF_SOVERSION} 0044 EXPORT_NAME NewStuffWidgets 0045 ) 0046 0047 set(KNewStuffWidgets_HEADERS 0048 action.h 0049 button.h 0050 ) 0051 ecm_generate_headers(KNewStuffWidgets_CamelCase_HEADERS 0052 HEADER_NAMES 0053 Action 0054 Button 0055 0056 REQUIRED_HEADERS KNewStuffWidgets_HEADERS 0057 OUTPUT_DIR ${CMAKE_CURRENT_BINARY_DIR}/KNSWidgets 0058 ) 0059 0060 install( 0061 FILES 0062 ${KNewStuffWidgets_CamelCase_HEADERS} 0063 ${KNewStuffWidgets_HEADERS} 0064 ${CMAKE_CURRENT_BINARY_DIR}/knewstuffwidgets_export.h 0065 DESTINATION ${KDE_INSTALL_INCLUDEDIR_KF}/KNewStuff3/KNSWidgets 0066 COMPONENT Devel 0067 ) 0068 0069 # Kept for backwards compatibility, in KF6 all headers will be installed in KNewStuff3/KNSWidgets only 0070 if(QT_MAJOR_VERSION STREQUAL "5") 0071 install( 0072 FILES 0073 ${KNewStuffWidgets_HEADERS} 0074 ${CMAKE_CURRENT_BINARY_DIR}/knewstuffwidgets_export.h 0075 DESTINATION ${KDE_INSTALL_INCLUDEDIR_KF}/KNewStuff3/knswidgets 0076 COMPONENT Devel 0077 ) 0078 endif() 0079 0080 install(TARGETS KF5NewStuffWidgets EXPORT KF5NewStuffTargets ${KF_INSTALL_TARGETS_DEFAULT_ARGS}) 0081 0082 if (BUILD_DESIGNERPLUGIN) 0083 include(ECMAddQtDesignerPlugin) 0084 ecm_qtdesignerplugin_widget(KNSWidgets::Button 0085 INCLUDE_FILE "KNSWidgets/Button" 0086 TOOLTIP "KHotNewStuff push button that encapsulats most of the details involved in using KHotNewStuff in it." 0087 GROUP "Buttons (KF5)" 0088 ) 0089 0090 ecm_add_qtdesignerplugin(knewstuffwidgets 0091 NAME KNewStuffWidgets 0092 WIDGETS 0093 KNSWidgets::Button 0094 LINK_LIBRARIES 0095 KF5::NewStuffWidgets 0096 INSTALL_DESTINATION "${KDE_INSTALL_QTPLUGINDIR}/designer" 0097 COMPONENT Devel 0098 ) 0099 endif() 0100 0101 if(BUILD_QCH) 0102 ecm_add_qch( 0103 KF5NewStuffWidgets_QCH 0104 NAME KNewStuffWidgets 0105 BASE_NAME KF5NewStuffWidgets 0106 VERSION ${KF_VERSION} 0107 ORG_DOMAIN org.kde 0108 SOURCES ${KNewStuffWidgets_HEADERS} 0109 LINK_QCHS 0110 KF5NewStuffCore_QCH 0111 KF5NewStuff_QCH 0112 INCLUDE_DIRS 0113 ${CMAKE_CURRENT_BINARY_DIR} 0114 ${KNewStuff_BINARY_DIR} 0115 BLANK_MACROS 0116 KNEWSTUFFWIDGETS_EXPORT 0117 "KNEWSTUFFWIDGETS_DEPRECATED_VERSION(x, y, t)" 0118 TAGFILE_INSTALL_DESTINATION ${KDE_INSTALL_QTQCHDIR} 0119 QCH_INSTALL_DESTINATION ${KDE_INSTALL_QTQCHDIR} 0120 COMPONENT Devel 0121 ) 0122 endif() 0123