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 - [email protected]
+
+- 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 <[email protected]>
@@ -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} 
"$<$<CXX_COMPILER_ID:Intel>:-fexceptions>")
     endif()
     target_compile_options(${target} ${mode}
-        
"$<$<OR:$<CXX_COMPILER_ID:GNU>,$<CXX_COMPILER_ID:Clang>>:-fexceptions>")
+        
"$<$<OR:$<CXX_COMPILER_ID:GNU>,$<CXX_COMPILER_ID:Clang>,$<CXX_COMPILER_ID:AppleClang>>:-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(<org.kde.pluginname> 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 <[email protected]>
+#
+# 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 ``<install_destination>/fr/LC_MESSAGES``.
 # ``<install_destination>`` 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()


Reply via email to