Warning, /network/kio-extras/smb/CMakeLists.txt is written in an unsupported language. File is not indexed.
0001 remove_definitions( 0002 -DQT_NO_CAST_FROM_ASCII 0003 -DQT_NO_CAST_FROM_BYTEARRAY 0004 ) 0005 0006 find_package(KDSoapWSDiscoveryClient REQUIRED) 0007 0008 find_package(Threads REQUIRED) 0009 0010 add_definitions(-DTRANSLATION_DOMAIN=\"kio6_smb\") 0011 0012 include(CheckIncludeFile) 0013 include(CheckSymbolExists) 0014 set(CMAKE_AUTOMAKE ON) 0015 0016 cmake_push_check_state() 0017 list(APPEND CMAKE_REQUIRED_INCLUDES ${SAMBA_INCLUDE_DIR}) 0018 list(APPEND CMAKE_REQUIRED_LIBRARIES ${SAMBA_LIBRARIES}) 0019 check_symbol_exists(smbc_readdirplus2 "libsmbclient.h" HAVE_READDIRPLUS2) 0020 cmake_pop_check_state() 0021 check_include_file(utime.h HAVE_UTIME_H) 0022 0023 configure_file(config-smb.h.cmake ${CMAKE_CURRENT_BINARY_DIR}/config-smb.h) 0024 0025 # Intermediate static lib target for reuse in testing. 0026 add_library(kio_smb_static STATIC) 0027 0028 target_sources(kio_smb_static PRIVATE 0029 kio_smb.cpp 0030 kio_smb_auth.cpp 0031 kio_smb_browse.cpp 0032 kio_smb_config.cpp 0033 kio_smb_dir.cpp 0034 kio_smb_file.cpp 0035 smburl.cpp 0036 kio_smb_mount.cpp 0037 wsdiscoverer.cpp 0038 dnssddiscoverer.cpp 0039 discovery.cpp 0040 transfer.cpp 0041 smbcdiscoverer.cpp 0042 smbcontext.cpp 0043 smbauthenticator.cpp 0044 ) 0045 0046 ecm_qt_declare_logging_category(kio_smb_static 0047 HEADER smb-logsettings.h 0048 IDENTIFIER KIO_SMB_LOG 0049 CATEGORY_NAME kf.kio.workers.smb 0050 OLD_CATEGORY_NAMES log_kio_smb kf.kio.slaves.smb 0051 DESCRIPTION "KIO smb" 0052 EXPORT KIO_EXTRAS 0053 ) 0054 0055 set_property(TARGET kio_smb_static PROPERTY POSITION_INDEPENDENT_CODE ON) 0056 0057 include_directories(${SAMBA_INCLUDE_DIR}) 0058 0059 target_include_directories(kio_smb_static 0060 PUBLIC 0061 "$<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR};${CMAKE_CURRENT_BINARY_DIR};${CMAKE_CURRENT_SOURCE_DIR}/..;${CMAKE_CURRENT_BINARY_DIR}/..>" 0062 ) 0063 target_link_libraries(kio_smb_static 0064 KF6::KIOCore 0065 KF6::I18n 0066 KF6::ConfigCore 0067 ${SAMBA_LIBRARIES} 0068 Qt::Network 0069 KF6::DNSSD 0070 KDSoap::WSDiscoveryClient 0071 Threads::Threads # std::async 0072 ) 0073 if (QT_MAJOR_VERSION EQUAL "6") 0074 target_link_libraries(kio_smb_static Qt6::Core5Compat) 0075 endif() 0076 0077 # Final plugin target. 0078 add_library(kio_smb MODULE main.cpp) 0079 target_link_libraries(kio_smb 0080 kio_smb_static 0081 ) 0082 0083 set_target_properties(kio_smb PROPERTIES OUTPUT_NAME "smb") 0084 set_target_properties(kio_smb PROPERTIES LIBRARY_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}/bin/kf6/kio") 0085 0086 install(TARGETS kio_smb DESTINATION ${KDE_INSTALL_PLUGINDIR}/kf6/kio) 0087 install(FILES smb-network.desktop DESTINATION ${KDE_INSTALL_DATADIR}/konqueror/dirtree/remote) 0088 install(FILES smb-network.desktop DESTINATION ${KDE_INSTALL_DATADIR}/remoteview) 0089 0090 option(WITH_SHAREDMIMEINFO "Build with shared shared-mime-info and update mimetype database on install" ON) 0091 if(WITH_SHAREDMIMEINFO) 0092 install(FILES org.kde.kio.smb.xml DESTINATION ${KDE_INSTALL_MIMEDIR}) 0093 find_package(SharedMimeInfo 1.3) 0094 set_package_properties(SharedMimeInfo PROPERTIES 0095 TYPE REQUIRED 0096 PURPOSE "Used to update the mimetype database") 0097 update_xdg_mimetypes(${KDE_INSTALL_MIMEDIR}) 0098 endif() 0099 0100 if (BUILD_TESTING) 0101 add_subdirectory(autotests) 0102 endif() 0103 add_subdirectory(kded)