Hello community,

here is the log from the commit of package extra-cmake-modules for 
openSUSE:Factory checked in at 2018-04-19 15:13:57
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
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 Apr 19 15:13:57 2018 rev:52 rq:596844 version:5.45.0

Changes:
--------
--- /work/SRC/openSUSE:Factory/extra-cmake-modules/extra-cmake-modules.changes  
2018-03-20 21:44:40.063582758 +0100
+++ 
/work/SRC/openSUSE:Factory/.extra-cmake-modules.new/extra-cmake-modules.changes 
    2018-04-19 15:15:30.576884506 +0200
@@ -1,0 +2,16 @@
+Sat Apr 14 13:19:02 CEST 2018 - [email protected]
+
+- Update to 5.45.0
+  * New feature release
+  * For more details please see:
+  * https://www.kde.org/announcements/kde-frameworks-5.45.0.php
+- Changes since 5.44.0:
+  * Make use of upstream CMake infrastructure to detect the compiler toolchain
+  * API dox: fix some "code-block" lines to have empty lines before/after
+  * Add ECMSetupQtPluginMacroNames
+  * Provide androiddeployqt with all prefix paths
+  * Include the "stdcpp-path" in the json file
+  * Resolve symlinks in QML import paths
+  * Provide QML import paths to androiddeployqt
+
+-------------------------------------------------------------------

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

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

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

Other differences:
------------------
++++++ extra-cmake-modules.spec ++++++
--- /var/tmp/diff_new_pack.cYHQSL/_old  2018-04-19 15:15:31.220858955 +0200
+++ /var/tmp/diff_new_pack.cYHQSL/_new  2018-04-19 15:15:31.224858796 +0200
@@ -16,7 +16,7 @@
 #
 
 
-%define _tar_path 5.44
+%define _tar_path 5.45
 # Full KF5 version (e.g. 5.33.0)
 %{!?_kf5_version: %global _kf5_version %{version}}
 # Last major and minor KF5 version (e.g. 5.33)
@@ -27,7 +27,7 @@
 %bcond_with doc
 %endif
 Name:           extra-cmake-modules
-Version:        5.44.0
+Version:        5.45.0
 Release:        0
 Summary:        CMake modules
 License:        BSD-3-Clause

++++++ extra-cmake-modules-5.44.0.tar.xz -> extra-cmake-modules-5.45.0.tar.xz 
++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/extra-cmake-modules-5.44.0/CMakeLists.txt 
new/extra-cmake-modules-5.45.0/CMakeLists.txt
--- old/extra-cmake-modules-5.44.0/CMakeLists.txt       2018-03-03 
10:48:12.000000000 +0100
+++ new/extra-cmake-modules-5.45.0/CMakeLists.txt       2018-04-04 
18:46:25.000000000 +0200
@@ -32,7 +32,7 @@
 # Preliminary setup
 #
 
-set(VERSION "5.44.0") # handled by release scripts
+set(VERSION "5.45.0") # handled by release scripts
 
 if (POLICY CMP0048)
     cmake_policy(SET CMP0048 NEW)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/extra-cmake-modules-5.44.0/docs/module/ECMSetupQtPluginMacroNames.rst 
new/extra-cmake-modules-5.45.0/docs/module/ECMSetupQtPluginMacroNames.rst
--- old/extra-cmake-modules-5.44.0/docs/module/ECMSetupQtPluginMacroNames.rst   
1970-01-01 01:00:00.000000000 +0100
+++ new/extra-cmake-modules-5.45.0/docs/module/ECMSetupQtPluginMacroNames.rst   
2018-04-04 18:46:25.000000000 +0200
@@ -0,0 +1 @@
+.. ecm-module:: ../../modules/ECMSetupQtPluginMacroNames.cmake
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/extra-cmake-modules-5.44.0/modules/ECMSetupQtPluginMacroNames.cmake 
new/extra-cmake-modules-5.45.0/modules/ECMSetupQtPluginMacroNames.cmake
--- old/extra-cmake-modules-5.44.0/modules/ECMSetupQtPluginMacroNames.cmake     
1970-01-01 01:00:00.000000000 +0100
+++ new/extra-cmake-modules-5.45.0/modules/ECMSetupQtPluginMacroNames.cmake     
2018-04-04 18:46:25.000000000 +0200
@@ -0,0 +1,237 @@
+#.rst:
+# ECMSetupQtPluginMacroNames
+# ---------------
+#
+# Instruct CMake's automoc about C++ preprocessor macros used to define 
Qt-style plugins.
+#
+# ::
+#
+#   ecm_setup_qtplugin_macro_names(
+#       [JSON_NONE <macro_name> [<macro_name> [...]]]
+#       [JSON_ARG1 <macro_name> [<macro_name> [...]]]
+#       [JSON_ARG2 <macro_name> [<macro_name> [...]]]
+#       [JSON_ARG3 <macro_name> [<macro_name> [...]]]
+#       [CONFIG_CODE_VARIABLE <variable_name>] )
+#
+# CMake's automoc needs some support when parsing C++ source files to detect 
whether moc
+# should be run on those files and if there are also dependencies on other 
files, like those
+# with Qt plugin metadata in JSON format. Because automoc just greps overs the 
raw plain text
+# of the sources without any C++ preprocessor-like processing.
+# CMake in newer versions provides the variables 
``CMAKE_AUTOMOC_DEPEND_FILTERS`` (CMake >= 3.9.0)
+# and ``CMAKE_AUTOMOC_MACRO_NAMES`` (CMake >= 3.10) to allow the developer to 
assist automoc.
+#
+# This macro cares for the explicit setup needed for those variables for 
common cases of
+# C++ preprocessor macros used for Qt-style plugins.
+#
+# JSON_NONE lists the names of C++ preprocessor macros for Qt-style plugins 
which do not refer to
+# external files with the plugin metadata.
+#
+# JSON_ARG1 lists the names of C++ preprocessor macros for Qt-style plugins 
where the first argument
+# to the macro is the name of the external file with the plugin metadata.
+#
+# JSON_ARG2 is the same as JSON_ARG1 but with the file name being the second 
argument.
+#
+# JSON_ARG3 is the same as JSON_ARG1 but with the file name being the third 
argument.
+#
+# CONFIG_CODE_VARIABLE specifies the name of the variable which will get set as
+# value some generated CMake code for instructing automoc for the given macro 
names,
+# as useful in an installed CMake config file. The variable can then be used 
as usual in
+# the template file for such a CMake config file, by ``@<variable_name>@``.
+#
+#
+# Example usage:
+#
+# Given some plugin-oriented Qt-based software which defines a custom C++ 
preprocessor
+# macro ``EXPORT_MYPLUGIN`` for declaring the central plugin object:
+#
+# .. code-block:: c++
+#
+#   #define EXPORT_MYPLUGIN_WITH_JSON(classname, jsonFile) \
+#   class classname : public QObject \
+#   { \
+#       Q_OBJECT \
+#       Q_PLUGIN_METADATA(IID "myplugin" FILE jsonFile) \
+#       explicit classname() {} \
+#   };
+#
+# In the CMake buildsystem of the library one calls
+#
+# .. code-block:: cmake
+#
+#   ecm_setup_qtplugin_macro_names(
+#       JSON_ARG2
+#          EXPORT_MYPLUGIN_WITH_JSON
+#   )
+#
+# to instruct automoc about the usage of that macro in the sources of the
+# library itself.
+#
+# Given the software installs a library including the header with the macro
+# definition and a CMake config file, so 3rd-party can create additional
+# plugins by linking against the library, one passes additionally the name of
+# a variable which shall be set as value the CMake code needed to instruct
+# automoc about the usage of that macro.
+#
+# .. code-block:: cmake
+#
+#   ecm_setup_qtplugin_macro_names(
+#       JSON_ARG2
+#          EXPORT_MYPLUGIN_WITH_JSON
+#       CONFIG_CODE_VARIABLE
+#          PACKAGE_SETUP_AUTOMOC_VARIABLES
+#   )
+#
+# This variable then is used in the template file (e.g.
+# ``MyProjectConfig.cmake.in``) for the libary's installed CMake config file
+# and that way will ensure that in the 3rd-party plugin's buildsystem
+# automoc is instructed as well as needed:
+#
+# .. code-block:: cmake
+#
+#   @PACKAGE_SETUP_AUTOMOC_VARIABLES@
+#
+# Since 5.45.0.
+
+#=============================================================================
+# Copyright 2018 Friedrich W. H. Kossebau <[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(CMakePackageConfigHelpers)
+
+macro(ecm_setup_qtplugin_macro_names)
+    set(options )
+    set(oneValueArgs CONFIG_CODE_VARIABLE)
+    set(multiValueArgs JSON_NONE JSON_ARG1 JSON_ARG2 JSON_ARG3)
+
+    cmake_parse_arguments(ESQMN "${options}" "${oneValueArgs}" 
"${multiValueArgs}"  ${ARGN})
+
+    if(ESQMN_UNPARSED_ARGUMENTS)
+        message(FATAL_ERROR "Unknown keywords given to 
ECM_SETUP_QTPLUGIN_MACRO_NAMES(): \"${ESQMN_UNPARSED_ARGUMENTS}\"")
+    endif()
+
+    # CMAKE_AUTOMOC_MACRO_NAMES
+    if(NOT CMAKE_VERSION VERSION_LESS "3.10.0")
+        # CMake 3.9+ warns about automoc on files without Q_OBJECT, and 
doesn't know about other macros.
+        # 3.10+ lets us provide more macro names that require automoc.
+        list(APPEND CMAKE_AUTOMOC_MACRO_NAMES
+            ${ESQMN_JSON_NONE}
+            ${ESQMN_JSON_ARG1}
+            ${ESQMN_JSON_ARG2}
+            ${ESQMN_JSON_ARG3}
+        )
+    endif()
+
+    # CMAKE_AUTOMOC_DEPEND_FILTERS
+    if(NOT CMAKE_VERSION VERSION_LESS "3.9.0")
+        # CMake's automoc needs help to find names of plugin metadata files in 
case Q_PLUGIN_METADATA
+        # is indirectly used via other C++ preprocessor macros
+        # 3.9+ lets us provide some filter rule pairs (keyword, regexp) to 
match the names of such files
+        # in the plain text of the sources. See AUTOMOC_DEPEND_FILTERS docs 
for details.
+        foreach(macro_name  ${ESQMN_JSON_ARG1})
+            list(APPEND CMAKE_AUTOMOC_DEPEND_FILTERS
+                "${macro_name}"
+                "[\n^][ \t]*${macro_name}[ \t\n]*\\([ \t\n]*\"([^\"]+)\""
+            )
+        endforeach()
+        foreach(macro_name  ${ESQMN_JSON_ARG2})
+            list(APPEND CMAKE_AUTOMOC_DEPEND_FILTERS
+                "${macro_name}"
+                "[\n^][ \t]*${macro_name}[ \t\n]*\\([^,]*,[ \t\n]*\"([^\"]+)\""
+            )
+        endforeach()
+        foreach(macro_name  ${ESQMN_JSON_ARG3})
+            list(APPEND CMAKE_AUTOMOC_DEPEND_FILTERS
+                "${macro_name}"
+                "[\n^][ \t]*${macro_name}[ \t\n]*\\([^,]*,[^,]*,[ 
\t\n]*\"([^\"]+)\""
+            )
+        endforeach()
+    endif()
+
+    if (ESQMN_CONFIG_CODE_VARIABLE)
+        set(_content
+"####################################################################################
+# CMAKE_AUTOMOC
+")
+        set(_all_macro_names
+            ${ESQMN_JSON_NONE}
+            ${ESQMN_JSON_ARG1}
+            ${ESQMN_JSON_ARG2}
+            ${ESQMN_JSON_ARG3}
+        )
+        string(APPEND _content "
+if(NOT CMAKE_VERSION VERSION_LESS \"3.10.0\")
+    # CMake 3.9+ warns about automoc on files without Q_OBJECT, and doesn't 
know about other macros.
+    # 3.10+ lets us provide more macro names that require automoc.
+    list(APPEND CMAKE_AUTOMOC_MACRO_NAMES ${_all_macro_names})
+endif()
+")
+
+        if(ESQMN_JSON_ARG1 OR ESQMN_JSON_ARG2 OR ESQMN_JSON_ARG3)
+            string(APPEND _content "
+if(NOT CMAKE_VERSION VERSION_LESS \"3.9.0\")
+    # CMake's automoc needs help to find names of plugin metadata files in 
case Q_PLUGIN_METADATA
+    # is indirectly used via other C++ preprocessor macros
+    # 3.9+ lets us provide some filter rule pairs (keyword, regexp) to match 
the names of such files
+    # in the plain text of the sources. See AUTOMOC_DEPEND_FILTERS docs for 
details.
+")
+            if(ESQMN_JSON_ARG1)
+                string(APPEND _content
+"    foreach(macro_name  ${ESQMN_JSON_ARG1})
+        list(APPEND CMAKE_AUTOMOC_DEPEND_FILTERS
+            \"\${macro_name}\"
+            \"[\\n^][ \\t]*\${macro_name}[ \\t\\n]*\\\\([ 
\\t\\n]*\\\"([^\\\"]+)\\\"\"
+        )
+    endforeach()
+")
+            endif()
+            if(ESQMN_JSON_ARG2)
+                string(APPEND _content
+"    foreach(macro_name  ${ESQMN_JSON_ARG2})
+        list(APPEND CMAKE_AUTOMOC_DEPEND_FILTERS
+            \"\${macro_name}\"
+            \"[\\n^][ \\t]*\${macro_name}[ \\t\\n]*\\\\([^,]*,[ 
\\t\\n]*\\\"([^\\\"]+)\\\"\"
+        )
+    endforeach()
+")
+            endif()
+            if(ESQMN_JSON_ARG3)
+                string(APPEND _content
+"    foreach(macro_name  ${ESQMN_JSON_ARG3})
+        list(APPEND CMAKE_AUTOMOC_DEPEND_FILTERS
+            \"\${macro_name}\"
+            \"[\\n^][ \\t]*\${macro_name}[ \\t\\n]*\\\\([^,]*,[^,]*,[ 
\\t\\n]*\\\"([^\\\"]+)\\\"\"
+        )
+    endforeach()
+")
+            endif()
+            string(APPEND _content "endif()")
+        endif()
+        string(APPEND _content "
+####################################################################################"
+        )
+
+        set(${ESQMN_CONFIG_CODE_VARIABLE} ${_content})
+    endif()
+endmacro()
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/extra-cmake-modules-5.44.0/toolchain/Android.cmake 
new/extra-cmake-modules-5.45.0/toolchain/Android.cmake
--- old/extra-cmake-modules-5.44.0/toolchain/Android.cmake      2018-03-03 
10:48:12.000000000 +0100
+++ new/extra-cmake-modules-5.45.0/toolchain/Android.cmake      2018-04-04 
18:46:25.000000000 +0200
@@ -133,7 +133,7 @@
 # (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
 # THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 
-cmake_minimum_required(VERSION "3.1")
+cmake_minimum_required(VERSION "3.7")
 
 #input
 set(ANDROID_NDK "$ENV{ANDROID_NDK}" CACHE path "Android NDK path")
@@ -146,21 +146,18 @@
 set(ANDROID_API_LEVEL "14" CACHE string "Android API Level")
 set(ANDROID_SDK_BUILD_TOOLS_REVISION "21.1.1" CACHE string "Android API Level")
 
-set(_HOST "${CMAKE_HOST_SYSTEM_NAME}-${CMAKE_HOST_SYSTEM_PROCESSOR}")
-string(TOLOWER "${_HOST}" _HOST)
 
-get_filename_component(_CMAKE_ANDROID_DIR "${CMAKE_TOOLCHAIN_FILE}" PATH)
-
-set(CMAKE_SYSROOT
-    
"${ANDROID_NDK}/platforms/android-${ANDROID_API_LEVEL}/arch-${ANDROID_ARCHITECTURE}")
-if(NOT EXISTS ${CMAKE_SYSROOT})
-    message(FATAL_ERROR "Couldn't find the Android NDK Root in 
${CMAKE_SYSROOT}")
+set(CMAKE_ANDROID_NDK ${ANDROID_NDK})
+set(CMAKE_SYSTEM_VERSION ${ANDROID_API_LEVEL})
+set(CMAKE_ANDROID_ARCH ${ANDROID_ARCHITECTURE})
+set(CMAKE_ANDROID_ARCH_ABI ${ANDROID_ABI})
+set(CMAKE_SYSTEM_NAME Android)
+if (NOT CMAKE_ANDROID_STL_TYPE)
+    set(CMAKE_ANDROID_STL_TYPE gnustl_shared)
 endif()
 
-#actual code
-SET(CMAKE_SYSTEM_NAME Android)
-SET(CMAKE_SYSTEM_VERSION 1)
-SET(ANDROID TRUE)
+include(${CMAKE_ROOT}/Modules/Platform/Android-GNU.cmake REQUIRED)
+include(${CMAKE_ROOT}/Modules/Platform/Android-Initialize.cmake REQUIRED)
 
 if (NOT DEFINED ECM_ADDITIONAL_FIND_ROOT_PATH)
     SET(ECM_ADDITIONAL_FIND_ROOT_PATH ${CMAKE_PREFIX_PATH})
@@ -171,55 +168,11 @@
 set(CMAKE_FIND_ROOT_PATH_MODE_INCLUDE ONLY)
 set(CMAKE_FIND_ROOT_PATH_MODE_PACKAGE ONLY)
 
-set(ANDROID_TOOLCHAIN_ROOT 
"${ANDROID_NDK}/toolchains/${ANDROID_TOOLCHAIN}-${ANDROID_GCC_VERSION}/prebuilt/${_HOST}/bin")
-set(ANDROID_LIBS_ROOT 
"${ANDROID_NDK}/sources/cxx-stl/gnu-libstdc++/${ANDROID_GCC_VERSION}")
-
-# includes
-include_directories(SYSTEM
-    "${CMAKE_SYSROOT}/usr/include"
-    "${ANDROID_LIBS_ROOT}/include/"
-    "${ANDROID_LIBS_ROOT}/libs/${ANDROID_ABI}/include"
-    "${ANDROID_NDK}/sysroot/usr/include"
-    "${ANDROID_NDK}/sysroot/usr/include/${ANDROID_COMPILER_PREFIX}"
-)
-
-# libraries
-set(ANDROID_LIBRARIES_PATH
-    "${CMAKE_SYSROOT}/usr/lib")
-set(CMAKE_SYSTEM_LIBRARY_PATH
-    ${ANDROID_LIBRARIES_PATH}
-    "${ANDROID_LIBS_ROOT}/libs/${ANDROID_ABI}/"
-)
-set(CMAKE_FIND_LIBRARY_SUFFIXES ".so")
-set(CMAKE_FIND_LIBRARY_PREFIXES "lib")
-
-# Settling hard on gnustl_shared as C++ helper runtime for now,
-# given this is most similar to what is on GNU/Linux, which is what
-# the average software targetted by this toolchain is built against otherwise.
-# If requested by devs, the used helper runtime could be made an option later.
-# Related info: https://developer.android.com/ndk/guides/cpp-support.html
-find_library(GNUSTL_SHARED gnustl_shared)
-if(NOT GNUSTL_SHARED)
-    message(FATAL_ERROR "Selected Android platform does not provide 
gnustl_shared: ${CMAKE_SYSTEM_LIBRARY_PATH}")
-endif()
-
-link_directories(${CMAKE_SYSTEM_LIBRARY_PATH})
-
-set(CMAKE_C_COMPILER 
"${ANDROID_TOOLCHAIN_ROOT}/${ANDROID_COMPILER_PREFIX}-gcc")
-set(CMAKE_CXX_COMPILER 
"${ANDROID_TOOLCHAIN_ROOT}/${ANDROID_COMPILER_PREFIX}-g++")
-
-set(CMAKE_EXE_LINKER_FLAGS "${GNUSTL_SHARED} 
-Wl,-rpath-link,${ANDROID_LIBRARIES_PATH} -llog -lz -lm -ldl -lc -lgcc" CACHE 
STRING "")
-set(CMAKE_SHARED_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS}" CACHE STRING "")
-set(CMAKE_MODULE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS}" CACHE STRING "")
-
 #we want executables to be shared libraries, hooks will invoke the exported 
cmake function
 set(CMAKE_CXX_LINK_EXECUTABLE
     "<CMAKE_CXX_COMPILER> <CMAKE_SHARED_LIBRARY_CXX_FLAGS> <LINK_FLAGS> 
<CMAKE_SHARED_LIBRARY_CREATE_CXX_FLAGS> <SONAME_FLAG><TARGET_SONAME> -o 
<TARGET> <OBJECTS> <LINK_LIBRARIES>"
 )
 
-# ANDROID is needed for Qt to define Q_OS_ANDROID, __ANDROID_API__ is expected 
by the Android NDK
-add_definitions(-DANDROID -D__ANDROID_API__=${ANDROID_API_LEVEL})
-
 set(ECM_DIR "${CMAKE_CURRENT_LIST_DIR}/../cmake" CACHE STRING "")
 
 ######### generation
@@ -229,6 +182,7 @@
 # from CMakeDetermineSystem.cmake and from CMakeSystem.cmake generated within 
the
 # build directory.
 if(DEFINED QTANDROID_EXPORTED_TARGET AND NOT TARGET ${CREATEAPK_TARGET_NAME})
+    get_filename_component(_CMAKE_ANDROID_DIR "${CMAKE_TOOLCHAIN_FILE}" PATH)
     if(NOT DEFINED ANDROID_APK_DIR)
         message(FATAL_ERROR "Define an apk dir to initialize from using 
-DANDROID_APK_DIR=<path>. The specified directory must contain the 
AndroidManifest.xml file.")
     elseif(NOT EXISTS "${ANDROID_APK_DIR}/AndroidManifest.xml")
@@ -239,12 +193,40 @@
 
     set(EXPORT_DIR 
"${CMAKE_BINARY_DIR}/${QTANDROID_EXPORTED_TARGET}_build_apk/")
     set(EXECUTABLE_DESTINATION_PATH 
"${EXPORT_DIR}/libs/${ANDROID_ABI}/lib${QTANDROID_EXPORTED_TARGET}.so")
+    set(QML_IMPORT_PATHS "")
+    foreach(prefix ${ECM_ADDITIONAL_FIND_ROOT_PATH})
+        # qmlimportscanner chokes on symlinks, so we need to resolve those 
first
+        get_filename_component(qml_path "${prefix}/lib/qml" REALPATH)
+        if(EXISTS ${qml_path})
+            if (QML_IMPORT_PATHS)
+                set(QML_IMPORT_PATHS "${QML_IMPORT_PATHS},${qml_path}")
+            else()
+                set(QML_IMPORT_PATHS "${qml_path}")
+            endif()
+        endif()
+    endforeach()
+    set(EXTRA_PREFIX_DIRS "")
+    foreach(prefix ${ECM_ADDITIONAL_FIND_ROOT_PATH})
+        if (EXTRA_PREFIX_DIRS)
+            set(EXTRA_PREFIX_DIRS "${EXTRA_PREFIX_DIRS}, \"${prefix}\"")
+        else()
+            set(EXTRA_PREFIX_DIRS "\"${prefix}\"")
+        endif()
+    endforeach()
+    string(TOLOWER "${CMAKE_HOST_SYSTEM_NAME}" _LOWER_CMAKE_HOST_SYSTEM_NAME)
     configure_file("${_CMAKE_ANDROID_DIR}/deployment-file.json.in" 
"${QTANDROID_EXPORTED_TARGET}-deployment.json.in")
 
     if (CMAKE_GENERATOR STREQUAL "Unix Makefiles")
         set(arguments "\\$(ARGS)")
     endif()
 
+    function(havestl var access VALUE)
+        if (NOT VALUE STREQUAL "")
+            file(WRITE ${CMAKE_BINARY_DIR}/stl "${VALUE}")
+        endif()
+    endfunction()
+    variable_watch(CMAKE_CXX_STANDARD_LIBRARIES havestl)
+
     add_custom_target(${CREATEAPK_TARGET_NAME}
         COMMAND cmake -E echo "Generating 
$<TARGET_NAME:${QTANDROID_EXPORTED_TARGET}> with 
$<TARGET_FILE_DIR:Qt5::qmake>/androiddeployqt"
         COMMAND cmake -E remove_directory "${EXPORT_DIR}"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/extra-cmake-modules-5.44.0/toolchain/deployment-file.json.in 
new/extra-cmake-modules-5.45.0/toolchain/deployment-file.json.in
--- old/extra-cmake-modules-5.44.0/toolchain/deployment-file.json.in    
2018-03-03 10:48:12.000000000 +0100
+++ new/extra-cmake-modules-5.45.0/toolchain/deployment-file.json.in    
2018-04-04 18:46:25.000000000 +0200
@@ -5,12 +5,15 @@
    "toolchain-prefix": "@ANDROID_TOOLCHAIN@",
    "tool-prefix": "@ANDROID_COMPILER_PREFIX@",
    "toolchain-version": "@ANDROID_GCC_VERSION@",
-   "ndk-host": "@_HOST@",
+   "ndk-host": "@_LOWER_CMAKE_HOST_SYSTEM_NAME@-@CMAKE_HOST_SYSTEM_PROCESSOR@",
    "target-architecture": "@ANDROID_ABI@",
    "application-binary": "@EXECUTABLE_DESTINATION_PATH@",
    "qml-root-path": "@CMAKE_SOURCE_DIR@",
+   "qml-import-paths": "@QML_IMPORT_PATHS@",
    ##EXTRALIBS##
    ##EXTRAPLUGINS##
    "android-package-source-directory": "@ANDROID_APK_DIR@",
-   "sdkBuildToolsRevision": "@ANDROID_SDK_BUILD_TOOLS_REVISION@"
+   "stdcpp-path":##CMAKE_CXX_STANDARD_LIBRARIES##,
+   "sdkBuildToolsRevision": "@ANDROID_SDK_BUILD_TOOLS_REVISION@",
+   "extraPrefixDirs": [ @EXTRA_PREFIX_DIRS@ ]
 }
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/extra-cmake-modules-5.44.0/toolchain/specifydependencies.cmake 
new/extra-cmake-modules-5.45.0/toolchain/specifydependencies.cmake
--- old/extra-cmake-modules-5.44.0/toolchain/specifydependencies.cmake  
2018-03-03 10:48:12.000000000 +0100
+++ new/extra-cmake-modules-5.45.0/toolchain/specifydependencies.cmake  
2018-04-04 18:46:25.000000000 +0200
@@ -42,6 +42,9 @@
 endif()
 
 file(READ "${INPUT_FILE}" CONTENTS)
+file(READ "stl" stl_contents)
+
 string(REPLACE "##EXTRALIBS##" "${extralibs}" NEWCONTENTS "${CONTENTS}")
 string(REPLACE "##EXTRAPLUGINS##" "${extraplugins}" NEWCONTENTS 
"${NEWCONTENTS}")
+string(REPLACE "##CMAKE_CXX_STANDARD_LIBRARIES##" "${stl_contents}" 
NEWCONTENTS "${NEWCONTENTS}")
 file(WRITE "${OUTPUT_FILE}" ${NEWCONTENTS})


Reply via email to