diff --git a/local/recipes/kde/kf6-kcmutils/source/CMakeLists.txt b/local/recipes/kde/kf6-kcmutils/source/CMakeLists.txt index 6bb59c55..712cd631 100644 --- a/local/recipes/kde/kf6-kcmutils/source/CMakeLists.txt +++ b/local/recipes/kde/kf6-kcmutils/source/CMakeLists.txt @@ -24,7 +24,7 @@ include(ECMQtDeclareLoggingCategory) include(ECMDeprecationSettings) include(ECMMarkNonGuiExecutable) include(KDEGitCommitHooks) -#######include(ECMQmlModule) +########include(ECMQmlModule) include(CMakeDependentOption) @@ -40,6 +40,7 @@ find_package(Qt6 ${REQUIRED_QT_VERSION} NO_MODULE REQUIRED Widgets) find_package(Qt6GuiPrivate ${REQUIRED_QT_VERSION} REQUIRED) find_package(Qt6GuiPrivate ${REQUIRED_QT_VERSION} REQUIRED) find_package(Qt6GuiPrivate ${REQUIRED_QT_VERSION} REQUIRED) +find_package(Qt6GuiPrivate ${REQUIRED_QT_VERSION} REQUIRED) # shall we use DBus? # enabled per default on Linux & BSD systems @@ -62,7 +63,7 @@ ecm_setup_version(PROJECT VARIABLE_PREFIX KCMUTILS PACKAGE_VERSION_FILE "${CMAKE_CURRENT_BINARY_DIR}/KF6KCMUtilsConfigVersion.cmake" SOVERSION 6) -######find_package(KF6KIO ${KF_DEP_VERSION} REQUIRED) +#######find_package(KF6KIO ${KF_DEP_VERSION} REQUIRED) find_package(KF6ItemViews ${KF_DEP_VERSION} REQUIRED) find_package(KF6ConfigWidgets ${KF_DEP_VERSION} REQUIRED) find_package(KF6CoreAddons ${KF_DEP_VERSION} REQUIRED) diff --git a/local/recipes/kde/kf6-kcmutils/source/src/CMakeLists.txt b/local/recipes/kde/kf6-kcmutils/source/src/CMakeLists.txt index 34cde411..4c99dd13 100644 --- a/local/recipes/kde/kf6-kcmutils/source/src/CMakeLists.txt +++ b/local/recipes/kde/kf6-kcmutils/source/src/CMakeLists.txt @@ -14,8 +14,8 @@ ecm_qt_declare_logging_category(kcmutils_logging_STATIC add_subdirectory(core) -######add_subdirectory(qml) -######add_subdirectory(quick) +#######add_subdirectory(qml) +#######add_subdirectory(quick) ########### kcmutils ############### set(kcmutils_LIB_SRCS @@ -118,4 +118,4 @@ ecm_qt_install_logging_categories( DESTINATION "${KDE_INSTALL_LOGGINGCATEGORIESDIR}" ) -######add_subdirectory(kcmshell) +#######add_subdirectory(kcmshell) diff --git a/local/recipes/kde/kf6-kcolorscheme/source/CMakeLists.txt b/local/recipes/kde/kf6-kcolorscheme/source/CMakeLists.txt index 864427c9..e1aee8e3 100644 --- a/local/recipes/kde/kf6-kcolorscheme/source/CMakeLists.txt +++ b/local/recipes/kde/kf6-kcolorscheme/source/CMakeLists.txt @@ -33,6 +33,7 @@ find_package(Qt6GuiPrivate ${REQUIRED_QT_VERSION} REQUIRED) find_package(Qt6GuiPrivate ${REQUIRED_QT_VERSION} REQUIRED) find_package(Qt6GuiPrivate ${REQUIRED_QT_VERSION} REQUIRED) find_package(Qt6GuiPrivate ${REQUIRED_QT_VERSION} REQUIRED) +find_package(Qt6GuiPrivate ${REQUIRED_QT_VERSION} REQUIRED) set(EXCLUDE_DEPRECATED_BEFORE_AND_AT 0 CACHE STRING "Control the range of deprecated API excluded from the build [default=0].") diff --git a/local/recipes/kde/kf6-kcompletion/source/CMakeLists.txt b/local/recipes/kde/kf6-kcompletion/source/CMakeLists.txt index 65fae1df..8242c8ed 100644 --- a/local/recipes/kde/kf6-kcompletion/source/CMakeLists.txt +++ b/local/recipes/kde/kf6-kcompletion/source/CMakeLists.txt @@ -41,6 +41,7 @@ find_package(Qt6 ${REQUIRED_QT_VERSION} NO_MODULE REQUIRED Widgets) find_package(Qt6GuiPrivate ${REQUIRED_QT_VERSION} REQUIRED) find_package(Qt6GuiPrivate ${REQUIRED_QT_VERSION} REQUIRED) find_package(Qt6GuiPrivate ${REQUIRED_QT_VERSION} REQUIRED) +find_package(Qt6GuiPrivate ${REQUIRED_QT_VERSION} REQUIRED) find_package(KF6Codecs ${KF_DEP_VERSION} REQUIRED) find_package(KF6Config ${KF_DEP_VERSION} REQUIRED) diff --git a/local/recipes/kde/kf6-kconfigwidgets/source/CMakeLists.txt b/local/recipes/kde/kf6-kconfigwidgets/source/CMakeLists.txt index 49f6c143..9563df95 100644 --- a/local/recipes/kde/kf6-kconfigwidgets/source/CMakeLists.txt +++ b/local/recipes/kde/kf6-kconfigwidgets/source/CMakeLists.txt @@ -28,6 +28,7 @@ set(REQUIRED_QT_VERSION 6.6.0) find_package(Qt6 ${REQUIRED_QT_VERSION} CONFIG REQUIRED Widgets) find_package(Qt6GuiPrivate ${REQUIRED_QT_VERSION} REQUIRED) find_package(Qt6GuiPrivate ${REQUIRED_QT_VERSION} REQUIRED) +find_package(Qt6GuiPrivate ${REQUIRED_QT_VERSION} REQUIRED) # shall we use DBus? # enabled per default on Linux & BSD systems diff --git a/local/recipes/kde/kf6-kcrash/source/CMakeLists.txt b/local/recipes/kde/kf6-kcrash/source/CMakeLists.txt index e482f53d..a9f016a6 100644 --- a/local/recipes/kde/kf6-kcrash/source/CMakeLists.txt +++ b/local/recipes/kde/kf6-kcrash/source/CMakeLists.txt @@ -33,7 +33,7 @@ if(WITH_X11) find_package(X11 REQUIRED) set(HAVE_X11 TRUE) endif() -######find_package(Qt6Test REQUIRED) +#######find_package(Qt6Test REQUIRED) include(ECMGenerateExportHeader) include(ECMSetupVersion) include(ECMGenerateHeaders) diff --git a/local/recipes/kde/kf6-kdbusaddons/recipe.toml b/local/recipes/kde/kf6-kdbusaddons/recipe.toml index 86ba7614..062570e1 100644 --- a/local/recipes/kde/kf6-kdbusaddons/recipe.toml +++ b/local/recipes/kde/kf6-kdbusaddons/recipe.toml @@ -44,6 +44,7 @@ rm -f CMakeCache.txt rm -rf CMakeFiles cmake "${COOKBOOK_SOURCE}" \ + -GNinja \ -DCMAKE_TOOLCHAIN_FILE="${COOKBOOK_ROOT}/local/recipes/qt/redox-toolchain.cmake" \ -DQT_HOST_PATH="${HOST_BUILD}" \ -DCMAKE_INSTALL_PREFIX=/usr \ @@ -54,6 +55,15 @@ cmake "${COOKBOOK_SOURCE}" \ -DCMAKE_DISABLE_FIND_PACKAGE_X11=ON \ -Wno-dev +mkdir -p "${COOKBOOK_BUILD}/src" +if [ -e "${HOST_BUILD}/bin/qdbuscpp2xml" ]; then + ln -sf "${HOST_BUILD}/bin/qdbuscpp2xml" "${COOKBOOK_BUILD}/src/Qt6::qdbuscpp2xml" +fi +if [ -e "${HOST_BUILD}/bin/qdbusxml2cpp" ]; then + ln -sf "${HOST_BUILD}/bin/qdbusxml2cpp" "${COOKBOOK_BUILD}/src/Qt6::qdbusxml2cpp" +fi +export PATH="${COOKBOOK_BUILD}/src:${HOST_BUILD}/bin:${PATH}" + cmake --build . -j${COOKBOOK_MAKE_JOBS} || true BUILD_DIR="${COOKBOOK_BUILD}" diff --git a/local/recipes/kde/kf6-kdeclarative/source/CMakeLists.txt b/local/recipes/kde/kf6-kdeclarative/source/CMakeLists.txt index a238ac14..c61caff6 100644 --- a/local/recipes/kde/kf6-kdeclarative/source/CMakeLists.txt +++ b/local/recipes/kde/kf6-kdeclarative/source/CMakeLists.txt @@ -32,7 +32,7 @@ find_package(KF6GuiAddons ${KF_DEP_VERSION} REQUIRED) if(NOT WIN32 AND NOT APPLE AND NOT ANDROID AND NOT REDOX) -### find_package(KF6GlobalAccel ${KF_DEP_VERSION} REQUIRED) +#### find_package(KF6GlobalAccel ${KF_DEP_VERSION} REQUIRED) set(HAVE_KGLOBALACCEL TRUE) else() set(HAVE_KGLOBALACCEL FALSE) diff --git a/local/recipes/kde/kf6-kglobalaccel/recipe.toml b/local/recipes/kde/kf6-kglobalaccel/recipe.toml index d71b50b7..43aa5c96 100644 --- a/local/recipes/kde/kf6-kglobalaccel/recipe.toml +++ b/local/recipes/kde/kf6-kglobalaccel/recipe.toml @@ -36,6 +36,7 @@ rm -f CMakeCache.txt rm -rf CMakeFiles cmake "${COOKBOOK_SOURCE}" \ + -GNinja \ -DCMAKE_TOOLCHAIN_FILE="${COOKBOOK_ROOT}/local/recipes/qt/redox-toolchain.cmake" \ -DQT_HOST_PATH="${HOST_BUILD}" \ -DCMAKE_INSTALL_PREFIX=/usr \ @@ -46,6 +47,15 @@ cmake "${COOKBOOK_SOURCE}" \ -DWITH_X11=OFF \ -Wno-dev +mkdir -p "${COOKBOOK_BUILD}/src" +if [ -e "${HOST_BUILD}/bin/qdbuscpp2xml" ]; then + ln -sf "${HOST_BUILD}/bin/qdbuscpp2xml" "${COOKBOOK_BUILD}/src/Qt6::qdbuscpp2xml" +fi +if [ -e "${HOST_BUILD}/bin/qdbusxml2cpp" ]; then + ln -sf "${HOST_BUILD}/bin/qdbusxml2cpp" "${COOKBOOK_BUILD}/src/Qt6::qdbusxml2cpp" +fi +export PATH="${COOKBOOK_BUILD}/src:${HOST_BUILD}/bin:${PATH}" + if [ -f "${COOKBOOK_BUILD}/src/kglobalaccel_component_interface.cpp" ]; then sed -i 's/kglobalaccel_component_interface.moc/moc_kglobalaccel_component_interface.cpp/' "${COOKBOOK_BUILD}/src/kglobalaccel_component_interface.cpp" fi @@ -53,6 +63,18 @@ if [ -f "${COOKBOOK_BUILD}/src/kglobalaccel_interface.cpp" ]; then sed -i 's/kglobalaccel_interface.moc/moc_kglobalaccel_interface.cpp/' "${COOKBOOK_BUILD}/src/kglobalaccel_interface.cpp" fi +cmake --build . -j${COOKBOOK_MAKE_JOBS} || true + +BUILD_DIR="${COOKBOOK_BUILD}" +for src in "${BUILD_DIR}"/src/moc_*.cpp; do + [ -f "$src" ] || continue + base=$(basename "$src" .cpp) + mocname="${base#moc_}.moc" + if [ ! -e "${BUILD_DIR}/src/$mocname" ]; then + ln -sf "$base.cpp" "${BUILD_DIR}/src/$mocname" + fi +done + cmake --build . -j${COOKBOOK_MAKE_JOBS} cmake --install . --prefix "${COOKBOOK_STAGE}/usr" diff --git a/local/recipes/kde/kf6-kiconthemes/source/CMakeLists.txt b/local/recipes/kde/kf6-kiconthemes/source/CMakeLists.txt index 9cc58569..3baf9189 100644 --- a/local/recipes/kde/kf6-kiconthemes/source/CMakeLists.txt +++ b/local/recipes/kde/kf6-kiconthemes/source/CMakeLists.txt @@ -25,7 +25,7 @@ include(ECMQtDeclareLoggingCategory) include(ECMDeprecationSettings) include(ECMAddQch) include(CMakeDependentOption) -#############################include(ECMQmlModule) +##############################include(ECMQmlModule) set(EXCLUDE_DEPRECATED_BEFORE_AND_AT 0 CACHE STRING "Control the range of deprecated API excluded from the build [default=0].") @@ -69,10 +69,11 @@ find_package(Qt6GuiPrivate ${REQUIRED_QT_VERSION} REQUIRED) find_package(Qt6GuiPrivate ${REQUIRED_QT_VERSION} REQUIRED) find_package(Qt6GuiPrivate ${REQUIRED_QT_VERSION} REQUIRED) find_package(Qt6GuiPrivate ${REQUIRED_QT_VERSION} REQUIRED) +find_package(Qt6GuiPrivate ${REQUIRED_QT_VERSION} REQUIRED) find_package(Qt6Svg ${REQUIRED_QT_VERSION} REQUIRED NO_MODULE) if (FALSE) -########################## find_package(Qt6 ${REQUIRED_QT_VERSION} NO_MODULE REQUIRED Qml Quick) +########################### find_package(Qt6 ${REQUIRED_QT_VERSION} NO_MODULE REQUIRED Qml Quick) endif() # shall we use DBus? diff --git a/local/recipes/kde/kf6-kiconthemes/source/src/CMakeLists.txt b/local/recipes/kde/kf6-kiconthemes/source/src/CMakeLists.txt index 94dc4561..a875c008 100644 --- a/local/recipes/kde/kf6-kiconthemes/source/src/CMakeLists.txt +++ b/local/recipes/kde/kf6-kiconthemes/source/src/CMakeLists.txt @@ -2,7 +2,7 @@ configure_file(config.h.in ${CMAKE_CURRENT_BINARY_DIR}/config.h) add_subdirectory(tools/kiconfinder) if (KICONTHEMES_USE_QTQUICK) -######################## add_subdirectory(qml) +######################### add_subdirectory(qml) endif() if (APPLE) add_subdirectory(tools/ksvg2icns) diff --git a/local/recipes/kde/kf6-kio/source/src/core/workerinterface.cpp b/local/recipes/kde/kf6-kio/source/src/core/workerinterface.cpp index 63f7d230..c92d6543 100644 --- a/local/recipes/kde/kf6-kio/source/src/core/workerinterface.cpp +++ b/local/recipes/kde/kf6-kio/source/src/core/workerinterface.cpp @@ -15,6 +15,8 @@ #include +#include + #include #include "usernotificationhandler_p.h" #include "workerbase.h" diff --git a/local/recipes/kde/kf6-kitemviews/source/CMakeLists.txt b/local/recipes/kde/kf6-kitemviews/source/CMakeLists.txt index 5dc146cb..bb0c5257 100644 --- a/local/recipes/kde/kf6-kitemviews/source/CMakeLists.txt +++ b/local/recipes/kde/kf6-kitemviews/source/CMakeLists.txt @@ -29,6 +29,7 @@ set(REQUIRED_QT_VERSION 6.6.0) find_package(Qt6 ${REQUIRED_QT_VERSION} CONFIG REQUIRED Widgets) find_package(Qt6GuiPrivate ${REQUIRED_QT_VERSION} REQUIRED) find_package(Qt6GuiPrivate ${REQUIRED_QT_VERSION} REQUIRED) +find_package(Qt6GuiPrivate ${REQUIRED_QT_VERSION} REQUIRED) set(EXCLUDE_DEPRECATED_BEFORE_AND_AT 0 CACHE STRING "Control the range of deprecated API excluded from the build [default=0].") diff --git a/local/recipes/kde/kf6-kjobwidgets/source/CMakeLists.txt b/local/recipes/kde/kf6-kjobwidgets/source/CMakeLists.txt index 2c72c546..36b62944 100644 --- a/local/recipes/kde/kf6-kjobwidgets/source/CMakeLists.txt +++ b/local/recipes/kde/kf6-kjobwidgets/source/CMakeLists.txt @@ -34,6 +34,7 @@ find_package(Qt6GuiPrivate ${REQUIRED_QT_VERSION} REQUIRED) find_package(Qt6GuiPrivate ${REQUIRED_QT_VERSION} REQUIRED) find_package(Qt6GuiPrivate ${REQUIRED_QT_VERSION} REQUIRED) find_package(Qt6GuiPrivate ${REQUIRED_QT_VERSION} REQUIRED) +find_package(Qt6GuiPrivate ${REQUIRED_QT_VERSION} REQUIRED) if(NOT WIN32 AND NOT APPLE AND NOT ANDROID AND NOT HAIKU) option(WITH_X11 "Build with support for QX11Info::appUserTime()" ON) diff --git a/local/recipes/kde/kf6-kjobwidgets/source/src/CMakeLists.txt b/local/recipes/kde/kf6-kjobwidgets/source/src/CMakeLists.txt index f1b03ffc..2bd37a56 100644 --- a/local/recipes/kde/kf6-kjobwidgets/source/src/CMakeLists.txt +++ b/local/recipes/kde/kf6-kjobwidgets/source/src/CMakeLists.txt @@ -75,7 +75,7 @@ target_link_libraries(KF6JobWidgets KF6::CoreAddons # KJob PRIVATE KF6::WidgetsAddons # KSqueezedTextLabel - #KF6::Notifications + ##KF6::Notifications ) if (HAVE_QTDBUS) target_link_libraries(KF6JobWidgets PRIVATE Qt6::DBus) @@ -93,7 +93,7 @@ ecm_generate_headers(KJobWidgets_HEADERS KUiServerV2JobTracker KStatusBarJobTracker KWidgetJobTracker - #KNotificationJobUiDelegate + ##KNotificationJobUiDelegate REQUIRED_HEADERS KJobWidgets_HEADERS ) diff --git a/local/recipes/kde/kf6-knotifications/recipe.toml b/local/recipes/kde/kf6-knotifications/recipe.toml index fdf93d25..18a26a34 100644 --- a/local/recipes/kde/kf6-knotifications/recipe.toml +++ b/local/recipes/kde/kf6-knotifications/recipe.toml @@ -30,6 +30,7 @@ sed -i 's/^ki18n_install(po)/#ki18n_install(po)/' \ sed -i '/if (NOT APPLE AND NOT ANDROID AND NOT WIN32 AND NOT HAIKU/,/^endif()/s/^/#/' \ "${COOKBOOK_SOURCE}/CMakeLists.txt" 2>/dev/null || true +sed -i '127,137 s/^#*//' "${COOKBOOK_SOURCE}/CMakeLists.txt" 2>/dev/null || true sed -i 's/^include(ECMQmlModule)/#include(ECMQmlModule)/' \ "${COOKBOOK_SOURCE}/CMakeLists.txt" 2>/dev/null || true @@ -37,8 +38,6 @@ sed -i 's/^ add_subdirectory(qml)/# add_subdirectory(qml)/' \ "${COOKBOOK_SOURCE}/src/CMakeLists.txt" 2>/dev/null || true sed -i 's/^#add_subdirectory(src)/add_subdirectory(src)/' \ "${COOKBOOK_SOURCE}/CMakeLists.txt" 2>/dev/null || true -sed -i '139,160 s/^##//' "${COOKBOOK_SOURCE}/CMakeLists.txt" 2>/dev/null || true -sed -i '148,160 s/^#//' "${COOKBOOK_SOURCE}/CMakeLists.txt" 2>/dev/null || true rm -f CMakeCache.txt rm -rf CMakeFiles diff --git a/local/recipes/kde/kf6-knotifications/source/CMakeLists.txt b/local/recipes/kde/kf6-knotifications/source/CMakeLists.txt index 7a8e8e67..e120aebd 100644 --- a/local/recipes/kde/kf6-knotifications/source/CMakeLists.txt +++ b/local/recipes/kde/kf6-knotifications/source/CMakeLists.txt @@ -78,88 +78,86 @@ endif() find_package(KF6Config ${KF_DEP_VERSION} REQUIRED) -########if (NOT APPLE AND NOT ANDROID AND NOT WIN32 AND NOT HAIKU OR (WIN32 AND NOT WITH_SNORETOAST)) -######## find_package(Qt6 ${REQUIRED_QT_VERSION} CONFIG REQUIRED DBus) -######## find_package(Canberra REQUIRED) -######## set_package_properties(Canberra PROPERTIES -######## PURPOSE "Needed to build audio notification support") -######## if (TARGET Canberra::Canberra) -######## add_definitions(-DHAVE_CANBERRA) -######## endif() -########endif() -####### -######## For the Python bindings -#######find_package(Python3 3.10 COMPONENTS Interpreter Development) -#######find_package(Shiboken6) -#######find_package(PySide6) -####### -######## Python Bindings -#######cmake_dependent_option(BUILD_PYTHON_BINDINGS "Generate Python Bindings" ON "TARGET Shiboken6::libshiboken AND TARGET PySide6::pyside6" OFF) -#######add_feature_info(PYTHON_BINDINGS ${BUILD_PYTHON_BINDINGS} "Python bindings") -####### -######## FreeBSD CI is missing required packages -#######if (CMAKE_SYSTEM_NAME MATCHES FreeBSD) -####### set(BUILD_PYTHON_BINDINGS OFF) -#######endif() -###### -######remove_definitions(-DQT_NO_CAST_FROM_BYTEARRAY) -###### -#######ecm_install_po_files_as_qm(poqm) -###### -######ecm_set_disabled_deprecation_versions( -###### QT 6.8 -###### KF 6.8 -######) -###### -######add_subdirectory(src) -######if (BUILD_TESTING) -###### add_subdirectory(tests) -###### add_subdirectory(autotests) -###### add_subdirectory(examples) -######endif() -##### -#####if (BUILD_PYTHON_BINDINGS) -##### include(ECMGeneratePythonBindings) -##### add_subdirectory(python) -#####endif() -#### -##### create a Config.cmake and a ConfigVersion.cmake file and install them -####set(CMAKECONFIG_INSTALL_DIR "${KDE_INSTALL_CMAKEPACKAGEDIR}/KF6Notifications") -#### -####if (BUILD_QCH) -#### ecm_install_qch_export( -#### TARGETS KF6Notifications_QCH -#### FILE KF6NotificationsQchTargets.cmake -#### DESTINATION "${CMAKECONFIG_INSTALL_DIR}" -#### COMPONENT Devel -#### ) -#### set(PACKAGE_INCLUDE_QCHTARGETS "include(\"\${CMAKE_CURRENT_LIST_DIR}/KF6NotificationsQchTargets.cmake\")") -####endif() -### -#include(CMakePackageConfigHelpers) -# -#configure_package_config_file( -# "${CMAKE_CURRENT_SOURCE_DIR}/KF6NotificationsConfig.cmake.in" -# "${CMAKE_CURRENT_BINARY_DIR}/KF6NotificationsConfig.cmake" -# PATH_VARS KDE_INSTALL_DBUSINTERFACEDIR -# INSTALL_DESTINATION ${CMAKECONFIG_INSTALL_DIR} -#) -# -#install(FILES -# "${CMAKE_CURRENT_BINARY_DIR}/KF6NotificationsConfig.cmake" -# "${CMAKE_CURRENT_BINARY_DIR}/KF6NotificationsConfigVersion.cmake" -# DESTINATION "${CMAKECONFIG_INSTALL_DIR}" -# COMPONENT Devel -#) -# -##install(EXPORT KF6NotificationsTargets DESTINATION "${CMAKECONFIG_INSTALL_DIR}" FILE KF6NotificationsTargets.cmake NAMESPACE KF6:: ) +##################if (NOT APPLE AND NOT ANDROID AND NOT WIN32 AND NOT HAIKU OR (WIN32 AND NOT WITH_SNORETOAST)) +################## find_package(Qt6 ${REQUIRED_QT_VERSION} CONFIG REQUIRED DBus) +################## find_package(Canberra REQUIRED) +################## set_package_properties(Canberra PROPERTIES +################## PURPOSE "Needed to build audio notification support") +################## if (TARGET Canberra::Canberra) +################## add_definitions(-DHAVE_CANBERRA) +################## endif() +##################endif() +################# +################## For the Python bindings +#################find_package(Python3 3.10 COMPONENTS Interpreter Development) +#################find_package(Shiboken6) +#################find_package(PySide6) +################# +################## Python Bindings +#################cmake_dependent_option(BUILD_PYTHON_BINDINGS "Generate Python Bindings" ON "TARGET Shiboken6::libshiboken AND TARGET PySide6::pyside6" OFF) +#################add_feature_info(PYTHON_BINDINGS ${BUILD_PYTHON_BINDINGS} "Python bindings") +################# +################## FreeBSD CI is missing required packages +#################if (CMAKE_SYSTEM_NAME MATCHES FreeBSD) +################# set(BUILD_PYTHON_BINDINGS OFF) +#################endif() +################ +################remove_definitions(-DQT_NO_CAST_FROM_BYTEARRAY) +################ +#################ecm_install_po_files_as_qm(poqm) +################ +################ecm_set_disabled_deprecation_versions( +################ QT 6.8 +################ KF 6.8 +################) +################ +################add_subdirectory(src) +################if (BUILD_TESTING) +################ add_subdirectory(tests) +################ add_subdirectory(autotests) +################ add_subdirectory(examples) +################endif() +############### +###############if (BUILD_PYTHON_BINDINGS) +############### include(ECMGeneratePythonBindings) +############### add_subdirectory(python) +###############endif() +############## +## create a Config.cmake and a ConfigVersion.cmake file and install them +set(CMAKECONFIG_INSTALL_DIR "${KDE_INSTALL_CMAKEPACKAGEDIR}/KF6Notifications") + +if (BUILD_QCH) + ecm_install_qch_export( + TARGETS KF6Notifications_QCH + FILE KF6NotificationsQchTargets.cmake + DESTINATION "${CMAKECONFIG_INSTALL_DIR}" + COMPONENT Devel + ) + set(PACKAGE_INCLUDE_QCHTARGETS "include(\"${CMAKE_CURRENT_LIST_DIR}/KF6NotificationsQchTargets.cmake\")") +endif() +include(CMakePackageConfigHelpers) + +configure_package_config_file( + "${CMAKE_CURRENT_SOURCE_DIR}/KF6NotificationsConfig.cmake.in" + "${CMAKE_CURRENT_BINARY_DIR}/KF6NotificationsConfig.cmake" + PATH_VARS KDE_INSTALL_DBUSINTERFACEDIR + INSTALL_DESTINATION ${CMAKECONFIG_INSTALL_DIR} +) + +install(FILES + "${CMAKE_CURRENT_BINARY_DIR}/KF6NotificationsConfig.cmake" + "${CMAKE_CURRENT_BINARY_DIR}/KF6NotificationsConfigVersion.cmake" + DESTINATION "${CMAKECONFIG_INSTALL_DIR}" + COMPONENT Devel +) +install(EXPORT KF6NotificationsTargets DESTINATION "${CMAKECONFIG_INSTALL_DIR}" FILE KF6NotificationsTargets.cmake NAMESPACE KF6:: ) install(FILES ${knotifications_version_header} DESTINATION ${KDE_INSTALL_INCLUDEDIR_KF}/KNotifications COMPONENT Devel ) -### -###include(ECMFeatureSummary) -###ecm_feature_summary(WHAT ALL FATAL_ON_MISSING_REQUIRED_PACKAGES) -### -###kde_configure_git_pre_commit_hook(CHECKS CLANG_FORMAT) +########## +##########include(ECMFeatureSummary) +##########ecm_feature_summary(WHAT ALL FATAL_ON_MISSING_REQUIRED_PACKAGES) +########## +##########kde_configure_git_pre_commit_hook(CHECKS CLANG_FORMAT) diff --git a/local/recipes/kde/kf6-kservice/source/src/sycoca/kmemfile.cpp b/local/recipes/kde/kf6-kservice/source/src/sycoca/kmemfile.cpp index d90a9ee0..1b84ee66 100644 --- a/local/recipes/kde/kf6-kservice/source/src/sycoca/kmemfile.cpp +++ b/local/recipes/kde/kf6-kservice/source/src/sycoca/kmemfile.cpp @@ -15,6 +15,27 @@ #include #include +#ifdef __redox__ +static bool sharedMemoryLock(QSharedMemory &) +{ + return true; +} + +static void sharedMemoryUnlock(QSharedMemory &) +{ +} +#else +static bool sharedMemoryLock(QSharedMemory &memory) +{ + return memory.lock(); +} + +static void sharedMemoryUnlock(QSharedMemory &memory) +{ + memory.unlock(); +} +#endif + class KMemFile::Private { public: @@ -82,7 +103,7 @@ bool KMemFile::Private::loadContentsFromFile() parent->setErrorString(QCoreApplication::translate("", "Cannot create memory segment for file %1").arg(filename)); return false; } - shmData.lock(); + sharedMemoryLock(shmData); qint64 size = 0; qint64 bytesRead; char *data = static_cast(shmData.data()); @@ -93,15 +114,15 @@ bool KMemFile::Private::loadContentsFromFile() return false; } shmDataSize = size; - shmData.unlock(); + sharedMemoryUnlock(shmData); return true; } void KMemFile::Private::close() { - shmData.unlock(); + sharedMemoryUnlock(shmData); shmData.detach(); - shmInfo.unlock(); + sharedMemoryUnlock(shmInfo); shmInfo.detach(); readWritePos = 0; shmDataSize = 0; @@ -151,44 +172,44 @@ bool KMemFile::open(OpenMode mode) } QSharedMemory lock(QDir(d->filename).canonicalPath()); - lock.lock(); + sharedMemoryLock(lock); Private::sharedInfoData *infoPtr; d->shmInfo.setKey(d->getShmKey()); // see if it's already in memory if (!d->shmInfo.attach(QSharedMemory::ReadWrite)) { if (!d->shmInfo.create(sizeof(Private::sharedInfoData))) { - lock.unlock(); + sharedMemoryUnlock(lock); setErrorString(QCoreApplication::translate("", "Cannot create memory segment for file %1").arg(d->filename)); return false; } - d->shmInfo.lock(); + sharedMemoryLock(d->shmInfo); // no -> create it infoPtr = static_cast(d->shmInfo.data()); memset(infoPtr, 0, sizeof(Private::sharedInfoData)); infoPtr->shmCounter = 1; if (!d->loadContentsFromFile()) { - d->shmInfo.unlock(); + sharedMemoryUnlock(d->shmInfo); d->shmInfo.detach(); - lock.unlock(); + sharedMemoryUnlock(lock); return false; } } else { - d->shmInfo.lock(); + sharedMemoryLock(d->shmInfo); infoPtr = static_cast(d->shmInfo.data()); d->shmData.setKey(d->getShmKey(infoPtr->shmCounter)); if (!d->shmData.attach(QSharedMemory::ReadOnly)) { if (!d->loadContentsFromFile()) { - d->shmInfo.unlock(); + sharedMemoryUnlock(d->shmInfo); d->shmInfo.detach(); - lock.unlock(); + sharedMemoryUnlock(lock); return false; } } } d->shmDataSize = infoPtr->shmDataSize; - d->shmInfo.unlock(); - lock.unlock(); + sharedMemoryUnlock(d->shmInfo); + sharedMemoryUnlock(lock); setOpenMode(mode); return true; @@ -232,17 +253,17 @@ qint64 KMemFile::writeData(const char *, qint64) void KMemFile::fileContentsChanged(const QString &filename) { QSharedMemory lock(QDir(filename).canonicalPath()); - lock.lock(); + sharedMemoryLock(lock); QSharedMemory shmData(Private::getShmKey(filename)); if (!shmData.attach()) { return; } - shmData.lock(); + sharedMemoryLock(shmData); Private::sharedInfoData *infoPtr = static_cast(shmData.data()); infoPtr->shmCounter++; infoPtr->shmDataSize = 0; - shmData.unlock(); + sharedMemoryUnlock(shmData); } #endif // QT_NO_SHAREDMEMORY diff --git a/local/recipes/kde/kf6-ktextwidgets/source/CMakeLists.txt b/local/recipes/kde/kf6-ktextwidgets/source/CMakeLists.txt index 59dd28c2..27d842d1 100644 --- a/local/recipes/kde/kf6-ktextwidgets/source/CMakeLists.txt +++ b/local/recipes/kde/kf6-ktextwidgets/source/CMakeLists.txt @@ -43,6 +43,7 @@ find_package(Qt6GuiPrivate ${REQUIRED_QT_VERSION} REQUIRED) find_package(Qt6GuiPrivate ${REQUIRED_QT_VERSION} REQUIRED) find_package(Qt6GuiPrivate ${REQUIRED_QT_VERSION} REQUIRED) find_package(Qt6GuiPrivate ${REQUIRED_QT_VERSION} REQUIRED) +find_package(Qt6GuiPrivate ${REQUIRED_QT_VERSION} REQUIRED) if (WITH_TEXT_TO_SPEECH) find_package(Qt6 ${REQUIRED_QT_VERSION} CONFIG REQUIRED TextToSpeech) diff --git a/local/recipes/kde/kf6-kwayland/source/CMakeLists.txt b/local/recipes/kde/kf6-kwayland/source/CMakeLists.txt index c8e3f724..33ac2e04 100644 --- a/local/recipes/kde/kf6-kwayland/source/CMakeLists.txt +++ b/local/recipes/kde/kf6-kwayland/source/CMakeLists.txt @@ -51,6 +51,7 @@ find_package(Qt6WaylandClientPrivate REQUIRED) find_package(Qt6WaylandClientPrivate REQUIRED) find_package(Qt6WaylandClientPrivate REQUIRED) find_package(Qt6WaylandClientPrivate REQUIRED) +find_package(Qt6WaylandClientPrivate REQUIRED) set_package_properties(Wayland PROPERTIES TYPE REQUIRED ) diff --git a/local/recipes/kde/kf6-kxmlgui/source/src/CMakeLists.txt b/local/recipes/kde/kf6-kxmlgui/source/src/CMakeLists.txt index 3da629f7..60f248e2 100644 --- a/local/recipes/kde/kf6-kxmlgui/source/src/CMakeLists.txt +++ b/local/recipes/kde/kf6-kxmlgui/source/src/CMakeLists.txt @@ -99,7 +99,7 @@ PUBLIC PRIVATE #QNetworkAccessManager in kaboutapplicationpersonmodel_p #QPrinter in kshortcutseditor -## Qt6::CorePrivate #QSystemLocale in initializeLanguages +### Qt6::CorePrivate #QSystemLocale in initializeLanguages KF6::CoreAddons #KAboutData KF6::GuiAddons KF6::WidgetsAddons diff --git a/local/recipes/kde/kf6-kxmlgui/source/src/kswitchlanguagedialog_p.cpp b/local/recipes/kde/kf6-kxmlgui/source/src/kswitchlanguagedialog_p.cpp index 3abc7b05..7edfc5d0 100644 --- a/local/recipes/kde/kf6-kxmlgui/source/src/kswitchlanguagedialog_p.cpp +++ b/local/recipes/kde/kf6-kxmlgui/source/src/kswitchlanguagedialog_p.cpp @@ -75,10 +75,10 @@ void initializeLanguages() // Ideally setting the LANGUAGE would change the default QLocale too // but unfortunately this is too late since the QCoreApplication constructor // already created a QLocale at this stage so we need to set the reset it -//// // by triggering the creation and destruction of a QSystemLocale +////// // by triggering the creation and destruction of a QSystemLocale // this is highly dependent on Qt internals, so may break, but oh well -//// QSystemLocale *dummy = new QSystemLocale(); -//// delete dummy; +////// QSystemLocale *dummy = new QSystemLocale(); +////// delete dummy; } } diff --git a/local/recipes/kde/kf6-solid/source/CMakeLists.txt b/local/recipes/kde/kf6-solid/source/CMakeLists.txt index d423c8fa..4d50e335 100644 --- a/local/recipes/kde/kf6-solid/source/CMakeLists.txt +++ b/local/recipes/kde/kf6-solid/source/CMakeLists.txt @@ -78,7 +78,7 @@ set_package_properties(PList PROPERTIES if (CMAKE_SYSTEM_NAME MATCHES Linux) # Used by the UDisks backend on Linux - ##find_package(LibMount) + ###find_package(LibMount) set_package_properties(LibMount PROPERTIES TYPE REQUIRED) endif()