Script 'mail_helper' called by obssrc Hello community, here is the log from the commit of package libkdepim for openSUSE:Factory checked in at 2026-08-24 12:04:03 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/libkdepim (Old) and /work/SRC/openSUSE:Factory/.libkdepim.new.1258 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "libkdepim" Mon Aug 24 12:04:03 2026 rev:126 rq:1372494 version:26.08.0 Changes: -------- --- /work/SRC/openSUSE:Factory/libkdepim/libkdepim.changes 2026-07-02 22:08:23.134648346 +0200 +++ /work/SRC/openSUSE:Factory/.libkdepim.new.1258/libkdepim.changes 2026-08-24 12:06:37.661275200 +0200 @@ -1,0 +2,36 @@ +Sun Aug 16 07:27:54 UTC 2026 - Christophe Marin <[email protected]> + +- Update to 26.08.0 + * New feature release + * For more details please see: + * https://kde.org/announcements/gear/26.08.0/ +- No code change since 26.07.90 + +------------------------------------------------------------------- +Sat Aug 1 11:39:34 UTC 2026 - Christophe Marin <[email protected]> + +- Update to 26.07.90 + * New feature release +- No code change since 26.07.80 + +------------------------------------------------------------------- +Sat Jul 18 11:12:16 UTC 2026 - Christophe Marin <[email protected]> + +- Update to 26.07.80 + * New feature release +- Changes since 26.04.3: + * Add ECMInstalledLibraryCheck support + * CMAKE_CXX_SCAN_FOR_MODULES is already defined in ecm + * Add missing dependency + move lib as public + * Make sure that line is correctly removed + * We don't use ++ value => simplify code + * Make sure that item is not null + * Fix QAssert logic + * Make sure that it doesn't crash when list is empty + * Coding style + * kcheckcombobox.cpp - fix the lineeditor text display (kde#518240) + * LIBKDEPIM_LIB_VERSION is not used + * src/CMakeLists.txt - clean unused variables + * Use prek + move license info in REUSE.toml + +------------------------------------------------------------------- Old: ---- libkdepim-26.04.3.tar.xz libkdepim-26.04.3.tar.xz.sig New: ---- libkdepim-26.08.0.tar.xz libkdepim-26.08.0.tar.xz.sig ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ libkdepim.spec ++++++ --- /var/tmp/diff_new_pack.K2h7cK/_old 2026-08-24 12:06:38.954321245 +0200 +++ /var/tmp/diff_new_pack.K2h7cK/_new 2026-08-24 12:06:38.962321530 +0200 @@ -16,12 +16,12 @@ # -%define kf6_version 6.19.0 +%define kf6_version 6.27.0 %define qt6_version 6.9.0 %bcond_without released Name: libkdepim -Version: 26.04.3 +Version: 26.08.0 Release: 0 Summary: Base package of kdepim License: GPL-2.0-only AND GPL-2.0-or-later AND LGPL-2.1-or-later ++++++ libkdepim-26.04.3.tar.xz -> libkdepim-26.08.0.tar.xz ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libkdepim-26.04.3/.pre-commit-config.yaml new/libkdepim-26.08.0/.pre-commit-config.yaml --- old/libkdepim-26.04.3/.pre-commit-config.yaml 2026-06-06 06:19:31.000000000 +0200 +++ new/libkdepim-26.08.0/.pre-commit-config.yaml 2026-08-03 05:41:12.000000000 +0200 @@ -21,7 +21,7 @@ - id: destroyed-symlinks - id: check-executables-have-shebangs - repo: https://github.com/pre-commit/mirrors-clang-format - rev: v21.1.8 + rev: v22.1.5 hooks: - id: clang-format # force using this project's configuration rather @@ -29,28 +29,28 @@ args: [--style=file:.clang-format-pre-commit] - repo: https://github.com/astral-sh/ruff-pre-commit # Ruff version. - rev: v0.15.0 + rev: v0.15.12 hooks: # Run the linter. - id: ruff # Run the formatter. - id: ruff-format - repo: https://github.com/codespell-project/codespell - rev: v2.4.1 + rev: v2.4.2 hooks: - id: codespell exclude: (textemoticons/core/data/emoji.json|textgrammarcheck/grammalecte/autotests/data/result1.json|texttranslator/translator/plugins/bergamot/autotests/data/modellanguages/models.json|textgrammarcheck/languagetool/autotests/data/test2.json|textautocorrection/core/autotests/data/custom-fr-ref.xml|textgrammarcheck/common/autotests/grammarresultutiltest.cpp|textautocorrection/core/autotests/data/custom-fr.xml) - repo: https://github.com/BlankSpruce/gersemi - rev: 0.25.4 + rev: 0.26.1 hooks: - id: gersemi - repo: https://github.com/DavidAnson/markdownlint-cli2 - rev: v0.20.0 + rev: v0.22.1 hooks: - id: markdownlint-cli2 files: \.(md|mdown|markdown)$ - repo: https://github.com/scop/pre-commit-shfmt - rev: v3.12.0-2 + rev: v3.13.1-1 hooks: - id: shfmt - repo: https://github.com/shellcheck-py/shellcheck-py diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libkdepim-26.04.3/CMakeLists.txt new/libkdepim-26.08.0/CMakeLists.txt --- old/libkdepim-26.04.3/CMakeLists.txt 2026-06-06 06:19:31.000000000 +0200 +++ new/libkdepim-26.08.0/CMakeLists.txt 2026-08-03 05:41:12.000000000 +0200 @@ -1,20 +1,22 @@ # SPDX-FileCopyrightText: none # SPDX-License-Identifier: BSD-3-Clause -cmake_minimum_required(VERSION 3.27) -set(PIM_VERSION "6.7.3") +cmake_minimum_required(VERSION 3.29) +set(PIM_VERSION "6.8.0") project(libkdepim VERSION ${PIM_VERSION}) -set(KF_MIN_VERSION "6.22.0") +set(KF_MIN_VERSION "6.25.0") set(QT_REQUIRED_VERSION "6.9.0") -set(CMAKE_CXX_SCAN_FOR_MODULES OFF) find_package(ECM ${KF_MIN_VERSION} CONFIG REQUIRED) -set(CMAKE_MODULE_PATH ${ECM_MODULE_PATH}) +set(CMAKE_MODULE_PATH + ${CMAKE_CURRENT_SOURCE_DIR}/cmake/ecmcopy + ${ECM_MODULE_PATH} +) include(KDEInstallDirs) include(KDECMakeSettings) include(KDECompilerSettings NO_POLICY_SCOPE) - +include(ECMInstalledLibraryCheck) include(ECMGenerateExportHeader) include(ECMSetupVersion) include(ECMGenerateHeaders) @@ -30,6 +32,9 @@ if(GIT_SOURCE_TARBALL) set(PRE_COMMIT_INSTALLED FALSE) + include(KDEGitCommitHooks) + include(KDEClangFormat) + kde_clang_format(${ALL_CLANG_FORMAT_SOURCE_FILES}) if(${CMAKE_SOURCE_DIR} STREQUAL ${PROJECT_SOURCE_DIR}) if(EXISTS "${PROJECT_SOURCE_DIR}/.git/hooks/pre-commit") file(READ "${PROJECT_SOURCE_DIR}/.git/hooks/pre-commit" FILE_CONTENTS) @@ -44,35 +49,38 @@ endif() endif() if(NOT ${PRE_COMMIT_INSTALLED}) - find_program(PRE_COMMIT_EXECUTABLE pre-commit) - if(PRE_COMMIT_EXECUTABLE) + function(install_hook executable hook_name) message( STATUS - "This module has pre-commit support. pre-commit binary was found. Installing pre-commit hook" + "This module has ${hook_name} support. ${hook_name} binary was found. Installing ${hook_name} hook" ) execute_process( COMMAND - "${PRE_COMMIT_EXECUTABLE}" install -f + "${executable}" install -f ERROR_QUIET RESULT_VARIABLE _precommitresult WORKING_DIRECTORY "${PROJECT_SOURCE_DIR}" ) if(_precommitresult EQUAL 0) - message(STATUS "Pre-commit installed.") + message(STATUS "${hook_name} installed.") else() message( WARNING - "Error during installing pre-commit hook: ${PRE_COMMIT_EXECUTABLE} project source dir ${PROJECT_SOURCE_DIR}" + "Error during installing ${hook_name} hook: ${executable} project source dir ${PROJECT_SOURCE_DIR}" ) - include(KDEGitCommitHooks) - include(KDEClangFormat) - kde_clang_format(${ALL_CLANG_FORMAT_SOURCE_FILES}) endif() + endfunction() + + find_program(PREK_EXECUTABLE prek) + if(PREK_EXECUTABLE) + install_hook(${PREK_EXECUTABLE} "Prek") else() - message(WARNING "This module has pre-commit support. pre-commit binary was not found.") - include(KDEGitCommitHooks) - include(KDEClangFormat) - kde_clang_format(${ALL_CLANG_FORMAT_SOURCE_FILES}) + find_program(PRE_COMMIT_EXECUTABLE pre-commit) + if(PRE_COMMIT_EXECUTABLE) + install_hook(${PRE_COMMIT_EXECUTABLE} "pre-commit") + else() + message(WARNING "This module has pre-commit support. pre-commit binary was not found.") + endif() endif() endif() endif() @@ -135,12 +143,12 @@ PURPOSE "Required for the DBUS interfaces delegate." ) -set(LIBKDEPIM_LIB_VERSION ${PIM_VERSION}) find_package( Qt6 ${QT_REQUIRED_VERSION} CONFIG REQUIRED + Core Widgets Network ) @@ -166,7 +174,7 @@ # see e.g. https://gcc.gnu.org/bugzilla/show_bug.cgi?id=56556 or https://gcc.gnu.org/bugzilla/show_bug.cgi?id=79328 string(APPEND CMAKE_CXX_FLAGS " -Wshadow") endif() -ecm_set_disabled_deprecation_versions(QT 6.11.0 KF 6.23.0) +ecm_set_disabled_deprecation_versions(QT 6.12.0 KF 6.28.0) if(BUILD_TESTING) add_definitions(-DBUILD_TESTING) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libkdepim-26.04.3/CMakePresets.json.license new/libkdepim-26.08.0/CMakePresets.json.license --- old/libkdepim-26.04.3/CMakePresets.json.license 2026-06-06 06:19:31.000000000 +0200 +++ new/libkdepim-26.08.0/CMakePresets.json.license 1970-01-01 01:00:00.000000000 +0100 @@ -1,2 +0,0 @@ -# SPDX-FileCopyrightText: 2021-2026 Laurent Montel <[email protected]> -# SPDX-License-Identifier: BSD-3-Clause diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libkdepim-26.04.3/KPimLibkdepimConfig.cmake.in new/libkdepim-26.08.0/KPimLibkdepimConfig.cmake.in --- old/libkdepim-26.04.3/KPimLibkdepimConfig.cmake.in 2026-06-06 06:19:31.000000000 +0200 +++ new/libkdepim-26.08.0/KPimLibkdepimConfig.cmake.in 2026-08-03 05:41:12.000000000 +0200 @@ -4,4 +4,13 @@ @PACKAGE_INIT@ include(CMakeFindDependencyMacro) +find_dependency( + Qt6Widgets + "@QT_REQUIRED_VERSION@" +) + +find_dependency( + KF6Completion + "@KF_MIN_VERSION@" +) include("${CMAKE_CURRENT_LIST_DIR}/KPim6LibkdepimTargets.cmake") diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libkdepim-26.04.3/README-ECMInstalledLibraryCheck.md new/libkdepim-26.08.0/README-ECMInstalledLibraryCheck.md --- old/libkdepim-26.04.3/README-ECMInstalledLibraryCheck.md 1970-01-01 01:00:00.000000000 +0100 +++ new/libkdepim-26.08.0/README-ECMInstalledLibraryCheck.md 2026-08-03 05:41:12.000000000 +0200 @@ -0,0 +1,11 @@ +# Check Libs + +See [C++ Library Headers & CMake Config Files](https://frinring.wordpress.com/2026/06/30/c-library-headers-cmake-config-files-are-we-serviceable/) + +## Execute tests + +```bash +ninja install + +ninja all_installed_library_check +``` diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libkdepim-26.04.3/README-pre-commit.md.license new/libkdepim-26.08.0/README-pre-commit.md.license --- old/libkdepim-26.04.3/README-pre-commit.md.license 2026-06-06 06:19:31.000000000 +0200 +++ new/libkdepim-26.08.0/README-pre-commit.md.license 1970-01-01 01:00:00.000000000 +0100 @@ -1,2 +0,0 @@ -SPDX-FileCopyrightText: 2023-2026 Laurent Montel <[email protected]> -SPDX-License-Identifier: BSD-3-Clause diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libkdepim-26.04.3/README-qdoc.md.license new/libkdepim-26.08.0/README-qdoc.md.license --- old/libkdepim-26.04.3/README-qdoc.md.license 2026-06-06 06:19:31.000000000 +0200 +++ new/libkdepim-26.08.0/README-qdoc.md.license 1970-01-01 01:00:00.000000000 +0100 @@ -1,2 +0,0 @@ -SPDX-FileCopyrightText: 2023-2026 Laurent Montel <[email protected]> -SPDX-License-Identifier: BSD-3-Clause diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libkdepim-26.04.3/REUSE.toml new/libkdepim-26.08.0/REUSE.toml --- old/libkdepim-26.04.3/REUSE.toml 2026-06-06 06:19:31.000000000 +0200 +++ new/libkdepim-26.08.0/REUSE.toml 2026-08-03 05:41:12.000000000 +0200 @@ -8,3 +8,27 @@ precedence = "aggregate" SPDX-FileCopyrightText = "none" SPDX-License-Identifier = "CC0-1.0" + +[[annotations]] +path = ["README-pre-commit.md"] +precedence = "aggregate" +SPDX-FileCopyrightText = "2023-2026 Laurent Montel <[email protected]>" +SPDX-License-Identifier = "BSD-3-Clause" + +[[annotations]] +path = ["CMakePresets.json"] +precedence = "aggregate" +SPDX-FileCopyrightText = "2021-2026 Laurent Montel <[email protected]>" +SPDX-License-Identifier = "BSD-3-Clause" + +[[annotations]] +path = ["README-qdoc.md"] +precedence = "aggregate" +SPDX-FileCopyrightText = "2023-2026 Laurent Montel <[email protected]>" +SPDX-License-Identifier = "BSD-3-Clause" + +[[annotations]] +path = ["README-ECMInstalledLibraryCheck.md"] +precedence = "aggregate" +SPDX-FileCopyrightText = "2026 Laurent Montel <[email protected]>" +SPDX-License-Identifier = "BSD-3-Clause" diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libkdepim-26.04.3/cmake/ecmcopy/ECMInstalledLibraryCheck.cmake new/libkdepim-26.08.0/cmake/ecmcopy/ECMInstalledLibraryCheck.cmake --- old/libkdepim-26.04.3/cmake/ecmcopy/ECMInstalledLibraryCheck.cmake 1970-01-01 01:00:00.000000000 +0100 +++ new/libkdepim-26.08.0/cmake/ecmcopy/ECMInstalledLibraryCheck.cmake 2026-08-03 05:41:12.000000000 +0200 @@ -0,0 +1,773 @@ +# SPDX-FileCopyrightText: 2026 Friedrich W. H. Kossebau <[email protected]> +# +# SPDX-License-Identifier: BSD-3-Clause + +#[=======================================================================[.rst: +ECMInstalledLibraryCheck +------------------------ + +Generates a check to test artifacts of the library installation, like the +self-containedness of the CMake config files as well as of the official public +headers in the deployed layout. + +:: + + ecm_add_installed_library_check(<library_target> + [PACKAGE_NAME <package_name>] + [PACKAGE_VERSION <package_version>] + [PACKAGE_TARGET_NAMESPACE <package_target_namespace>] + [NO_PACKAGE_TARGET_NAMESPACE] + [COMPILE_DEFINITIONS <definition> [...]] + [EXTRA_DEPENDENCIES <dependency> [<version>] [...]] + [EXTRA_LINK_LIBRARIES <library> [...]]) + +The function creates a target "<library_target>_installed_library_check" which +can be invoked after the installation to check if the installed library artifacts +are self-contained when used from a consumer. +All these targets are added as dependency to a target +"all_installed_library_check", which is created at the level where this module +is first included. +The check generates a CMake project with a dummy library which searches the given +package for any specified version, links to the exported target as imported from +the package's Cmake config file and as its sources for each given include strings +adds a C++ source file with just the content "#include <include_string>". +This project then is configured with cmake and all these sources are built. + +``PACKAGE_NAME`` specifies the name of the CMake package to check for. +The default is "${PROJECT_NAME}". + +``PACKAGE_VERSION`` specifies the version of the CMake package to check for. +The default is "${PROJECT_VERSION}" if set, otherwise none. + +``PACKAGE_TARGET_NAMESPACE`` specifies what namespace the exported target +name of the library is placed in. The default is the value estimated for +the package name, unless ``NO_PACKAGE_TARGET_NAMESPACE`` is set. + +``NO_PACKAGE_TARGET_NAMESPACE`` defines that the library target is exported +in the package without any namespace. + +``COMPILE_DEFINITIONS`` can be used to set custom definitions for the test +builds against the headers. + +``EXTRA_DEPENDENCIES`` can be used to add custom dependencies to search for +with "find_package()`. This can be used if the current dependencies declared +in the installed CMake config are not complete, but can not be changed. + +``EXTRA_LINK_LIBRARIES`` can be used to add custom libraries to link to with +"target_link_libraries()`. This can be used if the current list of libraries +in the public interface is not complete, but can not be changed. + +:: + + ecm_installed_library_check_include_strings(<library_target> + HEADERS <package_name> + [PREFIX <prefix>]) + + +``HEADERS`` specifies the header files whose base names will be available as +public include strings. + +``PREFIX`` specifies a prefix, which consumers need to append next to the base names +of the headers passed to ``HEADERS``. The argument <prefix> is specified without a +trailing "/". Default is none. + +:: + + ecm_installed_library_check_cmake_variable(<library_target> + NAME <name> + VALUE <value> + [TYPE <type>]) + + +``NAME`` specifies the name of a variable expected to be set after finding the +package. + +``VALUE`` specifies the value expected to be set for the variable. For variables +of the type "BOOL" the usual evaluation of CMake to a boolean value is compared. + +``TYPE`` specifies the type of the variable. The options are "BOOL", "STRING". +Default is "STRING" + +:: + + ecm_installed_library_check_compile_definition(<library_target> + NAME <name> + [VALUE <value>] + [UNDEFINED]) + + +``NAME`` specifies the name of a macro to test. + +``VALUE`` specifies the value expected to be set for the macro If not passed, +the macro is only tested for being defined. Only numeric values are supported. + +``UNDEFINED`` specifies if the macro should be tested for being undefined. + +:: + + ecm_installed_library_check_preprocessor_macro(<library_target> + NAME <name> + [VALUE <value>] + [UNDEFINED] + [SILENT]) + + +``NAME`` specifies the name of a macro to test. + +``VALUE`` specifies the value expected to be set for the macro If not passed, +the macro is only tested for being defined. Only numeric values are supported. + +``UNDEFINED`` specifies if the macro should be tested for being undefined. + +``SILENT`` specifies if the positive result should not be reported. + +:: + + ecm_installed_library_check_version_preprocessor_macros(<library_target> + PREFIX <prefix> + [VERSION <version>] + [SILENT]) + + +``PREFIX`` specifies the prefix of the version macros to test. The expected macro +names are: "<prefix>_VERSION" (hexadecimal number), "<prefix>_VERSION_MAJOR", +"<prefix>_VERSION_MINOR" and "<prefix>_VERSION_PATCH". + +``VERSION`` specifies the version string "<major>.<minor>.<patch>". + +``SILENT`` specifies if the positive results should not be reported. + +Example usage: + +.. code-block:: cmake + + # add a non-default target "MyLib_installed_library_check", + # which will test for a CMake config file for "MyPackage", + # at version "1.0", with the imported library target + # "MyPackage::MyLib" and whose include strings (headers) + # can be used self-contained when linking the target + ecm_add_installed_library_check(MyLib + PACKAGE_NAME "MyPackage" + PACKAGE_VERSION "1.0" + ) + + # for any <MLFoo> etc. includes + ecm_installed_library_check_include_strings(MyLib + HEADERS + /absolute/path/MLFoo + relative/path/MLBar + # etc + ) + + # for any <ML/Foo> etc. includes + ecm_installed_library_check_include_strings(MyLib + HEADERS + /absolute/path/Foo + relative/path/Bar + # etc + PREFIX ML + ) + +Since 6.29 +#]=======================================================================] + +cmake_policy(VERSION 3.29) + +if(NOT TARGET all_installed_library_check) + add_custom_target(all_installed_library_check) +endif() + +# Purpose: testing basic self-containedness of public headers and cmake config files +# no testing of actual symbols or template methods +# TODO: support testing with other build metadata formats, like pkgconfig? +function(ecm_add_installed_library_check _target) + set(options NO_PACKAGE_TARGET_NAMESPACE) + set(oneValueArgs + PACKAGE_NAME + PACKAGE_VERSION + PACKAGE_TARGET_NAMESPACE + ) + set(multiValueArgs + EXTRA_DEPENDENCIES + EXTRA_LINK_LIBRARIES + COMPILE_DEFINITIONS + ) + + cmake_parse_arguments(ARG "${options}" "${oneValueArgs}" "${multiValueArgs}" ${ARGN}) + + # argument checks + if(ARG_UNPARSED_ARGUMENTS) + message( + FATAL_ERROR + "Unknown keywords given to ecm_add_installed_library_check(): \"${ARG_UNPARSED_ARGUMENTS}\"" + ) + endif() + if(ARG_NO_PACKAGE_TARGET_NAMESPACE AND ARG_PACKAGE_TARGET_NAMESPACE) + message( + FATAL_ERROR + "ecm_add_installed_library_check cannot be called with both NO_PACKAGE_TARGET_NAMESPACE and PACKAGE_TARGET_NAMESPACE args." + ) + endif() + set(_library_types + "STATIC_LIBRARY" + "SHARED_LIBRARY" + "INTERFACE_LIBRARY" + ) + get_target_property(_type ${_target} TYPE) + if(NOT ${_type} IN_LIST _library_types) + message( + FATAL_ERROR + "ecm_add_installed_library_check cannot be called on a target which is not some library. Was: ${_type}" + ) + endif() + + # setup data + if(ARG_PACKAGE_NAME) + set(_package_name "${ARG_PACKAGE_NAME}") + else() + set(_package_name "${PROJECT_NAME}") + endif() + if(ARG_PACKAGE_VERSION) + set(_package_version ${ARG_PACKAGE_VERSION}) + else() + if(PROJECT_VERSION) + set(_package_version ${PROJECT_VERSION}) + else() + set(_package_version) + endif() + endif() + if(_package_version) + set(_package_version_exact "EXACT") + else() + set(_package_version_exact) + endif() + if(ARG_PACKAGE_TARGET_NAMESPACE) + set(_library_target_namespace ${ARG_PACKAGE_TARGET_NAMESPACE}) + else() + if(ARG_NO_PACKAGE_TARGET_NAMESPACE) + set(_library_target_namespace) + else() + set(_library_target_namespace "${_package_name}::") + endif() + endif() + set(_extra_find_packages_statements) + if(ARG_EXTRA_DEPENDENCIES) + list(LENGTH ARG_EXTRA_DEPENDENCIES _deps_count) + set(_i 0) + while(${_i} LESS ${_deps_count}) + list(GET ARG_EXTRA_DEPENDENCIES ${_i} _extra_package_name) + math(EXPR _i "${_i} + 1") + set(_extra_package_version_string) + # check next arg if it is version and thus to be consumed + if(${_i} LESS ${_deps_count}) + list(GET ARG_EXTRA_DEPENDENCIES ${_i} _extra_package_version) + if(_extra_package_version MATCHES "^([0-9]+)\\.([0-9]+)(\\.([0-9]+))?$") + set(_extra_package_version_string " ${_extra_package_version}") + math(EXPR _i "${_i} + 1") + endif() + endif() + set(_extra_find_packages_statements + "find_package(${_extra_package_name}${_extra_package_version_string} REQUIRED)\n" + ) + endwhile() + endif() + set(_extra_link_libraries_list) + foreach(_link_library IN LISTS ARG_EXTRA_LINK_LIBRARIES) + string(APPEND _extra_link_libraries_list "\n ${_link_library}") + endforeach() + set(_compile_definitions_statement) + if(ARG_COMPILE_DEFINITIONS) + set(_compile_definitions_statement + "target_compile_definitions(InstalledLibraryCheck PRIVATE ${ARG_COMPILE_DEFINITIONS})\n" + ) + endif() + set(_prefix_path "${CMAKE_INSTALL_PREFIX}") + + set(_compiler_propagation) + foreach(_compiler IN ITEMS CMAKE_C_COMPILER CMAKE_CXX_COMPILER) + if(${_compiler}) + list(APPEND _compiler_propagation "-D${_compiler}=${${_compiler}}") + endif() + endforeach() + + set(_languages) + if(CMAKE_C_COMPILER) + string(APPEND _languages " C") + endif() + if(CMAKE_CXX_COMPILER) + string(APPEND _languages " CXX") + endif() + if(_languages) + string(PREPEND _languages " LANGUAGES") + endif() + + # prepare (generator) expressions + set(_installed_library_check_dir "${CMAKE_CURRENT_BINARY_DIR}/${_target}_ECMInstalledLibraryCheck") + set(_include_strings "$<TARGET_PROPERTY:${_target},ECM_INSTALLED_LIBRARY_INCLUDE_STRINGS>") + set(_include_strings_sorted "$<LIST:SORT,${_include_strings}>") + set(_include_strings_lines "$<JOIN:${_include_strings_sorted},\n >") + set(_exported_target_name "$<TARGET_PROPERTY:${_target},EXPORT_NAME>") + set(_library_target_name + "${_library_target_namespace}$<IF:$<BOOL:${_exported_target_name}>,${_exported_target_name},${_target}>" + ) + + set(_cmake_variables_check_statements + "$<TARGET_PROPERTY:${_target},ECM_INSTALLED_LIBRARY_CMAKE_VARIABLES_CHECK_CODE>" + ) + + set(_compile_definitions_check_statements + "$<TARGET_PROPERTY:${_target},ECM_INSTALLED_LIBRARY_COMPILE_DEFINITIONS_CHECK_CODE>" + ) + set(_source_file "ecm_installed_library_check_compile_definitions.cpp") + set(_compile_definitions_check_code + "$<IF:$<BOOL:${_compile_definitions_check_statements}>, +file(GENERATE OUTPUT ${_source_file} CONTENT \"${_compile_definitions_check_statements}\")\n +target_sources(InstalledLibraryCheck PRIVATE ${_source_file})\n,>" + ) + + set(_preprocessor_macro_check_statements + "$<TARGET_PROPERTY:${_target},ECM_INSTALLED_LIBRARY_PREPROCESSOR_MACRO_CHECK_CODE>" + ) + set(_preprocessor_macro_check_code + "$<IF:$<BOOL:${_preprocessor_macro_check_statements}>, +\"${_preprocessor_macro_check_statements}\",>" + ) + + file( + GENERATE OUTPUT "${_installed_library_check_dir}/CMakeLists.txt" + CONTENT + "# This file was generated by ecm_add_installed_library_check(). DO NOT EDIT! +cmake_minimum_required(VERSION 3.29) + +project(InstalledLibraryCheck${_languages}) + +find_package(${_package_name} ${_package_version} ${_package_version_exact} CONFIG REQUIRED NO_DEFAULT_PATH + PATHS \"${_prefix_path}\" +) +${_extra_find_packages_statements} +include(FeatureSummary) +feature_summary(WHAT ALL FATAL_ON_MISSING_REQUIRED_PACKAGES) +${_cmake_variables_check_statements} +add_library(InstalledLibraryCheck MODULE) +target_link_libraries(InstalledLibraryCheck + ${_library_target_name}${_extra_link_libraries_list} +) +${_compile_definitions_statement} +set(_include_strings + ${_include_strings_lines} +) +${_compile_definitions_check_code} +set(_preprocessor_macro_check_statements${_preprocessor_macro_check_code}) + +foreach(_include_string IN LISTS _include_strings) + string(REPLACE \"/\" \"__\" _escaped_include_string \${_include_string}) + set(_source_file \"\${CMAKE_CURRENT_BINARY_DIR}/\${_escaped_include_string}.cpp\") + file(GENERATE OUTPUT \${_source_file} CONTENT \"#include <\${_include_string}>\\n\${_preprocessor_macro_check_statements}\") + target_sources(InstalledLibraryCheck PRIVATE \${_source_file}) +endforeach() +" + ) + + set(_check_target_name ${_target}_installed_library_check) + add_custom_target( + ${_check_target_name} + COMMAND + ${CMAKE_COMMAND} + # TODO: other options to pass on? e.g. for cross-compilation, tool-chain file? + -G ${CMAKE_GENERATOR} ${_compiler_propagation} --fresh . + COMMAND + ${CMAKE_COMMAND} --build . + WORKING_DIRECTORY ${_installed_library_check_dir} + JOB_SERVER_AWARE + ) + + add_dependencies(all_installed_library_check ${_check_target_name}) +endfunction() + +function(ecm_installed_library_check_include_strings _target) + set(options) + set(oneValueArgs PREFIX) + set(multiValueArgs HEADERS) + + cmake_parse_arguments(ARG "${options}" "${oneValueArgs}" "${multiValueArgs}" ${ARGN}) + + # argument checks + if(ARG_UNPARSED_ARGUMENTS) + message( + FATAL_ERROR + "Unknown keywords given to ecm_installed_library_check_include_strings(): \"${ARG_UNPARSED_ARGUMENTS}\"" + ) + endif() + + # store data with library target + get_target_property(_names ${_target} ECM_INSTALLED_LIBRARY_INCLUDE_STRINGS) + if(_names STREQUAL "_names-NOTFOUND") + set(_names) + endif() + + if(ARG_PREFIX) + string(APPEND ARG_PREFIX "/") + endif() + foreach(_header IN LISTS ARG_HEADERS) + cmake_path(GET _header FILENAME _name) + list(APPEND _names "${ARG_PREFIX}${_name}") + endforeach() + + set_target_properties( + ${_target} + PROPERTIES + ECM_INSTALLED_LIBRARY_INCLUDE_STRINGS + "${_names}" + ) +endfunction() + +function(ecm_installed_library_check_cmake_variable _target) + set(options) + set(oneValueArgs NAME TYPE VALUE) + set(multiValueArgs) + + cmake_parse_arguments(ARG "${options}" "${oneValueArgs}" "${multiValueArgs}" ${ARGN}) + + # argument checks + if(ARG_UNPARSED_ARGUMENTS) + message( + FATAL_ERROR + "Unknown keywords given to ecm_installed_library_check_cmake_variable(): \"${ARG_UNPARSED_ARGUMENTS}\"" + ) + endif() + if(NOT DEFINED ARG_NAME) + message( + FATAL_ERROR + "Missing NAME argument to ecm_installed_library_check_cmake_variable(): \"${ARG_UNPARSED_ARGUMENTS}\"" + ) + endif() + if(ARG_TYPE) + set(_variable_types + "BOOL" + "STRING" + ) + if(NOT ${ARG_TYPE} IN_LIST _variable_types) + message(FATAL_ERROR "ecm_installed_library_check_cmake_variable called with unknown type: ${ARG_TYPE}") + endif() + else() + set(ARG_TYPE "STRING") + endif() + + # store code with library target + get_target_property(_code ${_target} ECM_INSTALLED_LIBRARY_CMAKE_VARIABLES_CHECK_CODE) + if(_code STREQUAL "_code-NOTFOUND") + set(_code "\nmessage(STATUS \"Checking CMake variables\")\n") + endif() + + if(${ARG_TYPE} STREQUAL "BOOL") + if(${ARG_VALUE}) + set(_value_condition_code "\${${ARG_NAME}}") + set(_value_error_report "is FALSE, expecting TRUE") + else() + set(_value_condition_code "NOT \${${ARG_NAME}}") + set(_value_error_report "is TRUE, expecting FALSE") + endif() + else() # STRING + set(_value_condition_code "\${${ARG_NAME}} STREQUAL \"${ARG_VALUE}\"") + set(_value_error_report "is '\${${ARG_NAME}}', expecting '${ARG_VALUE}'") + endif() + + set(_var_check_code + "if(NOT DEFINED ${ARG_NAME}) + message(SEND_ERROR \"${ARG_NAME}: not defined\") +else() + if (${_value_condition_code}) + message(STATUS \"${ARG_NAME}: passed\") + else() + message(SEND_ERROR \"${ARG_NAME}: ${_value_error_report}\") + endif() +endif() +" + ) + + string(APPEND _code "${_var_check_code}") + + set_target_properties( + ${_target} + PROPERTIES + ECM_INSTALLED_LIBRARY_CMAKE_VARIABLES_CHECK_CODE + "${_code}" + ) +endfunction() + +function( + _ecm_installed_library_check_get_check_code + _target + _var_name + _property_name + _subject_name + _silent +) + get_target_property(_check_code ${_target} ${_property_name}) + if(_check_code STREQUAL "_check_code-NOTFOUND") + if(_silent) + set(_check_code "") + else() + set(_check_code "#pragma message(\\\"Checking ${_subject_name}\\\")\n") + endif() + string( + APPEND _check_code + "#define _ECM_INSTALLED_LIBRARY_CHECK_VALUE_TO_STRING(x) #x +#define _ECM_INSTALLED_LIBRARY_CHECK_VALUE(x) _ECM_INSTALLED_LIBRARY_CHECK_VALUE_TO_STRING(x) +" + ) + endif() + set(${_var_name} ${_check_code} PARENT_SCOPE) +endfunction() + +function(_ecm_installed_library_check_macro_value_check_code _var_name _name _value _silent) + set(_check_code + "#if !defined(${_name}) + #error(\\\"${_name}: not defined\\\") +#else + #if ${_name} != ${_value} + #pragma message(\\\"${_name}: is '\\\" _ECM_INSTALLED_LIBRARY_CHECK_VALUE(${_name}) \\\"'\\\") + #error(\\\"${_name}: expecting '${_value}'\\\") +" + ) + if(NOT _silent) + string( + APPEND _check_code + " #else + #pragma message(\\\"${_name}: passed\\\") +" + ) + endif() + string( + APPEND _check_code + " #endif +#endif +" + ) + set(${_var_name} ${_check_code} PARENT_SCOPE) +endfunction() + +function(_ecm_installed_library_check_macro_defined_check_code _var_name _name _silent) + set(_check_code + "#if !defined(${_name}) + #error(\\\"${_name}: is undefined, expecting defined\\\") +" + ) + if(NOT _silent) + string( + APPEND _check_code + "#else + #pragma message(\\\"${_name}: passed\\\") +" + ) + endif() + string( + APPEND _check_code + "#endif +" + ) + + set(${_var_name} ${_check_code} PARENT_SCOPE) +endfunction() + +function(_ecm_installed_library_check_macro_undefined_check_code _var_name _name _silent) + set(_check_code + "#if defined(${_name}) + #error(\\\"${_name}: is defined, expecting undefined\\\") +" + ) + if(NOT _silent) + string( + APPEND _check_code + "#else + #pragma message(\\\"${_name}: passed\\\") +" + ) + endif() + string( + APPEND _check_code + "#endif +" + ) + set(${_var_name} ${_check_code} PARENT_SCOPE) +endfunction() + +function(ecm_installed_library_check_compile_definition _target) + set(options UNDEFINED) + set(oneValueArgs NAME VALUE) + set(multiValueArgs) + + cmake_parse_arguments(ARG "${options}" "${oneValueArgs}" "${multiValueArgs}" ${ARGN}) + + # argument checks + if(ARG_UNPARSED_ARGUMENTS) + message( + FATAL_ERROR + "Unknown keywords given to ecm_installed_library_check_compile_definition(): \"${ARG_UNPARSED_ARGUMENTS}\"" + ) + endif() + if(NOT DEFINED ARG_NAME) + message( + FATAL_ERROR + "Missing NAME argument to ecm_installed_library_check_compile_definition(): \"${ARG_UNPARSED_ARGUMENTS}\"" + ) + endif() + if(ARG_VALUE AND ARG_UNDEFINED) + message( + FATAL_ERROR + "ecm_installed_library_check_compile_definition cannot be called with both VALUE and UNDEFINED args." + ) + endif() + + # store code with library target + _ecm_installed_library_check_get_check_code(${_target} _code + ECM_INSTALLED_LIBRARY_COMPILE_DEFINITIONS_CHECK_CODE "compile definitions" FALSE + ) + + if(DEFINED ARG_VALUE) + _ecm_installed_library_check_macro_value_check_code(_var_check_code ${ARG_NAME} ${ARG_VALUE} FALSE) + elseif(ARG_UNDEFINED) + _ecm_installed_library_check_macro_undefined_check_code(_var_check_code ${ARG_NAME} FALSE) + else() + _ecm_installed_library_check_macro_defined_check_code(_var_check_code ${ARG_NAME} FALSE) + endif() + + string(APPEND _code "${_var_check_code}") + + set_target_properties( + ${_target} + PROPERTIES + ECM_INSTALLED_LIBRARY_COMPILE_DEFINITIONS_CHECK_CODE + "${_code}" + ) +endfunction() + +function(ecm_installed_library_check_preprocessor_macro _target) + set(options + UNDEFINED + SILENT + ) + set(oneValueArgs NAME VALUE) + set(multiValueArgs) + + cmake_parse_arguments(ARG "${options}" "${oneValueArgs}" "${multiValueArgs}" ${ARGN}) + + # argument checks + if(ARG_UNPARSED_ARGUMENTS) + message( + FATAL_ERROR + "Unknown keywords given to ecm_installed_library_check_preprocessor_macro(): \"${ARG_UNPARSED_ARGUMENTS}\"" + ) + endif() + if(NOT DEFINED ARG_NAME) + message( + FATAL_ERROR + "Missing NAME argument to ecm_installed_library_check_preprocessor_macro(): \"${ARG_UNPARSED_ARGUMENTS}\"" + ) + endif() + if(ARG_VALUE AND ARG_UNDEFINED) + message( + FATAL_ERROR + "ecm_installed_library_check_preprocessor_macro cannot be called with both VALUE and UNDEFINED args." + ) + endif() + + # store code with library target + _ecm_installed_library_check_get_check_code(${_target} _code + ECM_INSTALLED_LIBRARY_PREPROCESSOR_MACRO_CHECK_CODE "preprocessor macros" ${ARG_SILENT} + ) + + if(ARG_SILENT) + set(_silent TRUE) + else() + set(_silent FALSE) + endif() + + if(DEFINED ARG_VALUE) + _ecm_installed_library_check_macro_value_check_code(_var_check_code ${ARG_NAME} ${ARG_VALUE} ${_silent}) + elseif(ARG_UNDEFINED) + _ecm_installed_library_check_macro_undefined_check_code(_var_check_code ${ARG_NAME} ${_silent}) + else() + _ecm_installed_library_check_macro_defined_check_code(_var_check_code ${ARG_NAME} ${_silent}) + endif() + + string(APPEND _code "${_var_check_code}") + + set_target_properties( + ${_target} + PROPERTIES + ECM_INSTALLED_LIBRARY_PREPROCESSOR_MACRO_CHECK_CODE + "${_code}" + ) +endfunction() + +function(ecm_installed_library_check_version_preprocessor_macros _target) + set(options SILENT) + set(oneValueArgs + PREFIX + VERSION + ) + set(multiValueArgs) + + cmake_parse_arguments(ARG "${options}" "${oneValueArgs}" "${multiValueArgs}" ${ARGN}) + + # argument checks + if(ARG_UNPARSED_ARGUMENTS) + message( + FATAL_ERROR + "Unknown keywords given to ecm_installed_library_check_version_preprocessor_macros(): \"${ARG_UNPARSED_ARGUMENTS}\"" + ) + endif() + if(NOT DEFINED ARG_PREFIX) + message( + FATAL_ERROR + "Missing NAME argument to ecm_installed_library_check_version_preprocessor_macros(): \"${ARG_UNPARSED_ARGUMENTS}\"" + ) + endif() + + if(NOT DEFINED ARG_VERSION) + set(ARG_VERSION "${PROJECT_VERSION}") + endif() + if(ARG_SILENT) + set(_silent SILENT) + else() + set(_silent) + endif() + + string( + REGEX MATCH "^0*([0-9]+)\\.0*([0-9]+)\\.0*([0-9]+)$" + _ + ${ARG_VERSION} + ) + set(_version_major ${CMAKE_MATCH_1}) + set(_version_minor ${CMAKE_MATCH_2}) + set(_version_patch ${CMAKE_MATCH_3}) + + math( + EXPR + _hex_number + "${_version_major}*65536 + ${_version_minor}*256 + ${_version_patch}" + OUTPUT_FORMAT HEXADECIMAL + ) + + ecm_installed_library_check_preprocessor_macro(${_target} + NAME ${ARG_PREFIX}_VERSION + VALUE ${_hex_number} + ${_silent} + ) + ecm_installed_library_check_preprocessor_macro(${_target} + NAME ${ARG_PREFIX}_VERSION_MAJOR + VALUE ${_version_major} + ${_silent} + ) + ecm_installed_library_check_preprocessor_macro(${_target} + NAME ${ARG_PREFIX}_VERSION_MINOR + VALUE ${_version_minor} + ${_silent} + ) + ecm_installed_library_check_preprocessor_macro(${_target} + NAME ${ARG_PREFIX}_VERSION_PATCH + VALUE ${_version_patch} + ${_silent} + ) +endfunction() diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libkdepim-26.04.3/po/ca/libkdepim6.po new/libkdepim-26.08.0/po/ca/libkdepim6.po --- old/libkdepim-26.04.3/po/ca/libkdepim6.po 2026-06-06 06:19:31.000000000 +0200 +++ new/libkdepim-26.08.0/po/ca/libkdepim6.po 2026-08-03 05:41:12.000000000 +0200 @@ -1,5 +1,7 @@ # Translation of libkdepim6.po to Catalan # Copyright (C) 2003-2024 This_file_is_part_of_KDE +# This file is distributed under the license LGPL version 2.1 or +# version 3 or later versions approved by the membership of KDE e.V. # # SPDX-FileCopyrightText: 2003, 2013, 2014, 2015, 2016, 2017, 2019, 2020 Antoni Bella Pérez <[email protected]> # SPDX-FileCopyrightText: 2004, 2005 Albert Astals Cid <[email protected]> diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libkdepim-26.04.3/po/ca@valencia/libkdepim6.po new/libkdepim-26.08.0/po/ca@valencia/libkdepim6.po --- old/libkdepim-26.04.3/po/ca@valencia/libkdepim6.po 2026-06-06 06:19:31.000000000 +0200 +++ new/libkdepim-26.08.0/po/ca@valencia/libkdepim6.po 2026-08-03 05:41:12.000000000 +0200 @@ -1,5 +1,7 @@ # Translation of libkdepim6.po to Catalan (Valencian) # Copyright (C) 2003-2024 This_file_is_part_of_KDE +# This file is distributed under the license LGPL version 2.1 or +# version 3 or later versions approved by the membership of KDE e.V. # # SPDX-FileCopyrightText: 2003, 2013, 2014, 2015, 2016, 2017, 2019, 2020 Antoni Bella Pérez <[email protected]> # SPDX-FileCopyrightText: 2004, 2005 Albert Astals Cid <[email protected]> diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libkdepim-26.04.3/po/de/libkdepim6.po new/libkdepim-26.08.0/po/de/libkdepim6.po --- old/libkdepim-26.04.3/po/de/libkdepim6.po 2026-06-06 06:19:31.000000000 +0200 +++ new/libkdepim-26.08.0/po/de/libkdepim6.po 2026-08-03 05:41:12.000000000 +0200 @@ -1,15 +1,15 @@ -# SPDX-FileCopyrightText: 2024 Johannes Obermayr <[email protected]> # SPDX-FileCopyrightText: 2003 Stephan Johach <[email protected]> # SPDX-FileCopyrightText: 2003, 2005 Gregor Zumstein <[email protected]> -# SPDX-FileCopyrightText: 2004, 2005, 2006 Stephan Johach <[email protected]> -# SPDX-FileCopyrightText: 2004, 2005 Stefan Winter <[email protected]> # SPDX-FileCopyrightText: 2004 Matthias Kalle Dalheimer <[email protected]> -# SPDX-FileCopyrightText: 2005, 2006, 2007, 2008, 2009, 2010 Thomas Reitelbach <[email protected]> -# SPDX-FileCopyrightText: 2008, 2009, 2011, 2012, 2013, 2014, 2015, 2017, 2019 Burkhard Lück <[email protected]> -# SPDX-FileCopyrightText: 2009, 2010, 2012 Frederik Schwarzer <[email protected]> +# SPDX-FileCopyrightText: 2004-2005 Stefan Winter <[email protected]> +# SPDX-FileCopyrightText: 2004-2006 Stephan Johach <[email protected]> +# SPDX-FileCopyrightText: 2005-2010 Thomas Reitelbach <[email protected]> +# SPDX-FileCopyrightText: 2008-2009, 2011-2015, 2017, 2019 Burkhard Lück <[email protected]> # SPDX-FileCopyrightText: 2009 Markus Slopianka <[email protected]> +# SPDX-FileCopyrightText: 2009-2010, 2012 Frederik Schwarzer <[email protected]> # SPDX-FileCopyrightText: 2010 Panagiotis Papadopoulos <[email protected]> # SPDX-FileCopyrightText: 2011 Torbjörn Klatt <[email protected]> +# SPDX-FileCopyrightText: 2024 Johannes Obermayr <[email protected]> msgid "" msgstr "" "Project-Id-Version: libkdepim6\n" diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libkdepim-26.04.3/po/nn/libkdepim6.po new/libkdepim-26.08.0/po/nn/libkdepim6.po --- old/libkdepim-26.04.3/po/nn/libkdepim6.po 2026-06-06 06:19:31.000000000 +0200 +++ new/libkdepim-26.08.0/po/nn/libkdepim6.po 2026-08-03 05:41:12.000000000 +0200 @@ -2,6 +2,7 @@ # # Gaute Hvoslef Kvalnes <[email protected]>, 2002, 2004, 2005. # Håvard Korsvoll <[email protected]>, 2003, 2004. +# Karl Ove Hufthammer <[email protected]>, 2007, 2008, 2010, 2020, 2024. # Eirik U. Birkeland <[email protected]>, 2008, 2009. msgid "" msgstr "" diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libkdepim-26.04.3/po/ug/libkdepim6.po new/libkdepim-26.08.0/po/ug/libkdepim6.po --- old/libkdepim-26.04.3/po/ug/libkdepim6.po 2026-06-06 06:19:31.000000000 +0200 +++ new/libkdepim-26.08.0/po/ug/libkdepim6.po 2026-08-03 05:41:12.000000000 +0200 @@ -8,14 +8,15 @@ "Project-Id-Version: libkdepim\n" "Report-Msgid-Bugs-To: https://bugs.kde.org\n" "POT-Creation-Date: 2026-01-16 00:44+0000\n" -"PO-Revision-Date: 2013-09-08 07:05+0900\n" -"Last-Translator: Gheyret Kenji <[email protected]>\n" +"PO-Revision-Date: 2026-05-31 20:15-0400\n" +"Last-Translator: Abduqadir Abliz <[email protected]>\n" "Language-Team: Uyghur Computer Science Association <[email protected]>\n" "Language: ug\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=1; plural=0;\n" +"X-Generator: Poedit 3.9\n" #: multiplyingline/multiplyinglineview_p.cpp:63 #, kde-format @@ -27,20 +28,18 @@ #, kde-format msgctxt "Percent value; %p is the value, % is the percent sign" msgid "%p%" -msgstr "" +msgstr "%p%" #: progresswidget/progressdialog.cpp:236 -#, fuzzy, kde-format -#| msgid "Cancel this operation." +#, kde-format msgctxt "@info:tooltip" msgid "Cancel this operation." msgstr "بۇ مەشغۇلاتنى ئەمەلدىن قالدۇرىدۇ." #: progresswidget/progressmanager.cpp:111 -#, fuzzy, kde-format -#| msgid "Aborting..." +#, kde-format msgid "Aborting…" -msgstr "توختىتىلىۋاتىدۇ..." +msgstr "" #: progresswidget/ssllabel.cpp:40 #, kde-format @@ -55,22 +54,19 @@ msgstr "" #: progresswidget/statusbarprogresswidget.cpp:67 -#, fuzzy, kde-format -#| msgid "Open detailed progress dialog" +#, kde-format msgctxt "@info:tooltip" msgid "Open detailed progress dialog" msgstr "تەپسىلىي جەريان كۆزنىكىنى ئاچىدۇ" #: progresswidget/statusbarprogresswidget.cpp:269 -#, fuzzy, kde-format -#| msgid "Show detailed progress window" +#, kde-format msgctxt "@info:tooltip" msgid "Show detailed progress window" msgstr "تەپسىلىي جەريان كۆزنىكىنى كۆرسەت" #: progresswidget/statusbarprogresswidget.cpp:272 -#, fuzzy, kde-format -#| msgid "Hide detailed progress window" +#, kde-format msgctxt "@info:tooltip" msgid "Hide detailed progress window" msgstr "تەپسىلىي جەريان كۆزنىكىنى يوشۇر" @@ -90,7 +86,6 @@ #~ msgid "Choose..." #~ msgstr "تاللا…" -#, fuzzy #~| msgid "Preferences" #~ msgctxt "@title:window" #~ msgid "Preferences" @@ -109,87 +104,71 @@ #~ msgid "Reset to Defaults" #~ msgstr "كۆڭۈلدىكىگە قايتۇر" -#, fuzzy #~| msgid "&Add" #~ msgid "Add" #~ msgstr "قوش(&A)" -#, fuzzy #~| msgid "&Remove" #~ msgid "Remove" #~ msgstr "چىقىرىۋەت(&R)" -#, fuzzy #~| msgid "Configure Completion Order..." #~ msgid "Configure Completion..." #~ msgstr "تولۇقلاش تەرتىپىنى سەپلەش" -#, fuzzy #~| msgctxt "@title:window" #~| msgid "Select Address Book" #~ msgid "Recent Addresses" #~ msgstr "ئادرېس دەپتىرى تاللاش" -#, fuzzy #~| msgid "LDAP Servers" #~ msgid "LDAP server: %1" #~ msgstr "LDAP مۇلازىمېتىرلىرى" -#, fuzzy #~| msgid "Search for:" #~ msgid "Search email:" #~ msgstr "ئىزدە:" -#, fuzzy #~| msgctxt "@action:button Start searching" #~| msgid "&Search" #~ msgid "Search" #~ msgstr "ئىزدە(&S)" -#, fuzzy #~| msgid "Postal Address" #~ msgid "Show Blacklisted Emails" #~ msgstr "پوچتا ئادرېسى" -#, fuzzy #~| msgid "Select All" #~ msgid "&Select" #~ msgstr "ھەممىنى تاللا" -#, fuzzy #~| msgid "Unselect All" #~ msgid "&Unselect" #~ msgstr "ھەممىنى تاللىما" -#, fuzzy #~| msgctxt "@action:button Start searching" #~| msgid "&Search" #~ msgid "Search in result..." #~ msgstr "ئىزدە(&S)" -#, fuzzy #~| msgid "Configure Completion Order..." #~ msgctxt "@title:window" #~ msgid "Configure Completion" #~ msgstr "تولۇقلاش تەرتىپىنى سەپلەش" -#, fuzzy #~| msgid "Configure Completion Order..." #~ msgid "Completion Order" #~ msgstr "تولۇقلاش تەرتىپىنى سەپلەش" -#, fuzzy #~| msgctxt "@title:window" #~| msgid "Select Address Book" #~ msgid "Recent Address" #~ msgstr "ئادرېس دەپتىرى تاللاش" -#, fuzzy #~| msgid "Postal Address" #~ msgid "Blacklist Email Address" #~ msgstr "پوچتا ئادرېسى" -#, fuzzy #~| msgid "Configure Completion Order..." #~ msgctxt "@title:window" #~ msgid "Edit Completion Order" @@ -215,7 +194,6 @@ #~ msgid "No Date" #~ msgstr "چېسلا يوق" -#, fuzzy #~| msgctxt "@title:window" #~| msgid "Select Address Book" #~ msgctxt "@title:window" @@ -236,7 +214,6 @@ #~ msgid "Your emails" #~ msgstr "[email protected], [email protected]" -#, fuzzy #~| msgid "Add Host" #~ msgctxt "@title:window" #~ msgid "Add Host" @@ -248,7 +225,6 @@ #~ msgid "Tobias Koenig" #~ msgstr "Tobias Koenig" -#, fuzzy #~| msgid "Add Host" #~ msgctxt "@title:window" #~ msgid "Edit Host" @@ -357,7 +333,6 @@ #~ msgid "Contains" #~ msgstr "ئۆز ئىچىگە ئالغان" -#, fuzzy #~| msgctxt "@action:button Start searching" #~| msgid "&Search" #~ msgid "Searching..." @@ -375,7 +350,6 @@ #~ msgid "&Remove" #~ msgstr "چىقىرىۋەت(&R)" -#, fuzzy #~| msgid "Description" #~ msgctxt "@info:tooltip period duration" #~ msgid "Duration:" diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libkdepim-26.04.3/src/CMakeLists.txt new/libkdepim-26.08.0/src/CMakeLists.txt --- old/libkdepim-26.04.3/src/CMakeLists.txt 2026-06-06 06:19:31.000000000 +0200 +++ new/libkdepim-26.08.0/src/CMakeLists.txt 2026-08-03 05:41:12.000000000 +0200 @@ -72,8 +72,10 @@ target_link_libraries( KPim6Libkdepim - PRIVATE + PUBLIC + Qt::Widgets KF6::Completion + PRIVATE KF6::I18n KF6::WidgetsAddons ) @@ -127,7 +129,6 @@ install( FILES - ${libkdepim_CamelcaseCamelCase_HEADERS} ${libkdepim_Camelcasewidgets_HEADERS} ${libkdepim_Camelcaseprogresswidget_HEADERS} ${libkdepim_Camelcasemultiline_HEADERS} @@ -138,7 +139,6 @@ install( FILES ${CMAKE_CURRENT_BINARY_DIR}/kdepim_export.h - ${libkdepim_CamelCase_HEADERS} ${libkdepim_progresswidget_HEADERS} ${libkdepim_widgets_HEADERS} ${libkdepim_multiline_HEADERS} @@ -167,3 +167,25 @@ COMPONENT Devel ) ecm_generate_qdoc(KPim6Libkdepim libkdepim.qdocconf) + +ecm_add_installed_library_check(KPim6Libkdepim + PACKAGE_NAME "KPim6Libkdepim" + PACKAGE_VERSION ${LIBKDEPIM_VERSION} + PACKAGE_TARGET_NAMESPACE "KPim6::" +) + +ecm_installed_library_check_include_strings(KPim6Libkdepim + HEADERS + ${libkdepim_progresswidget_HEADERS} + ${libkdepim_widgets_HEADERS} + ${libkdepim_multiline_HEADERS} + PREFIX libkdepim +) + +ecm_installed_library_check_include_strings(KPim6Libkdepim + HEADERS + ${libkdepim_Camelcasewidgets_HEADERS} + ${libkdepim_Camelcaseprogresswidget_HEADERS} + ${libkdepim_Camelcasemultiline_HEADERS} + PREFIX Libkdepim +) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libkdepim-26.04.3/src/multiplyingline/multiplyinglineview_p.cpp new/libkdepim-26.08.0/src/multiplyingline/multiplyinglineview_p.cpp --- old/libkdepim-26.04.3/src/multiplyingline/multiplyinglineview_p.cpp 2026-06-06 06:19:31.000000000 +0200 +++ new/libkdepim-26.08.0/src/multiplyingline/multiplyinglineview_p.cpp 2026-08-03 05:41:12.000000000 +0200 @@ -40,7 +40,7 @@ MultiplyingLine *MultiplyingLineView::activeLine() const { - return mLines.last(); + return mLines.isEmpty() ? nullptr : mLines.last(); } MultiplyingLine *MultiplyingLineView::emptyLine() const @@ -57,8 +57,8 @@ { const int maximumRecipients = mMultiplyingLineFactory->maximumRecipients(); if (maximumRecipients != -1) { - int numberOfLine = mLines.count(); - if (numberOfLine++ >= maximumRecipients) { + const int numberOfLine = mLines.count(); + if (numberOfLine >= maximumRecipients) { if (showDialogBox) { KMessageBox::error(this, i18n("We can not add more recipients. We have reached maximum recipients")); } @@ -269,8 +269,9 @@ QListIterator<MultiplyingLine *> it(mLines); MultiplyingLine *line = nullptr; while (it.hasNext()) { - line = it.next(); - if (line->data() == data) { + MultiplyingLine *candidate = it.next(); + if (candidate->data() == data) { + line = candidate; break; } } diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libkdepim-26.04.3/src/progresswidget/progressdialog.cpp new/libkdepim-26.08.0/src/progresswidget/progressdialog.cpp --- old/libkdepim-26.04.3/src/progresswidget/progressdialog.cpp 2026-06-06 06:19:31.000000000 +0200 +++ new/libkdepim-26.08.0/src/progresswidget/progressdialog.cpp 2026-08-03 05:41:12.000000000 +0200 @@ -8,7 +8,6 @@ */ #include "progressdialog.h" -using namespace Qt::Literals::StringLiterals; #include "ssllabel.h" @@ -27,6 +26,7 @@ #include <QVBoxLayout> #include <chrono> +using namespace Qt::Literals::StringLiterals; using namespace std::chrono_literals; using namespace KPIM; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libkdepim-26.04.3/src/progresswidget/progressstatusbarwidget.cpp new/libkdepim-26.08.0/src/progresswidget/progressstatusbarwidget.cpp --- old/libkdepim-26.04.3/src/progresswidget/progressstatusbarwidget.cpp 2026-06-06 06:19:31.000000000 +0200 +++ new/libkdepim-26.08.0/src/progresswidget/progressstatusbarwidget.cpp 2026-08-03 05:41:12.000000000 +0200 @@ -4,11 +4,11 @@ SPDX-License-Identifier: LGPL-2.0-or-later */ #include "progressstatusbarwidget.h" -using namespace Qt::Literals::StringLiterals; #include "progressdialog.h" #include "statusbarprogresswidget.h" +using namespace Qt::Literals::StringLiterals; using namespace KPIM; class KPIM::ProgressStatusBarWidgetPrivate { diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libkdepim-26.04.3/src/progresswidget/ssllabel.cpp new/libkdepim-26.08.0/src/progresswidget/ssllabel.cpp --- old/libkdepim-26.04.3/src/progresswidget/ssllabel.cpp 2026-06-06 06:19:31.000000000 +0200 +++ new/libkdepim-26.08.0/src/progresswidget/ssllabel.cpp 2026-08-03 05:41:12.000000000 +0200 @@ -8,13 +8,13 @@ */ #include "ssllabel.h" -using namespace Qt::Literals::StringLiterals; #include <KLocalizedString> #include <QIcon> #include <QStyle> +using namespace Qt::Literals::StringLiterals; using namespace KPIM; SSLLabel::SSLLabel(QWidget *parent) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libkdepim-26.04.3/src/progresswidget/statusbarprogresswidget.cpp new/libkdepim-26.08.0/src/progresswidget/statusbarprogresswidget.cpp --- old/libkdepim-26.04.3/src/progresswidget/statusbarprogresswidget.cpp 2026-06-06 06:19:31.000000000 +0200 +++ new/libkdepim-26.08.0/src/progresswidget/statusbarprogresswidget.cpp 2026-08-03 05:41:12.000000000 +0200 @@ -12,7 +12,6 @@ */ #include "statusbarprogresswidget.h" -using namespace Qt::Literals::StringLiterals; #include "progressdialog.h" #include "ssllabel.h" @@ -33,6 +32,7 @@ #include <QTimer> #include <chrono> +using namespace Qt::Literals::StringLiterals; using namespace std::chrono_literals; using namespace KPIM; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libkdepim-26.04.3/src/widgets/kcheckcombobox.cpp new/libkdepim-26.08.0/src/widgets/kcheckcombobox.cpp --- old/libkdepim-26.04.3/src/widgets/kcheckcombobox.cpp 2026-06-06 06:19:31.000000000 +0200 +++ new/libkdepim-26.08.0/src/widgets/kcheckcombobox.cpp 2026-08-03 05:41:12.000000000 +0200 @@ -8,7 +8,6 @@ */ #include "kcheckcombobox.h" -using namespace Qt::Literals::StringLiterals; #include "libkdepim_debug.h" @@ -17,6 +16,7 @@ #include <QLineEdit> #include <QStandardItemModel> +using namespace Qt::Literals::StringLiterals; using namespace KPIM; /// Class KCheckComboBox::KCheckComboBoxPrivate @@ -56,7 +56,9 @@ if (model) { for (int r = start; r <= end; ++r) { QStandardItem *item = model->item(r, 0); - item->setCheckable(true); + if (item) { + item->setCheckable(true); + } } } else { qCWarning(LIBKDEPIM_LOG) << "KCheckComboBox: model is not a QStandardItemModel but a" << q->model() << ". Cannot proceed."; @@ -227,7 +229,7 @@ bool KCheckComboBox::itemEnabled(int index) { - Q_ASSERT(index >= 0 && index <= count()); + Q_ASSERT(index >= 0 && index < count()); auto itemModel = qobject_cast<QStandardItemModel *>(model()); Q_ASSERT(itemModel); @@ -238,7 +240,7 @@ void KCheckComboBox::setItemEnabled(int index, bool enabled) { - Q_ASSERT(index >= 0 && index <= count()); + Q_ASSERT(index >= 0 && index < count()); auto itemModel = qobject_cast<QStandardItemModel *>(model()); Q_ASSERT(itemModel); diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libkdepim-26.04.3/src/widgets/kwidgetlister.cpp new/libkdepim-26.08.0/src/widgets/kwidgetlister.cpp --- old/libkdepim-26.04.3/src/widgets/kwidgetlister.cpp 2026-06-06 06:19:31.000000000 +0200 +++ new/libkdepim-26.08.0/src/widgets/kwidgetlister.cpp 2026-08-03 05:41:12.000000000 +0200 @@ -9,7 +9,6 @@ */ #include "kwidgetlister.h" -using namespace Qt::Literals::StringLiterals; #include <KGuiItem> #include <KLocalizedString> @@ -21,6 +20,7 @@ #include <KStandardGuiItem> #include <cassert> +using namespace Qt::Literals::StringLiterals; using namespace KPIM; class Q_DECL_HIDDEN KWidgetLister::KWidgetListerPrivate
