Hello community,

here is the log from the commit of package extra-cmake-modules for 
openSUSE:Factory checked in at 2015-11-24 22:21:34
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
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-10-19 22:21:28.000000000 +0200
+++ 
/work/SRC/openSUSE:Factory/.extra-cmake-modules.new/extra-cmake-modules.changes 
    2015-11-24 22:21:36.000000000 +0100
@@ -1,0 +2,12 @@
+Sun Nov  8 16:56:34 UTC 2015 - [email protected]
+
+- Update to 5.16.0 (boo#955067)
+  * Warn instead of error if ecm_install_icons finds no icons.
+    (bug 354610)
+  * Make it possible to build KDE Frameworks 5 with a plain qt 5.5.x
+    installed from the normal qt.io installer on mac os
+  * Do not unset cache variables in KDEInstallDirs. (kde#342717)
+  * For more details please see:
+    https://www.kde.org/announcements/kde-frameworks-5.16.0.php
+
+-------------------------------------------------------------------

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

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

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

Other differences:
------------------
++++++ extra-cmake-modules.spec ++++++
--- /var/tmp/diff_new_pack.lgA37C/_old  2015-11-24 22:21:37.000000000 +0100
+++ /var/tmp/diff_new_pack.lgA37C/_new  2015-11-24 22:21:37.000000000 +0100
@@ -16,13 +16,13 @@
 #
 
 
-%define _tar_path 5.15
+%define _tar_path 5.16
 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.15.0
+Version:        5.16.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.15.0.tar.xz -> extra-cmake-modules-5.16.0.tar.xz 
++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/extra-cmake-modules-5.15.0/CMakeLists.txt 
new/extra-cmake-modules-5.16.0/CMakeLists.txt
--- old/extra-cmake-modules-5.15.0/CMakeLists.txt       2015-10-03 
11:48:31.000000000 +0200
+++ new/extra-cmake-modules-5.16.0/CMakeLists.txt       2015-11-08 
22:01:33.000000000 +0100
@@ -3,7 +3,7 @@
 project(extra-cmake-modules NONE)
 
 set(ECM_MAJOR_VERSION 5)
-set(ECM_MINOR_VERSION 15)
+set(ECM_MINOR_VERSION 16)
 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.15.0/kde-modules/KDECMakeSettings.cmake 
new/extra-cmake-modules-5.16.0/kde-modules/KDECMakeSettings.cmake
--- old/extra-cmake-modules-5.15.0/kde-modules/KDECMakeSettings.cmake   
2015-10-03 11:48:31.000000000 +0200
+++ new/extra-cmake-modules-5.16.0/kde-modules/KDECMakeSettings.cmake   
2015-11-08 22:01:33.000000000 +0100
@@ -95,21 +95,23 @@
    endif()
 
    if (UNIX)
+      # for mac os: add install name dir in addition
+      # check: is the rpath stuff below really required on mac os? at least it 
seems so to use a stock qt from qt.io
       if (APPLE)
          set(CMAKE_INSTALL_NAME_DIR ${_abs_LIB_INSTALL_DIR})
-      else ()
-         # add our LIB_INSTALL_DIR to the RPATH (but only when it is not one of
-         # the standard system link directories - such as /usr/lib on UNIX)
-         list(FIND CMAKE_PLATFORM_IMPLICIT_LINK_DIRECTORIES 
"${_abs_LIB_INSTALL_DIR}" _isSystemLibDir)
-         list(FIND CMAKE_CXX_IMPLICIT_LINK_DIRECTORIES      
"${_abs_LIB_INSTALL_DIR}" _isSystemCxxLibDir)
-         list(FIND CMAKE_C_IMPLICIT_LINK_DIRECTORIES        
"${_abs_LIB_INSTALL_DIR}" _isSystemCLibDir)
-         if("${_isSystemLibDir}" STREQUAL "-1"  AND  "${_isSystemCxxLibDir}" 
STREQUAL "-1"  AND  "${_isSystemCLibDir}" STREQUAL "-1")
-            set(CMAKE_INSTALL_RPATH "${_abs_LIB_INSTALL_DIR}")
-         endif()
-
-         # Append directories in the linker search path (but outside the 
project)
-         set(CMAKE_INSTALL_RPATH_USE_LINK_PATH TRUE)
       endif ()
+
+      # add our LIB_INSTALL_DIR to the RPATH (but only when it is not one of
+      # the standard system link directories - such as /usr/lib on UNIX)
+      list(FIND CMAKE_PLATFORM_IMPLICIT_LINK_DIRECTORIES 
"${_abs_LIB_INSTALL_DIR}" _isSystemLibDir)
+      list(FIND CMAKE_CXX_IMPLICIT_LINK_DIRECTORIES      
"${_abs_LIB_INSTALL_DIR}" _isSystemCxxLibDir)
+      list(FIND CMAKE_C_IMPLICIT_LINK_DIRECTORIES        
"${_abs_LIB_INSTALL_DIR}" _isSystemCLibDir)
+      if("${_isSystemLibDir}" STREQUAL "-1"  AND  "${_isSystemCxxLibDir}" 
STREQUAL "-1"  AND  "${_isSystemCLibDir}" STREQUAL "-1")
+         set(CMAKE_INSTALL_RPATH "${_abs_LIB_INSTALL_DIR}")
+      endif()
+
+      # Append directories in the linker search path (but outside the project)
+      set(CMAKE_INSTALL_RPATH_USE_LINK_PATH TRUE)
    endif (UNIX)
 
 endif()
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/extra-cmake-modules-5.15.0/modules/ECMInstallIcons.cmake 
new/extra-cmake-modules-5.16.0/modules/ECMInstallIcons.cmake
--- old/extra-cmake-modules-5.15.0/modules/ECMInstallIcons.cmake        
2015-10-03 11:48:31.000000000 +0200
+++ new/extra-cmake-modules-5.16.0/modules/ECMInstallIcons.cmake        
2015-11-08 22:01:33.000000000 +0100
@@ -111,6 +111,8 @@
       set(_l10n_SUBDIR ".")
    endif(_lang)
 
+   set(_themes)
+
    # first the png icons
    file(GLOB _icons *.png)
    foreach (_current_ICON ${_icons} )
@@ -123,6 +125,7 @@
 
       set(_theme_GROUP ${_ECM_ICON_THEME_${_type}})
       if( _theme_GROUP)
+         list(APPEND _themes "${_theme_GROUP}")
          
_ECM_ADD_ICON_INSTALL_RULE(${CMAKE_CURRENT_BINARY_DIR}/install_icons.cmake
                     ${_defaultpath}/${_theme_GROUP}/${_size}x${_size}
                     ${_group} ${_current_ICON} ${_name} ${_l10n_SUBDIR})
@@ -141,6 +144,7 @@
 
       set(_theme_GROUP ${_ECM_ICON_THEME_${_type}})
       if( _theme_GROUP)
+         list(APPEND _themes "${_theme_GROUP}")
          
_ECM_ADD_ICON_INSTALL_RULE(${CMAKE_CURRENT_BINARY_DIR}/install_icons.cmake
                 ${_defaultpath}/${_theme_GROUP}/${_size}x${_size}
                 ${_group} ${_current_ICON} ${_name} ${_l10n_SUBDIR})
@@ -158,13 +162,21 @@
 
       set(_theme_GROUP ${_ECM_ICON_THEME_${_type}})
       if( _theme_GROUP)
+         list(APPEND _themes "${_theme_GROUP}")
           
_ECM_ADD_ICON_INSTALL_RULE(${CMAKE_CURRENT_BINARY_DIR}/install_icons.cmake
                             ${_defaultpath}/${_theme_GROUP}/scalable
                             ${_group} ${_current_ICON} ${_name} 
${_l10n_SUBDIR})
       endif( _theme_GROUP)
    endforeach (_current_ICON)
 
-   _ecm_update_iconcache("${_defaultpath}" hicolor)
+   if (_themes)
+       list(REMOVE_DUPLICATES _themes)
+       foreach(_theme ${_themes})
+           _ecm_update_iconcache("${_defaultpath}" "${_theme}")
+       endforeach()
+   else()
+       message(AUTHOR_WARNING "No suitably-named icons found")
+   endif()
 
 endmacro()
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/extra-cmake-modules-5.15.0/modules/ECMQmLoader.cpp.in 
new/extra-cmake-modules-5.16.0/modules/ECMQmLoader.cpp.in
--- old/extra-cmake-modules-5.15.0/modules/ECMQmLoader.cpp.in   2015-10-03 
11:48:31.000000000 +0200
+++ new/extra-cmake-modules-5.16.0/modules/ECMQmLoader.cpp.in   2015-11-08 
22:01:33.000000000 +0100
@@ -2,6 +2,33 @@
  *
  * Building this file in a library ensures translations are automatically 
loaded
  * when an application makes use of the library.
+ *
+ *
+ * Copyright 2014 Aurélien Gâteau <[email protected]>
+ * Copyright 2015 Alex Merry <[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 <QCoreApplication>
 #include <QLocale>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/extra-cmake-modules-5.15.0/tests/CMakeLists.txt 
new/extra-cmake-modules-5.16.0/tests/CMakeLists.txt
--- old/extra-cmake-modules-5.15.0/tests/CMakeLists.txt 2015-10-03 
11:48:31.000000000 +0200
+++ new/extra-cmake-modules-5.16.0/tests/CMakeLists.txt 2015-11-08 
22:01:33.000000000 +0100
@@ -101,13 +101,13 @@
     ${CMAKE_COMMAND} -P 
"${CMAKE_CURRENT_BINARY_DIR}/ECMInstallIconsTest/check_tree.cmake"
 )
 
-if (Qt5LinguistTools_FOUND)
+if (Qt5Core_FOUND AND Qt5LinguistTools_FOUND)
     set(ECMPoQmToolsTest_EXTRA_OPTIONS
         --build-target install
         --build-options
             
"-DCMAKE_INSTALL_PREFIX:PATH=${CMAKE_CURRENT_BINARY_DIR}/ECMPoQmToolsTest/InstallDirectory"
     )
     add_test_macro(ECMPoQmToolsTest
-        ${CMAKE_COMMAND} -P 
"${CMAKE_CURRENT_BINARY_DIR}/ECMPoQmToolsTest/check_tree.cmake"
+        ${CMAKE_COMMAND} -P 
"${CMAKE_CURRENT_BINARY_DIR}/ECMPoQmToolsTest/check.cmake"
     )
 endif()
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/extra-cmake-modules-5.15.0/tests/ECMInstallIconsTest/CMakeLists.txt 
new/extra-cmake-modules-5.16.0/tests/ECMInstallIconsTest/CMakeLists.txt
--- old/extra-cmake-modules-5.15.0/tests/ECMInstallIconsTest/CMakeLists.txt     
2015-10-03 11:48:31.000000000 +0200
+++ new/extra-cmake-modules-5.16.0/tests/ECMInstallIconsTest/CMakeLists.txt     
2015-11-08 22:01:33.000000000 +0100
@@ -10,6 +10,7 @@
 
 add_subdirectory(v1-syntax)
 add_subdirectory(v1-syntax-l10n)
+add_subdirectory(v1-syntax-no-icons)
 
 ecm_install_icons(
     ICONS 16-actions-computer.png
@@ -94,5 +95,12 @@
     DESTINATION badly-named-files-test
 )
 
+find_program(icon_cache_generator NAMES gtk-update-icon-cache)
+if (icon_cache_generator)
+    set(GENERATE_ICON_CACHE TRUE)
+else()
+    set(GENERATE_ICON_CACHE FALSE)
+endif()
+
 # this will be run by CTest
 configure_file(check_tree.cmake.in 
"${CMAKE_CURRENT_BINARY_DIR}/check_tree.cmake" @ONLY)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/extra-cmake-modules-5.15.0/tests/ECMInstallIconsTest/check_tree.cmake.in 
new/extra-cmake-modules-5.16.0/tests/ECMInstallIconsTest/check_tree.cmake.in
--- 
old/extra-cmake-modules-5.15.0/tests/ECMInstallIconsTest/check_tree.cmake.in    
    2015-10-03 11:48:31.000000000 +0200
+++ 
new/extra-cmake-modules-5.16.0/tests/ECMInstallIconsTest/check_tree.cmake.in    
    2015-11-08 22:01:33.000000000 +0100
@@ -1,8 +1,15 @@
 set(EXP_TREE "@CMAKE_CURRENT_SOURCE_DIR@/expected-tree")
 set(ACTUAL_TREE "@CMAKE_INSTALL_PREFIX@")
+set(GENERATE_ICON_CACHE "@GENERATE_ICON_CACHE@")
 
 file(GLOB_RECURSE exp_files RELATIVE "${EXP_TREE}" "${EXP_TREE}/*")
 file(GLOB_RECURSE actual_files RELATIVE "${ACTUAL_TREE}" "${ACTUAL_TREE}/*")
+if (NOT GENERATE_ICON_CACHE)
+    file(GLOB_RECURSE cache_files RELATIVE "${EXP_TREE}" "${EXP_TREE}/*.cache")
+    foreach(f ${cache_files})
+        list(REMOVE_ITEM exp_files "${f}")
+    endforeach()
+endif()
 list(SORT exp_files)
 list(SORT actual_files)
 
Files 
old/extra-cmake-modules-5.15.0/tests/ECMInstallIconsTest/expected-tree/badly-named-files-test/hicolor/icon-theme.cache
 and 
new/extra-cmake-modules-5.16.0/tests/ECMInstallIconsTest/expected-tree/badly-named-files-test/hicolor/icon-theme.cache
 differ
Files 
old/extra-cmake-modules-5.15.0/tests/ECMInstallIconsTest/expected-tree/lang-test/hicolor/icon-theme.cache
 and 
new/extra-cmake-modules-5.16.0/tests/ECMInstallIconsTest/expected-tree/lang-test/hicolor/icon-theme.cache
 differ
Files 
old/extra-cmake-modules-5.15.0/tests/ECMInstallIconsTest/expected-tree/multi-file-test/hicolor/icon-theme.cache
 and 
new/extra-cmake-modules-5.16.0/tests/ECMInstallIconsTest/expected-tree/multi-file-test/hicolor/icon-theme.cache
 differ
Files 
old/extra-cmake-modules-5.15.0/tests/ECMInstallIconsTest/expected-tree/single-file-test/hicolor/icon-theme.cache
 and 
new/extra-cmake-modules-5.16.0/tests/ECMInstallIconsTest/expected-tree/single-file-test/hicolor/icon-theme.cache
 differ
Files 
old/extra-cmake-modules-5.15.0/tests/ECMInstallIconsTest/expected-tree/themed-lang-test/oxygen/icon-theme.cache
 and 
new/extra-cmake-modules-5.16.0/tests/ECMInstallIconsTest/expected-tree/themed-lang-test/oxygen/icon-theme.cache
 differ
Files 
old/extra-cmake-modules-5.15.0/tests/ECMInstallIconsTest/expected-tree/themed-test/theme-name-2/icon-theme.cache
 and 
new/extra-cmake-modules-5.16.0/tests/ECMInstallIconsTest/expected-tree/themed-test/theme-name-2/icon-theme.cache
 differ
Files 
old/extra-cmake-modules-5.15.0/tests/ECMInstallIconsTest/expected-tree/v1-icons/crystalsvg/icon-theme.cache
 and 
new/extra-cmake-modules-5.16.0/tests/ECMInstallIconsTest/expected-tree/v1-icons/crystalsvg/icon-theme.cache
 differ
Files 
old/extra-cmake-modules-5.15.0/tests/ECMInstallIconsTest/expected-tree/v1-icons/hicolor/icon-theme.cache
 and 
new/extra-cmake-modules-5.16.0/tests/ECMInstallIconsTest/expected-tree/v1-icons/hicolor/icon-theme.cache
 differ
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/extra-cmake-modules-5.15.0/tests/ECMInstallIconsTest/v1-syntax-no-icons/CMakeLists.txt
 
new/extra-cmake-modules-5.16.0/tests/ECMInstallIconsTest/v1-syntax-no-icons/CMakeLists.txt
--- 
old/extra-cmake-modules-5.15.0/tests/ECMInstallIconsTest/v1-syntax-no-icons/CMakeLists.txt
  1970-01-01 01:00:00.000000000 +0100
+++ 
new/extra-cmake-modules-5.16.0/tests/ECMInstallIconsTest/v1-syntax-no-icons/CMakeLists.txt
  2015-11-08 22:01:33.000000000 +0100
@@ -0,0 +1 @@
+ecm_install_icons(v1-icons-dummy)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/extra-cmake-modules-5.15.0/tests/ECMPoQmToolsTest/CMakeLists.txt 
new/extra-cmake-modules-5.16.0/tests/ECMPoQmToolsTest/CMakeLists.txt
--- old/extra-cmake-modules-5.15.0/tests/ECMPoQmToolsTest/CMakeLists.txt        
2015-10-03 11:48:31.000000000 +0200
+++ new/extra-cmake-modules-5.16.0/tests/ECMPoQmToolsTest/CMakeLists.txt        
2015-11-08 22:01:33.000000000 +0100
@@ -9,9 +9,13 @@
 
 include(ECMPoQmTools)
 
-# Should create ${CMAKE_CURRENT_BINARY_DIR}/qmloader.cpp and set QMLOADER_PATH
-# to its path
-ecm_create_qm_loader(QMLOADER_PATH catalog)
+include(../test_helpers.cmake)
+
+
+#
+# ecm_process_po_files_as_qm
+#
+
 
 # Should create a process-and-install.qm file and install it
 ecm_process_po_files_as_qm(fr ALL
@@ -24,20 +28,63 @@
     PO_FILES only-process.po
 )
 
+
+
+#
+# ecm_install_po_files_as_qm
+#
+
 # Should create a bunch of .qm files and install them in share/locale.
 # Should ignore files directly under po/ as well as directories under po/ which
 # do not contain any .po files.
 ecm_install_po_files_as_qm(po)
 
+
 # Should create a bunch of .qm files and install them in
 # ${CMAKE_INSTALL_LOCALEDIR}
 set(CMAKE_INSTALL_LOCALEDIR custom-dir1)
 ecm_install_po_files_as_qm(po-custom-dir1)
 
+
 # Should create a bunch of .qm files and install them in
 # ${LOCALE_INSTALL_DIR}
 set(LOCALE_INSTALL_DIR custom-dir2)
 ecm_install_po_files_as_qm(po-custom-dir2)
 
-# this will be run by CTest
-configure_file(check_tree.cmake.in 
"${CMAKE_CURRENT_BINARY_DIR}/check_tree.cmake" @ONLY)
+unset(CMAKE_INSTALL_LOCALEDIR)
+unset(LOCALE_INSTALL_DIR)
+
+
+
+#
+# ecm_create_qm_loader
+#
+
+find_package(Qt5Core CONFIG REQUIRED)
+ecm_install_po_files_as_qm(tr_test-po)
+
+
+set(tr_test_SRCS
+    tr_test.cpp
+)
+ecm_create_qm_loader(tr_test_SRCS catalog)
+add_executable(tr_test ${tr_test_SRCS})
+target_link_libraries(tr_test PRIVATE Qt5::Core)
+
+
+# This is not something we want people to do (putting the ecm_create_qm_loader
+# call in one CMakeLists.txt file and the target it is used for in another),
+# but it's unfortunately something projects have done and we need to keep them
+# building
+unset(QMLOADER_FILES)
+ecm_create_qm_loader(QMLOADER_FILES catalog)
+assert_var_defined(QMLOADER_FILES)
+add_subdirectory(subdir)
+
+
+
+file(GENERATE
+    OUTPUT "${CMAKE_CURRENT_BINARY_DIR}/check_conf.cmake"
+    INPUT "${CMAKE_CURRENT_SOURCE_DIR}/check_conf.cmake.in"
+)
+configure_file(check.cmake.in "${CMAKE_CURRENT_BINARY_DIR}/check.cmake" @ONLY)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/extra-cmake-modules-5.15.0/tests/ECMPoQmToolsTest/check.cmake.in 
new/extra-cmake-modules-5.16.0/tests/ECMPoQmToolsTest/check.cmake.in
--- old/extra-cmake-modules-5.15.0/tests/ECMPoQmToolsTest/check.cmake.in        
1970-01-01 01:00:00.000000000 +0100
+++ new/extra-cmake-modules-5.16.0/tests/ECMPoQmToolsTest/check.cmake.in        
2015-11-08 22:01:33.000000000 +0100
@@ -0,0 +1,81 @@
+set(BINARY_DIR "@CMAKE_CURRENT_BINARY_DIR@")
+set(ACTUAL_TREE "@CMAKE_INSTALL_PREFIX@")
+include("${BINARY_DIR}/check_conf.cmake")
+
+set(fail OFF)
+
+macro(mark_failed msg)
+    message(WARNING "FAIL: ${msg}")
+    set(fail ON)
+endmacro()
+
+macro(check_exists file)
+    message(STATUS "Checking for ${file}")
+    if (NOT EXISTS ${file})
+        mark_failed("File \"${file}\" does not exist")
+    endif()
+endmacro()
+
+check_exists(${BINARY_DIR}/fr/only-process.qm)
+
+set(exp_files
+    "share/locale/fr/LC_MESSAGES/process-and-install.qm"
+    "share/locale/es/LC_MESSAGES/install-test.qm"
+    "share/locale/fr/LC_MESSAGES/install-test.qm"
+    "share/locale/en/LC_MESSAGES/catalog.qm"
+    "share/locale/de/LC_MESSAGES/catalog.qm"
+    "custom-dir1/es/LC_MESSAGES/custom-dir1-install-test.qm"
+    "custom-dir1/fr/LC_MESSAGES/custom-dir1-install-test.qm"
+    "custom-dir2/es/LC_MESSAGES/custom-dir2-install-test.qm"
+    "custom-dir2/fr/LC_MESSAGES/custom-dir2-install-test.qm"
+)
+file(GLOB_RECURSE actual_files RELATIVE "${ACTUAL_TREE}" "${ACTUAL_TREE}/*")
+list(SORT exp_files)
+list(SORT actual_files)
+
+if(NOT exp_files STREQUAL actual_files)
+    foreach(f ${exp_files})
+        list(FIND actual_files "${f}" result)
+        if(result EQUAL -1)
+            message(WARNING "${f} was expected, but not found")
+            set(fail ON)
+        endif()
+    endforeach()
+    foreach(f ${actual_files})
+        list(FIND exp_files "${f}" result)
+        if(result EQUAL -1)
+            message(WARNING "${f} was found, but not expected")
+            set(fail ON)
+        endif()
+    endforeach()
+else()
+    message(STATUS "Installed translations in expected locations")
+endif()
+
+# we know we can modify the executable environment on Linux
+if("@CMAKE_SYSTEM_NAME@" STREQUAL "Linux")
+    set(exp_output_en "english text:english plural form 5")
+    set(exp_output_de "german text:german plural form 5")
+    # no french translation provided -> english fallback
+    set(exp_output_fr "${exp_output_en}")
+    foreach(exec TR_TEST TR_TEST_SUBDIR)
+        foreach(lang en de fr)
+            execute_process(
+                COMMAND "${CMAKE_COMMAND}" -E env 
"XDG_DATA_DIRS=${ACTUAL_TREE}/share"
+                    LANGUAGE=${lang} "${${exec}_EXEC}"
+                OUTPUT_VARIABLE output
+            )
+            string(STRIP "${output}" stripped_output)
+            if(NOT stripped_output STREQUAL exp_output_${lang})
+                message(WARNING "${exec}[${lang}] output was 
\"${stripped_output}\", but expected \"${exp_output_${lang}}\"")
+                set(fail ON)
+            else()
+                message(STATUS "${exec}[${lang}] output was 
\"${stripped_output}\", as expected")
+            endif()
+        endforeach()
+    endforeach()
+endif()
+
+if (fail)
+    message(FATAL_ERROR "Test failed!")
+endif()
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/extra-cmake-modules-5.15.0/tests/ECMPoQmToolsTest/check_conf.cmake.in 
new/extra-cmake-modules-5.16.0/tests/ECMPoQmToolsTest/check_conf.cmake.in
--- old/extra-cmake-modules-5.15.0/tests/ECMPoQmToolsTest/check_conf.cmake.in   
1970-01-01 01:00:00.000000000 +0100
+++ new/extra-cmake-modules-5.16.0/tests/ECMPoQmToolsTest/check_conf.cmake.in   
2015-11-08 22:01:33.000000000 +0100
@@ -0,0 +1,2 @@
+set(TR_TEST_EXEC "$<TARGET_FILE:tr_test>")
+set(TR_TEST_SUBDIR_EXEC "$<TARGET_FILE:tr_test_subdir>")
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/extra-cmake-modules-5.15.0/tests/ECMPoQmToolsTest/check_tree.cmake.in 
new/extra-cmake-modules-5.16.0/tests/ECMPoQmToolsTest/check_tree.cmake.in
--- old/extra-cmake-modules-5.15.0/tests/ECMPoQmToolsTest/check_tree.cmake.in   
2015-10-03 11:48:31.000000000 +0200
+++ new/extra-cmake-modules-5.16.0/tests/ECMPoQmToolsTest/check_tree.cmake.in   
1970-01-01 01:00:00.000000000 +0100
@@ -1,61 +0,0 @@
-set(BINARY_DIR "@CMAKE_CURRENT_BINARY_DIR@")
-set(ACTUAL_TREE "@CMAKE_INSTALL_PREFIX@")
-set(QMLOADER_PATH "@QMLOADER_PATH@")
-
-set(fail OFF)
-
-macro(mark_failed msg)
-    message(WARNING "FAIL: ${msg}")
-    set(fail ON)
-endmacro()
-
-macro(check_strequal var expected)
-    if (NOT "${${var}}" STREQUAL "${expected}")
-        mark_failed("${var} is:\n  \"${${var}}\"\nExpected:\n  
\"${expected}\"")
-    endif()
-endmacro()
-
-macro(check_exists file)
-    if (NOT EXISTS ${file})
-        mark_failed("File \"${file}\" does not exist")
-    endif()
-endmacro()
-
-check_exists(${BINARY_DIR}/ECMQmLoader.cpp)
-check_strequal(QMLOADER_PATH "${BINARY_DIR}/ECMQmLoader.cpp")
-
-check_exists(${BINARY_DIR}/fr/only-process.qm)
-
-set(exp_files
-    "share/locale/fr/LC_MESSAGES/process-and-install.qm"
-    "share/locale/es/LC_MESSAGES/install-test.qm"
-    "share/locale/fr/LC_MESSAGES/install-test.qm"
-    "custom-dir1/es/LC_MESSAGES/custom-dir1-install-test.qm"
-    "custom-dir1/fr/LC_MESSAGES/custom-dir1-install-test.qm"
-    "custom-dir2/es/LC_MESSAGES/custom-dir2-install-test.qm"
-    "custom-dir2/fr/LC_MESSAGES/custom-dir2-install-test.qm"
-)
-file(GLOB_RECURSE actual_files RELATIVE "${ACTUAL_TREE}" "${ACTUAL_TREE}/*")
-list(SORT exp_files)
-list(SORT actual_files)
-
-if(NOT exp_files STREQUAL actual_files)
-    foreach(f ${exp_files})
-        list(FIND actual_files "${f}" result)
-        if(result EQUAL -1)
-            message(WARNING "${f} was expected, but not found")
-            set(fail ON)
-        endif()
-    endforeach()
-    foreach(f ${actual_files})
-        list(FIND exp_files "${f}" result)
-        if(result EQUAL -1)
-            message(WARNING "${f} was found, but not expected")
-            set(fail ON)
-        endif()
-    endforeach()
-endif()
-
-if (fail)
-    message(FATAL_ERROR "Test failed!")
-endif()
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/extra-cmake-modules-5.15.0/tests/ECMPoQmToolsTest/subdir/CMakeLists.txt 
new/extra-cmake-modules-5.16.0/tests/ECMPoQmToolsTest/subdir/CMakeLists.txt
--- old/extra-cmake-modules-5.15.0/tests/ECMPoQmToolsTest/subdir/CMakeLists.txt 
1970-01-01 01:00:00.000000000 +0100
+++ new/extra-cmake-modules-5.16.0/tests/ECMPoQmToolsTest/subdir/CMakeLists.txt 
2015-11-08 22:01:33.000000000 +0100
@@ -0,0 +1,5 @@
+# QMLOADER_FILES comes from parent CMakeLists.txt.  This is not something we
+# want people to do, but it's unfortunately something projects have done and we
+# need to keep them building
+add_executable(tr_test_subdir ../tr_test.cpp ${QMLOADER_FILES})
+target_link_libraries(tr_test_subdir PRIVATE Qt5::Core)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/extra-cmake-modules-5.15.0/tests/ECMPoQmToolsTest/tr_test-po/de/catalog.po 
new/extra-cmake-modules-5.16.0/tests/ECMPoQmToolsTest/tr_test-po/de/catalog.po
--- 
old/extra-cmake-modules-5.15.0/tests/ECMPoQmToolsTest/tr_test-po/de/catalog.po  
    1970-01-01 01:00:00.000000000 +0100
+++ 
new/extra-cmake-modules-5.16.0/tests/ECMPoQmToolsTest/tr_test-po/de/catalog.po  
    2015-11-08 22:01:33.000000000 +0100
@@ -0,0 +1,22 @@
+msgid ""
+msgstr ""
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
+"X-Language: de\n"
+"X-Qt-Contexts: true\n"
+
+#: main.cpp:12
+msgctxt "testcontext|"
+msgid "test string"
+msgstr "german text"
+
+#: main.cpp:13
+#, qt-format
+#| msgid "test plural"
+msgctxt "testcontext|"
+msgid "test plural %n"
+msgid_plural "test plural %n"
+msgstr[0] "german singular form %n"
+msgstr[1] "german plural form %n"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/extra-cmake-modules-5.15.0/tests/ECMPoQmToolsTest/tr_test-po/en/catalog.po 
new/extra-cmake-modules-5.16.0/tests/ECMPoQmToolsTest/tr_test-po/en/catalog.po
--- 
old/extra-cmake-modules-5.15.0/tests/ECMPoQmToolsTest/tr_test-po/en/catalog.po  
    1970-01-01 01:00:00.000000000 +0100
+++ 
new/extra-cmake-modules-5.16.0/tests/ECMPoQmToolsTest/tr_test-po/en/catalog.po  
    2015-11-08 22:01:33.000000000 +0100
@@ -0,0 +1,22 @@
+msgid ""
+msgstr ""
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
+"X-Language: en\n"
+"X-Qt-Contexts: true\n"
+
+#: main.cpp:12
+msgctxt "testcontext|"
+msgid "test string"
+msgstr "english text"
+
+#: main.cpp:13
+#, qt-format
+#| msgid "test plural"
+msgctxt "testcontext|"
+msgid "test plural %n"
+msgid_plural "test plural %n"
+msgstr[0] "english singular form %n"
+msgstr[1] "english plural form %n"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/extra-cmake-modules-5.15.0/tests/ECMPoQmToolsTest/tr_test.cpp 
new/extra-cmake-modules-5.16.0/tests/ECMPoQmToolsTest/tr_test.cpp
--- old/extra-cmake-modules-5.15.0/tests/ECMPoQmToolsTest/tr_test.cpp   
1970-01-01 01:00:00.000000000 +0100
+++ new/extra-cmake-modules-5.16.0/tests/ECMPoQmToolsTest/tr_test.cpp   
2015-11-08 22:01:33.000000000 +0100
@@ -0,0 +1,43 @@
+/*
+ * Copyright 2015 Alex Merry <[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 <QCoreApplication>
+#include <QTextStream>
+
+#include <stdio.h>
+
+int main(int argc, char** argv)
+{
+    QCoreApplication app(argc, argv);
+
+    QTextStream output(stdout);
+
+    output << QCoreApplication::translate("testcontext", "test string") << ":";
+    output << QCoreApplication::translate("testcontext", "test plural %n", 0, 
5) << '\n';
+
+    return 0;
+}


Reply via email to