Hello community,

here is the log from the commit of package extra-cmake-modules for 
openSUSE:Factory checked in at 2015-09-24 07:09:23
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/extra-cmake-modules (Old)
 and      /work/SRC/openSUSE:Factory/.extra-cmake-modules.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "extra-cmake-modules"

Changes:
--------
--- /work/SRC/openSUSE:Factory/extra-cmake-modules/extra-cmake-modules.changes  
2015-09-02 07:43:17.000000000 +0200
+++ 
/work/SRC/openSUSE:Factory/.extra-cmake-modules.new/extra-cmake-modules.changes 
    2015-09-24 07:09:24.000000000 +0200
@@ -1,0 +2,14 @@
+Tue Sep  8 17:12:28 UTC 2015 - [email protected]
+
+- Update to 5.14.0
+  * Add macro to generate logging category declarations for Qt5.
+  * ecm_generate_headers: Add COMMON_HEADER option and multiple
+    header functionality
+  * Add -pedantic for KF5 code (when using gcc or clang)
+  * KDEFrameworkCompilerSettings: only enable strict iterators
+    in debug mode
+  * Also set the default visibility for C code to hidden.
+  * For more details please see:
+    https://www.kde.org/announcements/kde-frameworks-5.14.0.php
+
+-------------------------------------------------------------------

Old:
----
  extra-cmake-modules-5.13.0.tar.xz

New:
----
  extra-cmake-modules-5.14.0.tar.xz

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ extra-cmake-modules.spec ++++++
--- /var/tmp/diff_new_pack.jKil6T/_old  2015-09-24 07:09:25.000000000 +0200
+++ /var/tmp/diff_new_pack.jKil6T/_new  2015-09-24 07:09:25.000000000 +0200
@@ -16,13 +16,13 @@
 #
 
 
-%define _tar_path 5.13
+%define _tar_path 5.14
 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.13.0
+Version:        5.14.0
 Release:        0
 Source:         
http://download.kde.org/stable/frameworks/%{_tar_path}/%{name}-%{version}.tar.xz
 BuildRoot:      %{_tmppath}/%{name}-%{version}-build

++++++ extra-cmake-modules-5.13.0.tar.xz -> extra-cmake-modules-5.14.0.tar.xz 
++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/extra-cmake-modules-5.13.0/CMakeLists.txt 
new/extra-cmake-modules-5.14.0/CMakeLists.txt
--- old/extra-cmake-modules-5.13.0/CMakeLists.txt       2015-07-10 
12:07:44.000000000 +0200
+++ new/extra-cmake-modules-5.14.0/CMakeLists.txt       2015-08-25 
11:38:37.000000000 +0200
@@ -3,7 +3,7 @@
 project(extra-cmake-modules NONE)
 
 set(ECM_MAJOR_VERSION 5)
-set(ECM_MINOR_VERSION 13)
+set(ECM_MINOR_VERSION 14)
 set(ECM_PATCH_VERSION 0)
 
 set(ECM_VERSION ${ECM_MAJOR_VERSION}.${ECM_MINOR_VERSION}.${ECM_PATCH_VERSION})
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/extra-cmake-modules-5.13.0/docs/module/ECMQtDeclareLoggingCategory.rst 
new/extra-cmake-modules-5.14.0/docs/module/ECMQtDeclareLoggingCategory.rst
--- old/extra-cmake-modules-5.13.0/docs/module/ECMQtDeclareLoggingCategory.rst  
1970-01-01 01:00:00.000000000 +0100
+++ new/extra-cmake-modules-5.14.0/docs/module/ECMQtDeclareLoggingCategory.rst  
2015-08-25 11:38:37.000000000 +0200
@@ -0,0 +1 @@
+.. ecm-module:: ../../modules/ECMQtDeclareLoggingCategory.cmake
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/extra-cmake-modules-5.13.0/kde-modules/KDECompilerSettings.cmake 
new/extra-cmake-modules-5.14.0/kde-modules/KDECompilerSettings.cmake
--- old/extra-cmake-modules-5.13.0/kde-modules/KDECompilerSettings.cmake        
2015-07-10 12:07:44.000000000 +0200
+++ new/extra-cmake-modules-5.14.0/kde-modules/KDECompilerSettings.cmake        
2015-08-25 11:38:37.000000000 +0200
@@ -196,6 +196,7 @@
 endif()
 
 # Default to hidden visibility for symbols
+set(CMAKE_C_VISIBILITY_PRESET hidden)
 set(CMAKE_CXX_VISIBILITY_PRESET hidden)
 set(CMAKE_VISIBILITY_INLINES_HIDDEN 1)
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/extra-cmake-modules-5.13.0/kde-modules/KDEFrameworkCompilerSettings.cmake 
new/extra-cmake-modules-5.14.0/kde-modules/KDEFrameworkCompilerSettings.cmake
--- 
old/extra-cmake-modules-5.13.0/kde-modules/KDEFrameworkCompilerSettings.cmake   
    2015-07-10 12:07:44.000000000 +0200
+++ 
new/extra-cmake-modules-5.14.0/kde-modules/KDEFrameworkCompilerSettings.cmake   
    2015-08-25 11:38:37.000000000 +0200
@@ -40,11 +40,11 @@
                 -DQT_USE_FAST_OPERATOR_PLUS
                 -DQT_USE_QSTRINGBUILDER
                )
-if(NOT MSVC)
-    # QT_STRICT_ITERATORS breaks MSVC: it tries to link to QTypedArrayData 
symbols
-    # when using foreach. However these symbols don't actually exist.
-    # Not having QT_STRICT_ITERATORS defined fixes this issue.
-    # This is fixed by https://codereview.qt-project.org/#change,76311
-    # TODO: set QT_STRICT_ITERATORS on all platforms once we depend on Qt 5.3
-    add_definitions(-DQT_STRICT_ITERATORS)
+
+if (CMAKE_BUILD_TYPE STREQUAL "Debug")
+  add_definitions(-DQT_STRICT_ITERATORS)
+endif()
+
+if ("${CMAKE_CXX_COMPILER_ID}" STREQUAL "GNU" OR "${CMAKE_CXX_COMPILER_ID}" 
STREQUAL "Clang")
+   set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -pedantic")
 endif()
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/extra-cmake-modules-5.13.0/modules/ECMGenerateHeaders.cmake 
new/extra-cmake-modules-5.14.0/modules/ECMGenerateHeaders.cmake
--- old/extra-cmake-modules-5.13.0/modules/ECMGenerateHeaders.cmake     
2015-07-10 12:07:44.000000000 +0200
+++ new/extra-cmake-modules-5.14.0/modules/ECMGenerateHeaders.cmake     
2015-08-25 11:38:37.000000000 +0200
@@ -12,12 +12,16 @@
 #       [OUTPUT_DIR <output_dir>]
 #       [PREFIX <prefix>]
 #       [REQUIRED_HEADERS <variable>]
+#       [COMMON_HEADER <HeaderName>]
 #       [RELATIVE <relative_path>])
 #
 # For each CamelCase header name passed to HEADER_NAMES, a file of that name
 # will be generated that will include a version with ``.h`` appended.
 # For example, the generated header ``ClassA`` will include ``classa.h`` (or
 # ``ClassA.h``, see ORIGINAL).
+# If a CamelCaseName consists of multiple comma-separated files, e.g.
+# ``ClassA,ClassB,ClassC``, then multiple camelcase header files will be
+# generated which are redirects to the first header file.
 # The file locations of these generated headers will be stored in
 # <camelcase_forwarding_headers_var>.
 #
@@ -43,6 +47,9 @@
 # CMakeLists.txt file; the original variant will then be added to this
 # variable.
 #
+# COMMON_HEADER generates an additional convenience header which includes all
+# other header files.
+#
 # The RELATIVE argument indicates where the original headers can be found
 # relative to CMAKE_CURRENT_SOURCE_DIR.  It does not affect the generated
 # CamelCase forwarding files, but ecm_generate_headers() uses it when checking
@@ -69,6 +76,7 @@
 #           MLBar
 #           # etc
 #       REQUIRED_HEADERS MyLib_HEADERS
+#       COMMON_HEADER MLGeneral
 #   )
 #   install(FILES ${MyLib_FORWARDING_HEADERS} ${MyLib_HEADERS}
 #           DESTINATION ${CMAKE_INSTALL_PREFIX}/include
@@ -82,7 +90,9 @@
 #       MyLib_FORWARDING_HEADERS
 #       HEADERS
 #           Foo
-#           Bar
+#           # several classes are contained in bar.h, so generate
+#           # additional files
+#           Bar,BarList
 #           # etc
 #       PREFIX MyLib
 #       REQUIRED_HEADERS MyLib_HEADERS
@@ -99,6 +109,7 @@
 #=============================================================================
 # Copyright 2013 Aleix Pol Gonzalez <[email protected]>
 # Copyright 2014 Alex Merry <[email protected]>
+# Copyright 2015 Patrick Spendrin <[email protected]>
 #
 # Distributed under the OSI-approved BSD License (the "License");
 # see accompanying file COPYING-CMAKE-SCRIPTS for details.
@@ -114,7 +125,7 @@
 
 function(ECM_GENERATE_HEADERS camelcase_forwarding_headers_var)
     set(options)
-    set(oneValueArgs ORIGINAL OUTPUT_DIR PREFIX REQUIRED_HEADERS RELATIVE)
+    set(oneValueArgs ORIGINAL OUTPUT_DIR PREFIX REQUIRED_HEADERS COMMON_HEADER 
RELATIVE)
     set(multiValueArgs HEADER_NAMES)
     cmake_parse_arguments(EGH "${options}" "${oneValueArgs}" 
"${multiValueArgs}" ${ARGN})
 
@@ -154,35 +165,57 @@
         endif()
     endif()
 
-    foreach(_CLASSNAME ${EGH_HEADER_NAMES})
+    foreach(_classnameentry ${EGH_HEADER_NAMES})
+        string(REPLACE "," ";" _classnames ${_classnameentry})
+        list(GET _classnames 0 _baseclass)
+
         if (EGH_ORIGINAL STREQUAL "CAMELCASE")
-            set(originalclassname "${_CLASSNAME}")
+            set(originalbasename "${_baseclass}")
         else()
-            string(TOLOWER "${_CLASSNAME}" originalclassname)
+            string(TOLOWER "${_baseclass}" originalbasename)
         endif()
-        set(FANCY_HEADER_FILE "${EGH_OUTPUT_DIR}/${EGH_PREFIX}${_CLASSNAME}")
-        set(_actualheader 
"${CMAKE_CURRENT_SOURCE_DIR}/${EGH_RELATIVE}${originalclassname}.h")
+
+        set(_actualheader 
"${CMAKE_CURRENT_SOURCE_DIR}/${EGH_RELATIVE}${originalbasename}.h")
         if (NOT EXISTS ${_actualheader})
             message(FATAL_ERROR "Could not find \"${_actualheader}\"")
         endif()
-        if (NOT EXISTS ${FANCY_HEADER_FILE})
-            file(WRITE ${FANCY_HEADER_FILE} "#include 
\"${originalprefix}${originalclassname}.h\"\n")
-        endif()
-        list(APPEND ${camelcase_forwarding_headers_var} "${FANCY_HEADER_FILE}")
-        if (EGH_REQUIRED_HEADERS)
-            list(APPEND ${EGH_REQUIRED_HEADERS} "${_actualheader}")
-        endif()
-        if (EGH_PREFIX)
-            # Local forwarding header, for namespaced headers, e.g. 
kparts/part.h
-            set(REGULAR_HEADER_NAME 
${EGH_OUTPUT_DIR}/${originalprefix}${originalclassname}.h)
-            if (NOT EXISTS ${REGULAR_HEADER_NAME})
-                file(WRITE ${REGULAR_HEADER_NAME} "#include 
\"${_actualheader}\"\n")
+
+        foreach(_CLASSNAME ${_classnames})
+            set(FANCY_HEADER_FILE 
"${EGH_OUTPUT_DIR}/${EGH_PREFIX}${_CLASSNAME}")
+            if (NOT EXISTS ${FANCY_HEADER_FILE})
+                file(WRITE ${FANCY_HEADER_FILE} "#include 
\"${originalprefix}${originalbasename}.h\"\n")
             endif()
-        endif()
+            list(APPEND ${camelcase_forwarding_headers_var} 
"${FANCY_HEADER_FILE}")
+            if (EGH_PREFIX)
+                # Local forwarding header, for namespaced headers, e.g. 
kparts/part.h
+                if(EGH_ORIGINAL STREQUAL "CAMELCASE")
+                    set(originalclassname "${_CLASSNAME}")
+                else()
+                    string(TOLOWER "${_CLASSNAME}" originalclassname)
+                endif()
+                set(REGULAR_HEADER_NAME 
${EGH_OUTPUT_DIR}/${originalprefix}${originalclassname}.h)
+                if (NOT EXISTS ${REGULAR_HEADER_NAME})
+                    file(WRITE ${REGULAR_HEADER_NAME} "#include 
\"${_actualheader}\"\n")
+                endif()
+            endif()
+        endforeach()
+
+        list(APPEND _REQUIRED_HEADERS "${_actualheader}")
     endforeach()
 
+    if(EGH_COMMON_HEADER)
+        #combine required headers into 1 big convenience header
+        set(COMMON_HEADER ${EGH_OUTPUT_DIR}/${EGH_PREFIX}${EGH_COMMON_HEADER})
+        file(WRITE ${COMMON_HEADER} "// convenience header\n")
+        foreach(_header ${_REQUIRED_HEADERS})
+            get_filename_component(_base ${_header} NAME)
+            file(APPEND ${COMMON_HEADER} "#include \"${_base}\"\n")
+        endforeach()
+        list(APPEND ${camelcase_forwarding_headers_var} "${COMMON_HEADER}")
+    endif()
+
     set(${camelcase_forwarding_headers_var} 
${${camelcase_forwarding_headers_var}} PARENT_SCOPE)
     if (NOT EGH_REQUIRED_HEADERS STREQUAL "")
-        set(${EGH_REQUIRED_HEADERS} ${${EGH_REQUIRED_HEADERS}} PARENT_SCOPE)
+        set(${EGH_REQUIRED_HEADERS} ${${EGH_REQUIRED_HEADERS}} 
${_REQUIRED_HEADERS} PARENT_SCOPE)
     endif ()
 endfunction()
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/extra-cmake-modules-5.13.0/modules/ECMQtDeclareLoggingCategory.cmake 
new/extra-cmake-modules-5.14.0/modules/ECMQtDeclareLoggingCategory.cmake
--- old/extra-cmake-modules-5.13.0/modules/ECMQtDeclareLoggingCategory.cmake    
1970-01-01 01:00:00.000000000 +0100
+++ new/extra-cmake-modules-5.14.0/modules/ECMQtDeclareLoggingCategory.cmake    
2015-08-25 11:38:37.000000000 +0200
@@ -0,0 +1,118 @@
+#.rst:
+# ECMQtDeclareLoggingCategory
+# ---------------------------
+#
+# Generate declarations for logging categories in Qt5.
+#
+# ::
+#
+#   ecm_qt_declare_logging_category(<sources_var>
+#                                   HEADER <filename>
+#                                   IDENTIFIER <identifier>
+#                                   CATEGORY_NAME <category_name>
+#                                   [DEFAULT_SEVERITY
+#                                        <Debug|Info|Warning|
+#                                         Critical|Fatal>])
+#
+# A header file, ``<filename>``, will be generated along with a corresponding
+# source file, which will be added to ``<sources_var>``. These will provide a
+# QLoggingCategory category that can be referred to from C++ code using
+# ``<identifier>``, and from the logging configuration using
+# ``<category_name>``.
+#
+# If ``<filename>`` is not absolute, it will be taken relative to the current
+# binary directory.
+#
+# If the code is compiled against Qt 5.4 or later, by default it will only log
+# output that is at least the severity specified by ``DEFAULT_SEVERITY``, or
+# "Warning" level if ``DEFAULT_SEVERITY`` is not given. Note that, due to a
+# bug in Qt 5.5, "Info" may be treated as more severe than "Fatal".
+#
+# ``<identifier>`` may include namespaces (eg: ``foo::bar::IDENT``).
+#
+# Since 5.14.0.
+
+#=============================================================================
+# Copyright 2015 Alex Merry <[email protected]>
+#
+# Distributed under the OSI-approved BSD License (the "License");
+# see accompanying file COPYING-CMAKE-SCRIPTS for details.
+#
+# This software is distributed WITHOUT ANY WARRANTY; without even the
+# implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+# See the License for more information.
+#=============================================================================
+# (To distribute this file outside of extra-cmake-modules, substitute the full
+#  License text for the above reference.)
+
+include(CMakeParseArguments)
+
+set(_ECM_QT_DECLARE_LOGGING_CATEGORY_TEMPLATE_CPP 
"${CMAKE_CURRENT_LIST_DIR}/ECMQtDeclareLoggingCategory.cpp.in")
+set(_ECM_QT_DECLARE_LOGGING_CATEGORY_TEMPLATE_H   
"${CMAKE_CURRENT_LIST_DIR}/ECMQtDeclareLoggingCategory.h.in")
+
+function(ecm_qt_declare_logging_category sources_var)
+    set(options)
+    set(oneValueArgs HEADER IDENTIFIER CATEGORY_NAME DEFAULT_SEVERITY)
+    set(multiValueArgs)
+    cmake_parse_arguments(ARG "${options}" "${oneValueArgs}" 
"${multiValueArgs}" ${ARGN})
+
+    if(ARG_UNPARSED_ARGUMENTS)
+        message(FATAL_ERROR "Unexpected arguments to 
ecm_qt_declare_logging_category: ${ARG_UNPARSED_ARGUMENTS}")
+    endif()
+    if(NOT ARG_HEADER)
+        message(FATAL_ERROR "Missing HEADER argument for 
ecm_qt_declare_logging_category")
+    endif()
+    if(NOT ARG_IDENTIFIER)
+        message(FATAL_ERROR "Missing IDENTIFIER argument for 
ecm_qt_declare_logging_category")
+    endif()
+    if(NOT ARG_CATEGORY_NAME)
+        message(FATAL_ERROR "Missing CATEGORY_NAME argument for 
ecm_qt_declare_logging_category")
+    endif()
+    if(NOT ARG_DEFAULT_SEVERITY)
+        set(ARG_DEFAULT_SEVERITY Warning)
+    else()
+        set(acceptible_severities Debug Info Warning Critical Fatal)
+        list(FIND acceptible_severities "${ARG_DEFAULT_SEVERITY}" pos)
+        if (pos EQUAL -1)
+            message(FATAL_ERROR "Unknown DEFAULT_SEVERITY ${pos}")
+        endif()
+    endif()
+
+    if (NOT IS_ABSOLUTE "${ARG_HEADER}")
+        set(ARG_HEADER "${CMAKE_CURRENT_BINARY_DIR}/${ARG_HEADER}")
+    endif()
+
+    string(REPLACE "::" ";" namespaces "${ARG_IDENTIFIER}")
+    list(LENGTH namespaces len)
+    math(EXPR last_pos "${len} - 1")
+    list(GET namespaces ${last_pos} IDENTIFIER)
+    list(REMOVE_AT namespaces ${last_pos})
+
+    set(OPEN_NAMESPACES)
+    set(CLOSE_NAMESPACES)
+    foreach(ns ${namespaces})
+        set(OPEN_NAMESPACES "${OPEN_NAMESPACES} namespace ${ns} {")
+        set(CLOSE_NAMESPACES "} ${CLOSE_NAMESPACES}")
+    endforeach()
+
+    string(FIND "${ARG_HEADER}" "." pos REVERSE)
+    if (pos EQUAL -1)
+        set(cpp_filename "${ARG_HEADER}.cpp")
+    else()
+        string(SUBSTRING "${ARG_HEADER}" 0 ${pos} cpp_filename)
+        set(cpp_filename "${cpp_filename}.cpp")
+    endif()
+
+    get_filename_component(HEADER_NAME "${ARG_HEADER}" NAME)
+
+    string(REPLACE "::" "_" GUARD_NAME "${ARG_IDENTIFIER}_H")
+    string(TOUPPER "${GUARD_NAME}" GUARD_NAME)
+
+    configure_file("${_ECM_QT_DECLARE_LOGGING_CATEGORY_TEMPLATE_CPP}" 
"${cpp_filename}")
+    configure_file("${_ECM_QT_DECLARE_LOGGING_CATEGORY_TEMPLATE_H}" 
"${ARG_HEADER}")
+
+    set(sources "${${sources_var}}")
+    list(APPEND sources "${cpp_filename}")
+    set(${sources_var} "${sources}" PARENT_SCOPE)
+endfunction()
+
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/extra-cmake-modules-5.13.0/modules/ECMQtDeclareLoggingCategory.cpp.in 
new/extra-cmake-modules-5.14.0/modules/ECMQtDeclareLoggingCategory.cpp.in
--- old/extra-cmake-modules-5.13.0/modules/ECMQtDeclareLoggingCategory.cpp.in   
1970-01-01 01:00:00.000000000 +0100
+++ new/extra-cmake-modules-5.14.0/modules/ECMQtDeclareLoggingCategory.cpp.in   
2015-08-25 11:38:37.000000000 +0200
@@ -0,0 +1,11 @@
+// This file is autogenerated by CMake: DO NOT EDIT
+
+#include "@HEADER_NAME@"
+
+@OPEN_NAMESPACES@
+#if QT_VERSION >= QT_VERSION_CHECK(5, 4, 0)
+Q_LOGGING_CATEGORY(@IDENTIFIER@, "@ARG_CATEGORY_NAME@", 
Qt@ARG_DEFAULT_SEVERITY@Msg)
+#else
+Q_LOGGING_CATEGORY(@IDENTIFIER@, "@ARG_CATEGORY_NAME@")
+#endif
+@CLOSE_NAMESPACES@
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/extra-cmake-modules-5.13.0/modules/ECMQtDeclareLoggingCategory.h.in 
new/extra-cmake-modules-5.14.0/modules/ECMQtDeclareLoggingCategory.h.in
--- old/extra-cmake-modules-5.13.0/modules/ECMQtDeclareLoggingCategory.h.in     
1970-01-01 01:00:00.000000000 +0100
+++ new/extra-cmake-modules-5.14.0/modules/ECMQtDeclareLoggingCategory.h.in     
2015-08-25 11:38:37.000000000 +0200
@@ -0,0 +1,11 @@
+// This file is autogenerated by CMake: DO NOT EDIT
+
+#ifndef @GUARD_NAME@
+#define @GUARD_NAME@
+
+#include <QLoggingCategory>
+@OPEN_NAMESPACES@
+Q_DECLARE_LOGGING_CATEGORY(@IDENTIFIER@)
+@CLOSE_NAMESPACES@
+
+#endif
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/extra-cmake-modules-5.13.0/tests/CMakeLists.txt 
new/extra-cmake-modules-5.14.0/tests/CMakeLists.txt
--- old/extra-cmake-modules-5.13.0/tests/CMakeLists.txt 2015-07-10 
12:07:44.000000000 +0200
+++ new/extra-cmake-modules-5.14.0/tests/CMakeLists.txt 2015-08-25 
11:38:37.000000000 +0200
@@ -85,6 +85,9 @@
     add_test_variant(KDEInstallDirsTest.relative_or_absolute_qt
                      KDEInstallDirsTest.relative_or_absolute dummy)
 endif ()
+if (Qt5Core_FOUND)
+    add_test_macro(ECMQtDeclareLoggingCategoryTest testmain)
+endif()
 
 add_test_macro(FindModules dummy)
 add_test_macro(UseFindModules dummy)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/extra-cmake-modules-5.13.0/tests/ECMGenerateHeadersTest/CommonHeader 
new/extra-cmake-modules-5.14.0/tests/ECMGenerateHeadersTest/CommonHeader
--- old/extra-cmake-modules-5.13.0/tests/ECMGenerateHeadersTest/CommonHeader    
1970-01-01 01:00:00.000000000 +0100
+++ new/extra-cmake-modules-5.14.0/tests/ECMGenerateHeadersTest/CommonHeader    
2015-08-25 11:38:37.000000000 +0200
@@ -0,0 +1,4 @@
+// convenience header
+#include "headtest1.h"
+#include "headtest2.h"
+#include "headtest4.h"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/extra-cmake-modules-5.13.0/tests/ECMGenerateHeadersTest/run_test.cmake.config
 
new/extra-cmake-modules-5.14.0/tests/ECMGenerateHeadersTest/run_test.cmake.config
--- 
old/extra-cmake-modules-5.13.0/tests/ECMGenerateHeadersTest/run_test.cmake.config
   2015-07-10 12:07:44.000000000 +0200
+++ 
new/extra-cmake-modules-5.14.0/tests/ECMGenerateHeadersTest/run_test.cmake.config
   2015-08-25 11:38:37.000000000 +0200
@@ -288,5 +288,70 @@
 check_files(GENERATED ${expfiles}
             ORIGINALS ${intermediatefiles})
 
+###########################################################
+
+message(STATUS "Test 12: COMMON_HEADER")
+
+set(camelcase_headers)
+set(expfiles "${CMAKE_CURRENT_BINARY_DIR}/HeadTest1"
+             "${CMAKE_CURRENT_BINARY_DIR}/HeadTest2"
+             "${CMAKE_CURRENT_BINARY_DIR}/HeadTest4"
+             "${CMAKE_CURRENT_BINARY_DIR}/CommonHeader")
+set(origfiles headtest1.h headtest2.h)
+file(REMOVE ${expfiles})
+ecm_generate_headers(
+    camelcase_headers
+    ORIGINAL LOWERCASE
+    HEADER_NAMES HeadTest1 HeadTest2 HeadTest4
+    COMMON_HEADER CommonHeader
+)
+if (NOT "${expfiles}" STREQUAL "${camelcase_headers}")
+    message(FATAL_ERROR "camelcase_headers was set to \"${camelcase_headers}\" 
instead of \"${expfiles}\"")
+endif()
+check_files(GENERATED ${expfiles}
+            ORIGINALS ${origfiles})
+
+file(READ CommonHeader file_contents)
+string(STRIP "${file_contents}" file_contents)
+file(READ "${CMAKE_CURRENT_BINARY_DIR}/CommonHeader" exp_contents)
+string(STRIP "${exp_contents}" exp_contents)
+if (NOT "${file_contents}" STREQUAL "${exp_contents}")
+    message(FATAL_ERROR "${generated_file} contains '${file_contents}' instead 
of '${exp_contents}'")
+endif()
+
+
+###########################################################
+
+message(STATUS "Test 13: multiple classes and COMMON_HEADER")
+
+set(camelcase_headers)
+set(expfiles "${CMAKE_CURRENT_BINARY_DIR}/HeadTest1"
+             "${CMAKE_CURRENT_BINARY_DIR}/HeadTest2"
+             "${CMAKE_CURRENT_BINARY_DIR}/HeadTest2Add1"
+             "${CMAKE_CURRENT_BINARY_DIR}/HeadTest2Add2"
+             "${CMAKE_CURRENT_BINARY_DIR}/HeadTest4"
+             "${CMAKE_CURRENT_BINARY_DIR}/CommonHeader")
+set(origfiles headtest1.h headtest2.h headtest4.h)
+file(REMOVE ${expfiles})
+ecm_generate_headers(
+    camelcase_headers
+    ORIGINAL LOWERCASE
+    HEADER_NAMES HeadTest1 HeadTest2,HeadTest2Add1,HeadTest2Add2 HeadTest4
+    COMMON_HEADER CommonHeader
+)
+if (NOT "${expfiles}" STREQUAL "${camelcase_headers}")
+    message(FATAL_ERROR "camelcase_headers was set to \"${camelcase_headers}\" 
instead of \"${expfiles}\"")
+endif()
+check_files(GENERATED ${expfiles}
+            ORIGINALS ${origfiles})
+
+file(READ CommonHeader file_contents)
+string(STRIP "${file_contents}" file_contents)
+file(READ "${CMAKE_CURRENT_BINARY_DIR}/CommonHeader" exp_contents)
+string(STRIP "${exp_contents}" exp_contents)
+if (NOT "${file_contents}" STREQUAL "${exp_contents}")
+    message(FATAL_ERROR "${generated_file} contains '${file_contents}' instead 
of '${exp_contents}'")
+endif()
+
 
 # vim:ft=cmake
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/extra-cmake-modules-5.13.0/tests/ECMGeneratePkgConfigFile/CMakeLists.txt 
new/extra-cmake-modules-5.14.0/tests/ECMGeneratePkgConfigFile/CMakeLists.txt
--- 
old/extra-cmake-modules-5.13.0/tests/ECMGeneratePkgConfigFile/CMakeLists.txt    
    2015-07-10 12:07:44.000000000 +0200
+++ 
new/extra-cmake-modules-5.14.0/tests/ECMGeneratePkgConfigFile/CMakeLists.txt    
    2015-08-25 11:38:37.000000000 +0200
@@ -2,5 +2,5 @@
 configure_file(run_test.cmake.config 
"${CMAKE_CURRENT_BINARY_DIR}/run_test.cmake" @ONLY)
 
 add_test(
-    NAME ECMGenerateHeaders
+    NAME ECMGeneratePkgConfigFile
     COMMAND ${CMAKE_COMMAND} -P "${CMAKE_CURRENT_BINARY_DIR}/run_test.cmake")
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/extra-cmake-modules-5.13.0/tests/ECMQtDeclareLoggingCategoryTest/CMakeLists.txt
 
new/extra-cmake-modules-5.14.0/tests/ECMQtDeclareLoggingCategoryTest/CMakeLists.txt
--- 
old/extra-cmake-modules-5.13.0/tests/ECMQtDeclareLoggingCategoryTest/CMakeLists.txt
 1970-01-01 01:00:00.000000000 +0100
+++ 
new/extra-cmake-modules-5.14.0/tests/ECMQtDeclareLoggingCategoryTest/CMakeLists.txt
 2015-08-25 11:38:37.000000000 +0200
@@ -0,0 +1,42 @@
+project(ECMQtDeclareLoggingCategoryTest)
+cmake_minimum_required(VERSION 2.8.12)
+set(ECM_MODULE_DIR "${CMAKE_CURRENT_SOURCE_DIR}/../../modules")
+
+set(CMAKE_MODULE_PATH ${ECM_MODULE_DIR})
+
+include(ECMQtDeclareLoggingCategory)
+
+ecm_qt_declare_logging_category(
+    sources
+    HEADER "log1.h"
+    IDENTIFIER "log1"
+    CATEGORY_NAME "log.one"
+)
+
+ecm_qt_declare_logging_category(
+    sources
+    HEADER "log2.h"
+    IDENTIFIER "foo::bar::log2"
+    CATEGORY_NAME "log.two"
+)
+
+ecm_qt_declare_logging_category(
+    sources
+    HEADER "${CMAKE_CURRENT_BINARY_DIR}/log3.h"
+    IDENTIFIER "log3"
+    CATEGORY_NAME "three"
+    DEFAULT_SEVERITY Critical
+)
+
+find_package(Qt5Core REQUIRED)
+
+add_executable(testmain testmain.cpp ${sources})
+target_include_directories(testmain
+    PRIVATE
+        "${CMAKE_CURRENT_BINARY_DIR}"
+)
+target_link_libraries(testmain
+    PRIVATE
+        Qt5::Core
+)
+
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/extra-cmake-modules-5.13.0/tests/ECMQtDeclareLoggingCategoryTest/testmain.cpp
 
new/extra-cmake-modules-5.14.0/tests/ECMQtDeclareLoggingCategoryTest/testmain.cpp
--- 
old/extra-cmake-modules-5.13.0/tests/ECMQtDeclareLoggingCategoryTest/testmain.cpp
   1970-01-01 01:00:00.000000000 +0100
+++ 
new/extra-cmake-modules-5.14.0/tests/ECMQtDeclareLoggingCategoryTest/testmain.cpp
   2015-08-25 11:38:37.000000000 +0200
@@ -0,0 +1,108 @@
+/*
+ * 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 <QCoreApplication>
+
+#include "log1.h"
+#include "log2.h"
+#include "log3.h"
+
+#include <iostream>
+
+int main(int argc, char **argv) {
+    QCoreApplication qapp(argc, argv);
+
+    bool success = true;
+
+    // NB: we cannot test against QtInfoMsg, as that (a) does not exist before
+    // Qt 5.5, and (b) has incorrect semantics in Qt 5.5, in that it is
+    // treated as more severe than QtCriticalMsg.
+
+    if (log1().categoryName() != QLatin1String("log.one")) {
+        qWarning("log1 category was \"%s\", expected \"log.one\"", 
log1().categoryName());
+        success = false;
+    }
+#if QT_VERSION < QT_VERSION_CHECK(5, 4, 0)
+    if (!log1().isDebugEnabled()) {
+        qWarning("log1 debug messages were not enabled");
+        success = false;
+    }
+#else
+    if (log1().isDebugEnabled()) {
+        qWarning("log1 debug messages were enabled");
+        success = false;
+    }
+    if (!log1().isWarningEnabled()) {
+        qWarning("log1 warning messages were not enabled");
+        success = false;
+    }
+#endif
+
+    if (foo::bar::log2().categoryName() != QLatin1String("log.two")) {
+        qWarning("log2 category was \"%s\", expected \"log.two\"", 
foo::bar::log2().categoryName());
+        success = false;
+    }
+#if QT_VERSION < QT_VERSION_CHECK(5, 4, 0)
+    if (!foo::bar::log2().isDebugEnabled()) {
+        qWarning("log2 debug messages were not enabled");
+        success = false;
+    }
+#else
+    if (foo::bar::log2().isDebugEnabled()) {
+        qWarning("log2 debug messages were enabled");
+        success = false;
+    }
+    if (!foo::bar::log2().isWarningEnabled()) {
+        qWarning("log2 warning messages were not enabled");
+        success = false;
+    }
+#endif
+
+    if (log3().categoryName() != QLatin1String("three")) {
+        qWarning("log3 category was \"%s\", expected \"three\"", 
log3().categoryName());
+        success = false;
+    }
+#if QT_VERSION < QT_VERSION_CHECK(5, 4, 0)
+    if (!log3().isDebugEnabled()) {
+        qWarning("log3 debug messages were not enabled");
+        success = false;
+    }
+#else
+    if (log3().isDebugEnabled()) {
+        qWarning("log3 debug messages were enabled");
+        success = false;
+    }
+    if (log3().isWarningEnabled()) {
+        qWarning("log3 warning messages were enabled");
+        success = false;
+    }
+    if (!log3().isCriticalEnabled()) {
+        qWarning("log3 critical messages were not enabled");
+        success = false;
+    }
+#endif
+
+    return success ? 0 : 1;
+}


Reply via email to