Hello community,
here is the log from the commit of package extra-cmake-modules for openSUSE:Factory checked in at 2017-06-01 16:17:15
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/extra-cmake-modules (Old)
and /work/SRC/openSUSE:Factory/.extra-cmake-modules.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "extra-cmake-modules"
Thu Jun 1 16:17:15 2017 rev:41 rq:495015 version:5.34.0
Changes:
--------
--- /work/SRC/openSUSE:Factory/extra-cmake-modules/extra-cmake-modules.changes 2017-04-30 21:17:35.662026824 +0200
+++ /work/SRC/openSUSE:Factory/.extra-cmake-modules.new/extra-cmake-modules.changes 2017-06-01 16:18:39.286243663 +0200
@@ -1,0 +2,36 @@
+Mon May 15 13:53:14 CEST 2017 - fabian@ritter-vogt.de
+
+- Update to 5.34.0
+ * New feature release
+ * For more details please see:
+ * https://www.kde.org/announcements/kde-frameworks-5.34.0.php
+- Changes since 5.33.0:
+ * Fix test when compiling from a tarball
+ * Sanitizers: Don't use GCC-like flags for e.g. MSVC
+ * adapt to fetchpo changes and use vars for target directories to dry code
+ * fix documentation, ecm_install_po_files_as_qm generates .qm, not .mo
+ * use correct variable for fetch-translations injection
+ * KDEPackageAppTemplates: improve API dox notation of function signature
+ * KDEPackageAppTemplates: mark %{dest} as deprecated
+ * KDEPackageAppTemplates: fix note for %{PROJECTDIRNAME}
+ * KDEPackageAppTemplates: remove note of placeholder %{src}, never supported
+ * Fix minor CMake warning (CMP0054)
+ * KDECompilerSettings: Pass -Wvla & -Wdate-time
+ * Don't include tests together with modules
+ * Allow test to work with older versions of qmlplugindump
+ * Don't enable the test by default
+ * Support older qmlplugindump versions
+ * Introduce ecm_generate_qmltypes
+ * Add a test for _repository_name() a function added for fetch-translations
+ * Fix compilation under AppleClang (kde#377933)
+ * Allow projects to include the file twice
+ * Move the repository name recognition into a function
+ * Fix rx that matches project names out of the git uri
+ * Introduce fetch-translations build command
+ * Use -Wno-gnu-zero-variadic-macro-arguments more
+ * FindPyModGen: Also search for an unversioned clang++
+- Remove patches, now upstream:
+ * 0001-FindPyModGen-Also-search-for-an-unversioned-clang.patch
+ * 0002-Import-Find-Clang-LLVM-from-KDevelop-for-Python-bind.patch
+
+-------------------------------------------------------------------
Old:
----
0001-FindPyModGen-Also-search-for-an-unversioned-clang.patch
0002-Import-Find-Clang-LLVM-from-KDevelop-for-Python-bind.patch
extra-cmake-modules-5.33.0.tar.xz
New:
----
extra-cmake-modules-5.34.0.tar.xz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ extra-cmake-modules.spec ++++++
--- /var/tmp/diff_new_pack.md6zIB/_old 2017-06-01 16:18:40.782032736 +0200
+++ /var/tmp/diff_new_pack.md6zIB/_new 2017-06-01 16:18:40.786032172 +0200
@@ -16,19 +16,15 @@
#
-%define _tar_path 5.33
+%define _tar_path 5.34
Name: extra-cmake-modules
Summary: CMake modules
License: BSD-3-Clause
Group: Development/Tools/Other
Url: https://projects.kde.org/projects/kdesupport/extra-cmake-modules
-Version: 5.33.0
+Version: 5.34.0
Release: 0
Source: http://download.kde.org/stable/frameworks/%{_tar_path}/%{name}-%{version}.tar.xz
-# PATCH-FIX-UPSTREAM: Search for unversioned clang
-Patch0: 0001-FindPyModGen-Also-search-for-an-unversioned-clang.patch
-# PATCH-FIX-UPSTREAM: Import FindClangLLVM from KDevelop
-Patch1: 0002-Import-Find-Clang-LLVM-from-KDevelop-for-Python-bind.patch
BuildRoot: %{_tmppath}/%{name}-%{version}-build
BuildRequires: cmake >= 3.0
BuildRequires: gcc-c++
@@ -62,8 +58,6 @@
%prep
%setup -q
-%patch0 -p1
-%patch1 -p1
%build
%cmake_kf5 -d build
++++++ extra-cmake-modules-5.33.0.tar.xz -> extra-cmake-modules-5.34.0.tar.xz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/extra-cmake-modules-5.33.0/CMakeLists.txt new/extra-cmake-modules-5.34.0/CMakeLists.txt
--- old/extra-cmake-modules-5.33.0/CMakeLists.txt 2017-03-19 09:53:58.000000000 +0100
+++ new/extra-cmake-modules-5.34.0/CMakeLists.txt 2017-05-07 20:18:13.000000000 +0200
@@ -32,7 +32,7 @@
# Preliminary setup
#
-set(VERSION "5.33.0") # handled by release scripts
+set(VERSION "5.34.0") # handled by release scripts
if (POLICY CMP0048)
cmake_policy(SET CMP0048 NEW)
@@ -114,6 +114,9 @@
file(GLOB installModuleFiles ${CMAKE_SOURCE_DIR}/modules/*[^~])
install(FILES ${installModuleFiles} DESTINATION ${MODULES_INSTALL_DIR})
+file(GLOB installTestModuleFiles ${CMAKE_SOURCE_DIR}/test-modules/*[^~])
+install(FILES ${installTestModuleFiles} DESTINATION ${SHARE_INSTALL_DIR}/ECM/test-modules)
+
file(GLOB installKdeModuleFiles ${CMAKE_SOURCE_DIR}/kde-modules/*[^~])
install(FILES ${installKdeModuleFiles} DESTINATION ${KDE_MODULES_INSTALL_DIR})
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/extra-cmake-modules-5.33.0/find-modules/FindPythonModuleGeneration.cmake new/extra-cmake-modules-5.34.0/find-modules/FindPythonModuleGeneration.cmake
--- old/extra-cmake-modules-5.33.0/find-modules/FindPythonModuleGeneration.cmake 2017-03-19 09:53:58.000000000 +0100
+++ new/extra-cmake-modules-5.34.0/find-modules/FindPythonModuleGeneration.cmake 2017-05-07 20:18:13.000000000 +0200
@@ -251,7 +251,7 @@
set(GPB_MODULE_DIR ${CMAKE_CURRENT_LIST_DIR})
function(_compute_implicit_include_dirs)
- find_program(_GBP_CLANG_CXX_DRIVER_PATH clang++-${_GPB_CLANG_SUFFIX})
+ find_program(_GBP_CLANG_CXX_DRIVER_PATH NAMES clang++-${_GPB_CLANG_SUFFIX} clang++)
if (NOT _GBP_CLANG_CXX_DRIVER_PATH)
message(FATAL_ERROR "Failed to find clang driver corresponding to ${libclang_LIBRARY}")
endif()
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/extra-cmake-modules-5.33.0/kde-modules/KDECMakeSettings.cmake new/extra-cmake-modules-5.34.0/kde-modules/KDECMakeSettings.cmake
--- old/extra-cmake-modules-5.33.0/kde-modules/KDECMakeSettings.cmake 2017-03-19 09:53:58.000000000 +0100
+++ new/extra-cmake-modules-5.34.0/kde-modules/KDECMakeSettings.cmake 2017-05-07 20:18:13.000000000 +0200
@@ -71,6 +71,19 @@
# - Uninstall target functionality since 1.7.0.
# - ``APPLE_FORCE_X11`` option since 5.14.0 (detecting X11 was previously the default behavior)
# - ``APPLE_SUPPRESS_X11_WARNING`` option since 5.14.0
+#
+# Translations
+# ~~~~~~~~~~~~
+# A fetch-translations target will be set up that will download translations
+# for projects using l10n.kde.org.
+#
+# ``KDE_L10N_BRANCH`` will be responsible for choosing which l10n branch to use
+# for the translations.
+#
+# ``KDE_L10N_AUTO_TRANSLATIONS`` (OFF by default) will indicate whether translations
+# should be downloaded when building the project.
+#
+# Since 5.34.0
#=============================================================================
# Copyright 2014 Alex Merry
@@ -269,3 +282,63 @@
endif()
###################################################################
+# Download translations
+
+function(_repository_name reponame dir)
+ execute_process(COMMAND git config --get remote.origin.url
+ OUTPUT_VARIABLE giturl
+ RESULT_VARIABLE exitCode
+ WORKING_DIRECTORY "${dir}")
+
+ if(exitCode EQUAL 0)
+ string(REGEX MATCHALL ".+[:\\/]([-A-Za-z\\d]+)(.git)?\\s*" "" ${giturl})
+ set(${reponame} ${CMAKE_MATCH_1})
+ endif()
+
+ if(NOT ${reponame})
+ set(${reponame} ${CMAKE_PROJECT_NAME})
+ endif()
+ set(${reponame} ${${reponame}} PARENT_SCOPE)
+endfunction()
+
+if(NOT EXISTS ${CMAKE_SOURCE_DIR}/po AND NOT TARGET fetch-translations)
+ option(KDE_L10N_AUTO_TRANSLATIONS "Automatically 'make fetch-translations`" OFF)
+ set(KDE_L10N_BRANCH "trunk" CACHE STRING "Branch from l10n.kde.org to fetch from: trunk | stable | lts | trunk_kde4 | stable_kde4")
+
+ if(KDE_L10N_AUTO_TRANSLATIONS)
+ set(_EXTRA_ARGS "ALL")
+ else()
+ set(_EXTRA_ARGS)
+ endif()
+
+ set(_reponame "")
+ _repository_name(_reponame "${CMAKE_SOURCE_DIR}")
+
+ add_custom_command(
+ OUTPUT "${CMAKE_BINARY_DIR}/releaseme"
+ COMMAND git clone --depth 1 "https://anongit.kde.org/releaseme.git"
+ COMMENT "Fetching releaseme scripts to download translations..."
+ )
+
+ set(_l10n_po_dir "${CMAKE_BINARY_DIR}/po")
+ set(_l10n_poqm_dir "${CMAKE_BINARY_DIR}/poqm")
+
+ if(CMAKE_VERSION VERSION_GREATER 3.2)
+ set(extra BYPRODUCTS ${_l10n_po_dir} ${_l10n_poqm_dir})
+ endif()
+
+ add_custom_target(fetch-translations ${_EXTRA_ARGS}
+ COMMENT "Downloading translations for ${_reponame} branch ${KDE_L10N_BRANCH}..."
+ COMMAND git -C "${CMAKE_BINARY_DIR}/releaseme" pull
+ COMMAND cmake -E remove_directory ${_l10n_po_dir}
+ COMMAND cmake -E remove_directory ${_l10n_poqm_dir}
+ COMMAND ruby "${CMAKE_BINARY_DIR}/releaseme/fetchpo.rb"
+ --origin ${KDE_L10N_BRANCH}
+ --project "${_reponame}"
+ --output-dir "${_l10n_po_dir}"
+ --output-poqm-dir "${_l10n_poqm_dir}"
+ "${CMAKE_CURRENT_SOURCE_DIR}"
+ ${extra}
+ DEPENDS "${CMAKE_BINARY_DIR}/releaseme"
+ )
+endif()
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/extra-cmake-modules-5.33.0/kde-modules/KDECompilerSettings.cmake new/extra-cmake-modules-5.34.0/kde-modules/KDECompilerSettings.cmake
--- old/extra-cmake-modules-5.33.0/kde-modules/KDECompilerSettings.cmake 2017-03-19 09:53:58.000000000 +0100
+++ new/extra-cmake-modules-5.34.0/kde-modules/KDECompilerSettings.cmake 2017-05-07 20:18:13.000000000 +0200
@@ -314,7 +314,7 @@
target_compile_options(${target} ${mode} "$<$:-fexceptions>")
endif()
target_compile_options(${target} ${mode}
- "$<$,$>:-fexceptions>")
+ "$<$,$,$>:-fexceptions>")
endfunction()
function(KDE_ENABLE_EXCEPTIONS)
@@ -353,6 +353,12 @@
endif()
set(_KDE_GCC_COMMON_WARNING_FLAGS "-Wall -Wextra -Wcast-align -Wchar-subscripts -Wformat-security -Wno-long-long -Wpointer-arith -Wundef")
+if(CMAKE_CXX_COMPILER_ID MATCHES "Clang")
+ # -Wgnu-zero-variadic-macro-arguments (part of -pedantic) is triggered by every qCDebug() call and therefore results
+ # in a lot of noise. This warning is only notifying us that clang is emulating the GCC behaviour
+ # instead of the exact standard wording so we can safely ignore it
+ set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wno-gnu-zero-variadic-macro-arguments")
+endif()
if(CMAKE_C_COMPILER_ID STREQUAL "GNU" OR CMAKE_C_COMPILER_ID MATCHES "Clang")
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${_KDE_GCC_COMMON_WARNING_FLAGS} -Wmissing-format-attribute -Wwrite-strings")
# Make some warnings errors
@@ -363,6 +369,16 @@
# Make some warnings errors
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Werror=return-type")
endif()
+if (CMAKE_CXX_COMPILER_ID STREQUAL "GNU" OR
+ (CMAKE_CXX_COMPILER_ID MATCHES "Clang" AND NOT CMAKE_CXX_COMPILER_VERSION VERSION_LESS 3.5))
+ # -Wvla: use of variable-length arrays (an extension to C++)
+ set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wvla")
+endif()
+if ((CMAKE_CXX_COMPILER_ID STREQUAL "GNU" AND NOT CMAKE_CXX_COMPILER_VERSION VERSION_LESS 5.0) OR
+ (CMAKE_CXX_COMPILER_ID MATCHES "Clang" AND NOT CMAKE_CXX_COMPILER_VERSION VERSION_LESS 3.5))
+ # -Wdate-time: warn if we use __DATE__ or __TIME__ (we want to be able to reproduce the exact same binary)
+ set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wdate-time")
+endif()
# -w1 turns on warnings and errors
# FIXME: someone needs to have a closer look at the Intel compiler options
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/extra-cmake-modules-5.33.0/kde-modules/KDEFrameworkCompilerSettings.cmake new/extra-cmake-modules-5.34.0/kde-modules/KDEFrameworkCompilerSettings.cmake
--- old/extra-cmake-modules-5.33.0/kde-modules/KDEFrameworkCompilerSettings.cmake 2017-03-19 09:53:58.000000000 +0100
+++ new/extra-cmake-modules-5.34.0/kde-modules/KDEFrameworkCompilerSettings.cmake 2017-05-07 20:18:13.000000000 +0200
@@ -61,14 +61,12 @@
add_definitions(-DQT_STRICT_ITERATORS)
endif()
-if (CMAKE_CXX_COMPILER_ID STREQUAL "GNU")
+if (CMAKE_CXX_COMPILER_ID STREQUAL "GNU" OR CMAKE_CXX_COMPILER_ID MATCHES "Clang")
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -pedantic")
+endif()
+
+if (CMAKE_CXX_COMPILER_ID STREQUAL "GNU")
if (NOT CMAKE_CXX_COMPILER_VERSION VERSION_LESS "5.0.0")
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wsuggest-override" )
endif()
-elseif (CMAKE_CXX_COMPILER_ID MATCHES "Clang")
- # -Wgnu-zero-variadic-macro-arguments is triggered by every qCDebug() call and therefore results
- # in a lot of noise. This warning is only notifying us that clang is emulating the GCC behaviour
- # instead of the exact standard wording so we can safely ignore it
- set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -pedantic -Wno-gnu-zero-variadic-macro-arguments")
endif()
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/extra-cmake-modules-5.33.0/kde-modules/KDEPackageAppTemplates.cmake new/extra-cmake-modules-5.34.0/kde-modules/KDEPackageAppTemplates.cmake
--- old/extra-cmake-modules-5.33.0/kde-modules/KDEPackageAppTemplates.cmake 2017-03-19 09:53:58.000000000 +0100
+++ new/extra-cmake-modules-5.34.0/kde-modules/KDEPackageAppTemplates.cmake 2017-05-07 20:18:13.000000000 +0200
@@ -11,7 +11,10 @@
#
# This module provides the following function:
#
-# kde_package_app_templates( TEMPLATES template1 [template2] [...] INSTALL_DIR directory)
+# ::
+#
+# kde_package_app_templates(TEMPLATES <template> [<template> [...]]
+# INSTALL_DIR <directory>)
#
# INSTALL_DIR is the directory to install the template package to.
# In most cases you will want to use the variable KDE_INSTALL_KTEMPLATESDIR
@@ -26,7 +29,7 @@
# the text files replaced by the following placeholders when needed:
#
# ``%{PROJECTDIRNAME}``
-# %{APPNAMELC}-%{VERSION} for KAppTemplate
+# name of generated project base folder ex: %{APPNAMELC} for KAppTemplate
# ``%{APPNAME}``
# project name as entered by user ex: MyKApp
# ``%{APPNAMELC}``
@@ -46,10 +49,11 @@
# ``%{VERSION}``
# project version ex: 0.1
#
+# Deprecated:
+#
# ``%{dest}``
-# used in .kdevtemplate
-# ``%{src}``
-# used in .kdevtemplate
+# path of generated project base folder, used in .kdevtemplate with the ShowFilesAfterGeneration entry
+# KDevelop >= 5.1.1 supports relative paths with that entry, making this placeholder obsolete
#
# Multiple templates can be passed at once.
#
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/extra-cmake-modules-5.33.0/modules/ECMEnableSanitizers.cmake new/extra-cmake-modules-5.34.0/modules/ECMEnableSanitizers.cmake
--- old/extra-cmake-modules-5.33.0/modules/ECMEnableSanitizers.cmake 2017-03-19 09:53:58.000000000 +0100
+++ new/extra-cmake-modules-5.34.0/modules/ECMEnableSanitizers.cmake 2017-05-07 20:18:13.000000000 +0200
@@ -145,22 +145,29 @@
endif ()
endmacro ()
-# for each element of the ECM_ENABLE_SANITIZERS list
-foreach ( CUR_SANITIZER ${ECM_ENABLE_SANITIZERS} )
- # lowercase filter
- string(TOLOWER ${CUR_SANITIZER} CUR_SANITIZER)
- # check option and enable appropriate flags
- enable_sanitizer_flags ( ${CUR_SANITIZER} )
- # TODO: GCC will not link pthread library if enabled ASan
- if(CMAKE_C_COMPILER_ID MATCHES "Clang")
- set( CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${XSAN_COMPILE_FLAGS}" )
+if (ECM_ENABLE_SANITIZERS)
+ if (CMAKE_CXX_COMPILER_ID MATCHES "GNU" OR CMAKE_CXX_COMPILER_ID MATCHES "Clang")
+ # for each element of the ECM_ENABLE_SANITIZERS list
+ foreach ( CUR_SANITIZER ${ECM_ENABLE_SANITIZERS} )
+ # lowercase filter
+ string(TOLOWER ${CUR_SANITIZER} CUR_SANITIZER)
+ # check option and enable appropriate flags
+ enable_sanitizer_flags ( ${CUR_SANITIZER} )
+ # TODO: GCC will not link pthread library if enabled ASan
+ if(CMAKE_C_COMPILER_ID MATCHES "Clang")
+ set( CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${XSAN_COMPILE_FLAGS}" )
+ endif()
+ set( CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${XSAN_COMPILE_FLAGS}" )
+ if(CMAKE_CXX_COMPILER_ID MATCHES "GNU")
+ link_libraries(${XSAN_LINKER_FLAGS})
+ endif()
+ if (CMAKE_CXX_COMPILER_ID STREQUAL "Clang")
+ string(REPLACE "-Wl,--no-undefined" "" CMAKE_SHARED_LINKER_FLAGS "${CMAKE_SHARED_LINKER_FLAGS}")
+ string(REPLACE "-Wl,--no-undefined" "" CMAKE_MODULE_LINKER_FLAGS "${CMAKE_MODULE_LINKER_FLAGS}")
+ endif ()
+ endforeach()
+ else()
+ message(STATUS "Tried to enable sanitizers (-DECM_ENABLE_SANITIZERS=${ECM_ENABLE_SANITIZERS}), \
+but compiler (${CMAKE_CXX_COMPILER_ID}) does not have sanitizer support")
endif()
- set( CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${XSAN_COMPILE_FLAGS}" )
- if(CMAKE_CXX_COMPILER_ID MATCHES "GNU")
- link_libraries(${XSAN_LINKER_FLAGS})
- endif()
- if ("${CMAKE_CXX_COMPILER_ID}" STREQUAL "Clang")
- string(REPLACE "-Wl,--no-undefined" "" CMAKE_SHARED_LINKER_FLAGS "${CMAKE_SHARED_LINKER_FLAGS}")
- string(REPLACE "-Wl,--no-undefined" "" CMAKE_MODULE_LINKER_FLAGS "${CMAKE_MODULE_LINKER_FLAGS}")
- endif ()
-endforeach ()
+endif()
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/extra-cmake-modules-5.33.0/modules/ECMGenerateQmlTypes.cmake new/extra-cmake-modules-5.34.0/modules/ECMGenerateQmlTypes.cmake
--- old/extra-cmake-modules-5.33.0/modules/ECMGenerateQmlTypes.cmake 1970-01-01 01:00:00.000000000 +0100
+++ new/extra-cmake-modules-5.34.0/modules/ECMGenerateQmlTypes.cmake 2017-05-07 20:18:13.000000000 +0200
@@ -0,0 +1,82 @@
+#.rst:
+# ECMGenerateQmlTypes
+# -----------
+#
+# Generates plugins.qmltypes files for QML plugins.
+#
+# ::
+#
+# ecm_generate_qmltypes( 1.3
+# DESTINATION <${KDE_INSTALL_QMLDIR}/org/kde/pluginname>)
+#
+# Makes it possible to generate plugins.qmltypes files for the QML plugins that
+# our project offers. These files offer introspection upon our plugin and are
+# useful for integrating with IDE language support of our plugin. It offers
+# information about the objects its methods and their argument types.
+#
+# The developer will be in charge of making sure that these files are up to date.
+# The plugin.qmltypes file will sit in the source directory. This function will
+# include the code that installs the file in the right place and a small unit
+# test named qmltypes-pluginname-version that makes sure that it doesn't need updating.
+#
+#
+# Since 5.33.0
+
+#=============================================================================
+# Copyright 2017 Aleix Pol Gonzalez
+#
+# Redistribution and use in source and binary forms, with or without
+# modification, are permitted provided that the following conditions
+# are met:
+#
+# 1. Redistributions of source code must retain the copyright
+# notice, this list of conditions and the following disclaimer.
+# 2. Redistributions in binary form must reproduce the copyright
+# notice, this list of conditions and the following disclaimer in the
+# documentation and/or other materials provided with the distribution.
+# 3. The name of the author may not be used to endorse or promote products
+# derived from this software without specific prior written permission.
+#
+# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
+# IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
+# OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
+# IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
+# INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
+# NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
+# THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+include(CMakeParseArguments)
+function(ecm_generate_qmltypes)
+ if (NOT TARGET qmltypes)
+ add_custom_target(qmltypes)
+ endif ()
+
+ set(options)
+ set(oneValueArgs DESTINATION TEST_ENABLED)
+ cmake_parse_arguments(ARG "${options}" "${oneValueArgs}" "" ${ARGN})
+
+ set(targetname "qmltypes-${ARG_UNPARSED_ARGUMENTS}")
+ string(REPLACE ";" - targetname "${targetname}")
+
+ set(generatedFile ${CMAKE_CURRENT_SOURCE_DIR}/plugins.qmltypes)
+ add_custom_target(${targetname}
+ BYPRODUCTS ${generatedFile}
+ COMMAND qmlplugindump -nonrelocatable ${ARG_UNPARSED_ARGUMENTS} ${KDE_INSTALL_QMLDIR} > ${generatedFile}
+ )
+ add_dependencies(qmltypes ${targetname})
+ if (EXISTS ${generatedFile})
+ install(FILES ${generatedFile} DESTINATION "${ARG_DESTINATION}")
+ endif()
+
+ string(REPLACE ";" / processedArgs "${ARG_UNPARSED_ARGUMENTS}")
+
+ # sometimes qmlplugindump output isn't reproducible, we better have it opt in for now
+ if(ARG_TEST_ENABLED)
+ add_test(NAME ${targetname} COMMAND
+ cmake -DARG_UNPARSED_ARGUMENTS=${processedArgs} -DKDE_INSTALL_QMLDIR=${KDE_INSTALL_QMLDIR} -DINPUT=${generatedFile} -P ${ECM_MODULE_DIR}/../test-modules/test_execute_and_compare.cmake
+ )
+ endif()
+endfunction()
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/extra-cmake-modules-5.33.0/modules/ECMPoQmTools.cmake new/extra-cmake-modules-5.34.0/modules/ECMPoQmTools.cmake
--- old/extra-cmake-modules-5.33.0/modules/ECMPoQmTools.cmake 2017-03-19 09:53:58.000000000 +0100
+++ new/extra-cmake-modules-5.34.0/modules/ECMPoQmTools.cmake 2017-05-07 20:18:13.000000000 +0200
@@ -60,7 +60,7 @@
# fr/
# mylib.po
#
-# ``ecm_install_po_files_as_qm(po)`` compiles ``mylib.po`` into ``mylib.mo`` and
+# ``ecm_install_po_files_as_qm(po)`` compiles ``mylib.po`` into ``mylib.qm`` and
# installs it in ``/fr/LC_MESSAGES``.
# ```` defaults to ``${LOCALE_INSTALL_DIR}`` if defined,
# otherwise it uses ``${CMAKE_INSTALL_LOCALEDIR}`` if that is defined, otherwise
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/extra-cmake-modules-5.33.0/test-modules/test_execute_and_compare.cmake new/extra-cmake-modules-5.34.0/test-modules/test_execute_and_compare.cmake
--- old/extra-cmake-modules-5.33.0/test-modules/test_execute_and_compare.cmake 1970-01-01 01:00:00.000000000 +0100
+++ new/extra-cmake-modules-5.34.0/test-modules/test_execute_and_compare.cmake 2017-05-07 20:18:13.000000000 +0200
@@ -0,0 +1,11 @@
+string(REPLACE / ";" processedArgs "${ARG_UNPARSED_ARGUMENTS}")
+
+execute_process(COMMAND qmlplugindump -nonrelocatable ${processedArgs} ${KDE_INSTALL_QMLDIR} > ${CMAKE_CURRENT_SOURCE_DIR}/plugins.qmltypes RESULT_VARIABLE code)
+if(code)
+ message(FATAL_ERROR "Could not call qmlplugindump successfully. Exited with code ${code}")
+endif()
+
+execute_process(COMMAND diff -I "//*" ${INPUT} ${CMAKE_CURRENT_SOURCE_DIR}/plugins.qmltypes RESULT_VARIABLE code OUTPUT_VARIABLE out)
+if(code)
+ message(FATAL_ERROR "both plugin dumps differ:\n${out}")
+endif()
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/extra-cmake-modules-5.33.0/tests/CMakeLists.txt new/extra-cmake-modules-5.34.0/tests/CMakeLists.txt
--- old/extra-cmake-modules-5.33.0/tests/CMakeLists.txt 2017-03-19 09:53:58.000000000 +0100
+++ new/extra-cmake-modules-5.34.0/tests/CMakeLists.txt 2017-05-07 20:18:13.000000000 +0200
@@ -112,6 +112,7 @@
add_test_macro(ExecuteCoreModules dummy)
add_test_macro(ExecuteKDEModules dummy)
+add_test_macro(KDEFetchTranslations dummy)
add_test_macro(KDEInstallDirsTest.relative_or_absolute dummy)
add_test_variant(KDEInstallDirsTest.vars_in_sync_no_args
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/extra-cmake-modules-5.33.0/tests/KDEFetchTranslations/CMakeLists.txt new/extra-cmake-modules-5.34.0/tests/KDEFetchTranslations/CMakeLists.txt
--- old/extra-cmake-modules-5.33.0/tests/KDEFetchTranslations/CMakeLists.txt 1970-01-01 01:00:00.000000000 +0100
+++ new/extra-cmake-modules-5.34.0/tests/KDEFetchTranslations/CMakeLists.txt 2017-05-07 20:18:13.000000000 +0200
@@ -0,0 +1,27 @@
+project(extra-cmake-modules)
+cmake_minimum_required(VERSION 2.8.12)
+
+# order is important (install dirs before cmake settings)!
+set(all_kde_modules
+ KDEInstallDirs
+ KDECMakeSettings
+)
+
+set(ECM_KDE_MODULE_DIR ${CMAKE_CURRENT_SOURCE_DIR}/../../kde-modules)
+set(ECM_MODULE_DIR ${CMAKE_CURRENT_SOURCE_DIR}/../../modules)
+set(CMAKE_MODULE_PATH "${ECM_KDE_MODULE_DIR}" "${ECM_MODULE_DIR}")
+
+foreach(module ${all_kde_modules})
+ message(STATUS "module: ${module}")
+ include("${module}")
+endforeach()
+
+_repository_name(name "${CMAKE_CURRENT_SOURCE_DIR}/../../")
+if (NOT ${name} STREQUAL "extra-cmake-modules")
+ message(FATAL_ERROR "Wrong repository name: ${name}, should be 'extra-cmake-modules'")
+endif()
+add_executable(dummy ../ExecuteKDEModules/main.c)
+
+if(NOT TARGET fetch-translations)
+ message(FATAL_ERROR "should have a fetch-translations target")
+endif()