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 set(KNEWSTUFFWIDGETS_INSTALL_INCLUDEDIR "${KDE_INSTALL_INCLUDEDIR_KF}/KNewStuffWidgets")
0005
0006 add_library(KF6NewStuffWidgets)
0007 add_library(KF6::NewStuffWidgets ALIAS KF6NewStuffWidgets)
0008
0009 set_target_properties(KF6NewStuffWidgets PROPERTIES
0010 VERSION ${KNEWSTUFF_VERSION}
0011 SOVERSION ${KNEWSTUFF_SOVERSION}
0012 EXPORT_NAME NewStuffWidgets
0013 )
0014
0015 ecm_qt_declare_logging_category(KF6NewStuffWidgets
0016 HEADER knewstuffwidgets_debug.h
0017 IDENTIFIER KNEWSTUFFWIDGETS
0018 CATEGORY_NAME kf.newstuff.widgets
0019 DESCRIPTION "knewstuff (Widgets Lib)"
0020 EXPORT KNEWSTUFF
0021 )
0022
0023
0024 ecm_generate_export_header(KF6NewStuffWidgets
0025 EXPORT_FILE_NAME knewstuffwidgets_export.h
0026 BASE_NAME KNewStuffWidgets
0027 GROUP_BASE_NAME KF
0028 VERSION ${KF_VERSION}
0029 USE_VERSION_HEADER
0030 VERSION_BASE_NAME KNewStuff
0031 DEPRECATED_BASE_VERSION 0
0032 DEPRECATION_VERSIONS
0033 EXCLUDE_DEPRECATED_BEFORE_AND_AT ${EXCLUDE_DEPRECATED_BEFORE_AND_AT}
0034 )
0035
0036 target_sources(KF6NewStuffWidgets PRIVATE
0037 action.cpp button.cpp dialog.cpp resources.qrc
0038 )
0039
0040 target_link_libraries(KF6NewStuffWidgets
0041 PUBLIC
0042 KF6::NewStuffCore
0043 Qt6::Widgets
0044 PRIVATE
0045 KF6::I18n
0046 KF6::ConfigCore
0047 KF6::WidgetsAddons
0048 # QtQuickDialogWrapper
0049 Qt6::Qml
0050 Qt6::Quick
0051 Qt6::QuickWidgets
0052 )
0053
0054 target_include_directories(KF6NewStuffWidgets
0055 PUBLIC "$<BUILD_INTERFACE:${KNewStuff_BINARY_DIR};${CMAKE_CURRENT_BINARY_DIR}>"
0056 INTERFACE
0057 "$<INSTALL_INTERFACE:${KNEWSTUFFWIDGETS_INSTALL_INCLUDEDIR}>"
0058 "$<INSTALL_INTERFACE:${KDE_INSTALL_INCLUDEDIR_KF}/KNewStuff>" # module version header
0059 )
0060
0061 ecm_generate_headers(KNewStuffWidgets_CamelCase_HEADERS
0062 HEADER_NAMES
0063 Action
0064 Button
0065 Dialog
0066
0067 REQUIRED_HEADERS KNewStuffWidgets_HEADERS
0068 OUTPUT_DIR ${CMAKE_CURRENT_BINARY_DIR}/KNSWidgets
0069 )
0070
0071 install(
0072 FILES
0073 ${KNewStuffWidgets_CamelCase_HEADERS}
0074 ${KNewStuffWidgets_HEADERS}
0075 ${CMAKE_CURRENT_BINARY_DIR}/knewstuffwidgets_export.h
0076 DESTINATION ${KNEWSTUFFWIDGETS_INSTALL_INCLUDEDIR}/KNSWidgets
0077 COMPONENT Devel
0078 )
0079
0080 install(TARGETS KF6NewStuffWidgets EXPORT KF6NewStuffTargets ${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 (KF6)"
0088 )
0089
0090 ecm_add_qtdesignerplugin(knewstuffwidgets
0091 NAME KNewStuffWidgets
0092 OUTPUT_NAME knewstuff6widgets
0093 WIDGETS
0094 KNSWidgets::Button
0095 LINK_LIBRARIES
0096 KF6::NewStuffWidgets
0097 INSTALL_DESTINATION "${KDE_INSTALL_QTPLUGINDIR}/designer"
0098 COMPONENT Devel
0099 )
0100 endif()
0101
0102 if(BUILD_QCH)
0103 ecm_add_qch(
0104 KF6NewStuffWidgets_QCH
0105 NAME KNewStuffWidgets
0106 BASE_NAME KF6NewStuffWidgets
0107 VERSION ${KF_VERSION}
0108 ORG_DOMAIN org.kde
0109 SOURCES ${KNewStuffWidgets_HEADERS}
0110 LINK_QCHS
0111 KF6NewStuffCore_QCH
0112 KF6NewStuff_QCH
0113 INCLUDE_DIRS
0114 ${CMAKE_CURRENT_BINARY_DIR}
0115 ${KNewStuff_BINARY_DIR}
0116 BLANK_MACROS
0117 KNEWSTUFFWIDGETS_EXPORT
0118 "KNEWSTUFFWIDGETS_DEPRECATED_VERSION(x, y, t)"
0119 TAGFILE_INSTALL_DESTINATION ${KDE_INSTALL_QTQCHDIR}
0120 QCH_INSTALL_DESTINATION ${KDE_INSTALL_QTQCHDIR}
0121 COMPONENT Devel
0122 )
0123 endif()
0124