Warning, /network/kdenetwork-filesharing/CMakeLists.txt is written in an unsupported language. File is not indexed.
0001 cmake_minimum_required(VERSION 3.16 FATAL_ERROR)
0002 project(filesharing)
0003
0004 set(QT_MIN_VERSION "6.6.0")
0005 set(KF_MIN_VERSION "5.240.0")
0006
0007 set(CMAKE_CXX_STANDARD 20)
0008 set(CMAKE_CXX_STANDARD_REQUIRED ON)
0009
0010 find_package(ECM ${KF_MIN_VERSION} CONFIG REQUIRED)
0011 set(CMAKE_MODULE_PATH ${CMAKE_CURRENT_SOURCE_DIR}/cmake ${ECM_MODULE_PATH})
0012
0013 include(FeatureSummary)
0014 include(KDEInstallDirs)
0015 include(KDECMakeSettings)
0016 include(KDECompilerSettings NO_POLICY_SCOPE)
0017 include(ECMDeprecationSettings)
0018
0019 find_package(Qt6 ${QT_MIN_VERSION} CONFIG REQUIRED COMPONENTS
0020 Core
0021 Widgets
0022 Qml
0023 QuickWidgets
0024 )
0025
0026 find_package(KF6 ${KF_MIN_VERSION} REQUIRED COMPONENTS
0027 Auth
0028 Completion
0029 CoreAddons
0030 I18n
0031 KIO
0032 WidgetsAddons
0033 )
0034
0035 find_package(PackageKitQt6)
0036 set_package_properties(PackageKitQt6
0037 PROPERTIES DESCRIPTION "Software Manager integration"
0038 TYPE OPTIONAL
0039 PURPOSE "Needed to automatically install the samba package."
0040 )
0041
0042 find_package(QCoro6 REQUIRED COMPONENTS Core)
0043
0044 find_package(net)
0045 set_package_properties(net PROPERTIES
0046 TYPE RUNTIME
0047 DESCRIPTION "Samba CLI tool"
0048 PURPOSE "Runtime dependency to do anything"
0049 )
0050
0051 find_package(testparm)
0052 set_package_properties(testparm PROPERTIES
0053 TYPE RUNTIME
0054 DESCRIPTION "Samba CLI tool"
0055 PURPOSE "Runtime dependency to do anything"
0056 )
0057
0058 include(CheckIncludeFile)
0059 include(CheckIncludeFiles)
0060 include(CheckSymbolExists)
0061 include(CheckFunctionExists)
0062 include(CheckLibraryExists)
0063 include(CheckTypeSize)
0064
0065 if(WIN32)
0066 set(CMAKE_REQUIRED_LIBRARIES ${KDEWIN32_LIBRARIES})
0067 set(CMAKE_REQUIRED_INCLUDES ${KDEWIN32_INCLUDES})
0068 endif(WIN32)
0069
0070 option(SAMBA_INSTALL "Offer to install Samba for file sharing with PackageKit if it is not already installed, use -DSAMBA_INSTALL=off to disable, use -DSAMBA_PACKAGE_NAME= to set package name." ON)
0071 set(SAMBA_PACKAGE_NAME \"samba\" CACHE STRING "Single package or comma-separated list of packages needed for a functional Samba stack on this distribution.")
0072
0073 if(SAMBA_INSTALL AND PackageKitQt6_FOUND)
0074 add_definitions(-DSAMBA_INSTALL)
0075 add_definitions(-DSAMBA_PACKAGE_NAME=${SAMBA_PACKAGE_NAME})
0076 else()
0077 set(SAMBA_INSTALL false)
0078 endif()
0079 add_feature_info("Samba Installation" SAMBA_INSTALL "Automatic installation of '${SAMBA_PACKAGE_NAME}' using PackageKit.")
0080
0081 # KI18N Translation Domain for this library
0082 add_definitions(-DTRANSLATION_DOMAIN=\"kfileshare\")
0083
0084 add_definitions(
0085 -DQT_NO_CAST_TO_ASCII
0086 -DQT_NO_CAST_FROM_ASCII
0087 -DQT_NO_URL_CAST_FROM_STRING
0088 -DQT_NO_CAST_FROM_BYTEARRAY
0089 -DQT_USE_QSTRINGBUILDER
0090 -DQT_NO_NARROWING_CONVERSIONS_IN_CONNECT
0091 -DQT_NO_FOREACH
0092 -DQT_NO_KEYWORDS
0093 )
0094
0095 ecm_set_disabled_deprecation_versions(QT 5.15.2
0096 KF 5.101.0
0097 )
0098
0099 qcoro_enable_coroutines()
0100
0101 add_subdirectory(samba)
0102
0103 install(FILES org.kde.kdenetwork-filesharing.metainfo.xml
0104 DESTINATION ${KDE_INSTALL_METAINFODIR})
0105
0106 ki18n_install(po)
0107
0108 feature_summary(WHAT ALL INCLUDE_QUIET_PACKAGES FATAL_ON_MISSING_REQUIRED_PACKAGES)