Warning, /frameworks/kio/src/filewidgets/CMakeLists.txt is written in an unsupported language. File is not indexed.

0001 find_package(KF5Bookmarks ${KF_DEP_VERSION} REQUIRED)
0002 find_package(KF5XmlGui ${KF_DEP_VERSION} REQUIRED)
0003 
0004 configure_file(config-kiofilewidgets.h.cmake ${CMAKE_CURRENT_BINARY_DIR}/config-kiofilewidgets.h)
0005 
0006 add_library(KF5KIOFileWidgets)
0007 add_library(KF5::KIOFileWidgets ALIAS KF5KIOFileWidgets)
0008 
0009 set_target_properties(KF5KIOFileWidgets PROPERTIES
0010     VERSION     ${KIO_VERSION}
0011     SOVERSION   ${KIO_SOVERSION}
0012     EXPORT_NAME KIOFileWidgets
0013 )
0014 
0015 target_sources(KF5KIOFileWidgets PRIVATE
0016   kstatusbarofflineindicator.cpp
0017   kfilemetapreview.cpp
0018   kimagefilepreview.cpp
0019   kpreviewwidgetbase.cpp
0020   krecentdirs.cpp
0021   defaultviewadapter.cpp
0022 
0023   kdiroperator.cpp
0024   kdiroperatordetailview.cpp
0025   kdiroperatoriconview.cpp
0026   kdirsortfilterproxymodel.cpp #used in combination with kdirmodel.cpp
0027   kencodingfiledialog.cpp
0028   kfilebookmarkhandler.cpp
0029   kfilecopytomenu.cpp
0030   kfilecustomdialog.cpp
0031   kfilefiltercombo.cpp
0032   kfilewidget.cpp
0033   kfilewidgetdocktitlebar.cpp
0034   kfileplacesitem.cpp
0035   kfileplacesmodel.cpp
0036   kfileplacesview.cpp
0037   kfileplaceeditdialog.cpp
0038   kfilepreviewgenerator.cpp
0039   knameandurlinputdialog.cpp
0040   knewfilemenu.cpp
0041   kurlnavigatordropdownbutton.cpp
0042   kurlnavigatorbuttonbase.cpp
0043   kurlnavigatorbutton.cpp
0044   kurlnavigatorplacesselector.cpp
0045   kurlnavigatorprotocolcombo.cpp
0046   kurlnavigatortogglebutton.cpp
0047   kurlnavigator.cpp
0048   kurlnavigatormenu.cpp
0049   kurlnavigatorpathselectoreventfilter.cpp
0050 
0051   ../new_file_templates/templates.qrc
0052 )
0053 
0054 
0055 ecm_qt_export_logging_category(
0056     IDENTIFIER KFILEWIDGETS_LOG
0057     CATEGORY_NAME kf.kio.filewidgets
0058     OLD_CATEGORY_NAMES kf5.kio.filewidgets
0059     DESCRIPTION "KFileWidgets (KIO)"
0060     EXPORT KIO
0061 )
0062 
0063 ecm_qt_export_logging_category(
0064     IDENTIFIER KIO_KFILEWIDGETS_FW
0065     CATEGORY_NAME kf.kio.filewidgets.kfilewidget
0066     OLD_CATEGORY_NAMES kf5.kio.filewidgets.kfilewidget
0067     DEFAULT_SEVERITY Info
0068     DESCRIPTION "KFileWidgets (KIO)"
0069     EXPORT KIO
0070 )
0071 
0072 ecm_qt_declare_logging_category(KF5KIOFileWidgets
0073     HEADER kfilefiltercombo_debug.h
0074     IDENTIFIER KIO_KFILEWIDGETS_KFILEFILTERCOMBO
0075     CATEGORY_NAME kf.kio.filewidgets.kfilefiltercombo
0076     OLD_CATEGORY_NAMES kf5.kio.filewidgets.kfilefiltercombo
0077     DEFAULT_SEVERITY Warning
0078     DESCRIPTION "KFileFilterCombo (KIO)"
0079     EXPORT KIO
0080 )
0081 
0082 ecm_generate_export_header(KF5KIOFileWidgets
0083     BASE_NAME KIOFileWidgets
0084     GROUP_BASE_NAME KF
0085     VERSION ${KF_VERSION}
0086     DEPRECATED_BASE_VERSION 0
0087     DEPRECATION_VERSIONS 4.3 4.5 5.0 5.33 5.66 5.70 5.76 5.78 5.86 5.97 5.100 5.103
0088     EXCLUDE_DEPRECATED_BEFORE_AND_AT ${EXCLUDE_DEPRECATED_BEFORE_AND_AT}
0089 )
0090 # TODO: add support for EXCLUDE_DEPRECATED_BEFORE_AND_AT to all KIO libs
0091 # needs fixing of undeprecated API being still implemented using own deprecated API
0092 
0093 target_include_directories(KF5KIOFileWidgets INTERFACE "$<INSTALL_INTERFACE:${KDE_INSTALL_INCLUDEDIR_KF}/KIOFileWidgets>")
0094 
0095 target_link_libraries(KF5KIOFileWidgets
0096   PUBLIC
0097     KF5::KIOWidgets
0098     KF5::Bookmarks    # in KFilePlacesModel's API
0099     KF5::ItemViews     # kdirsortfilterproxymodel
0100     KF5::XmlGui        # for KActionCollection, used by KFileWidget/KDirOperator
0101     KF5::Solid         # KFilePlacesModel/KFilePlacesView
0102   PRIVATE
0103     KF5::GuiAddons    # KIconUtils
0104     KF5::IconThemes   # KIconLoader
0105     KF5::I18n
0106 )
0107 
0108 ecm_generate_headers(KIOFileWidgets_HEADERS
0109   HEADER_NAMES
0110   KAbstractViewAdapter
0111   KImageFilePreview
0112   KPreviewWidgetBase
0113   KRecentDirs
0114   KStatusBarOfflineIndicator
0115   KDirOperator
0116   KDirSortFilterProxyModel
0117   KFileCopyToMenu
0118   KFileCustomDialog
0119   KFileFilterCombo
0120   KFilePlaceEditDialog
0121   KFilePlacesModel
0122   KFilePlacesView
0123   KFilePreviewGenerator
0124   KFileWidget
0125   KUrlNavigator
0126   KNewFileMenu
0127   KNameAndUrlInputDialog
0128   KEncodingFileDialog
0129 
0130   REQUIRED_HEADERS KIOFileWidgets_HEADERS
0131 )
0132 
0133 install(TARGETS KF5KIOFileWidgets EXPORT KF5KIOTargets ${KF_INSTALL_TARGETS_DEFAULT_ARGS})
0134 
0135 install(FILES
0136   ${KIOFileWidgets_HEADERS}
0137   ${CMAKE_CURRENT_BINARY_DIR}/kiofilewidgets_export.h
0138   DESTINATION ${KDE_INSTALL_INCLUDEDIR_KF}/KIOFileWidgets COMPONENT Devel)
0139 
0140 # make available to ecm_add_qch in parent folder
0141 set(KIOFileWidgets_QCH_SOURCES ${KIOFileWidgets_HEADERS} PARENT_SCOPE)
0142 
0143 include(ECMGeneratePriFile)
0144 ecm_generate_pri_file(BASE_NAME KIOFileWidgets LIB_NAME KF5KIOFileWidgets DEPS "KIOWidgets KBookmarks KXmlGui Solid" FILENAME_VAR PRI_FILENAME INCLUDE_INSTALL_DIR ${KDE_INSTALL_INCLUDEDIR_KF}/KIOFileWidgets)
0145 install(FILES ${PRI_FILENAME} DESTINATION ${ECM_MKSPECS_INSTALL_DIR})