Hello community,
here is the log from the commit of package extra-cmake-modules for
openSUSE:Factory checked in at 2018-01-22 15:57:47
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/extra-cmake-modules (Old)
and /work/SRC/openSUSE:Factory/.extra-cmake-modules.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "extra-cmake-modules"
Mon Jan 22 15:57:47 2018 rev:49 rq:566651 version:5.42.0
Changes:
--------
--- /work/SRC/openSUSE:Factory/extra-cmake-modules/extra-cmake-modules.changes
2018-01-09 14:47:29.903822118 +0100
+++
/work/SRC/openSUSE:Factory/.extra-cmake-modules.new/extra-cmake-modules.changes
2018-01-22 15:59:04.424520405 +0100
@@ -1,0 +2,11 @@
+Tue Jan 16 22:50:13 CET 2018 - [email protected]
+
+- Update to 5.42.0
+ * New feature release
+ * For more details please see:
+ * https://www.kde.org/announcements/kde-frameworks-5.42.0.php
+- Changes since 5.41.0:
+ * Use readelf to find project dependencies
+ * Introduce INSTALL_PREFIX_SCRIPT to easily set up prefixes
+
+-------------------------------------------------------------------
Old:
----
extra-cmake-modules-5.41.0.tar.xz
New:
----
extra-cmake-modules-5.42.0.tar.xz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ extra-cmake-modules.spec ++++++
--- /var/tmp/diff_new_pack.5OP1zq/_old 2018-01-22 15:59:05.092489143 +0100
+++ /var/tmp/diff_new_pack.5OP1zq/_new 2018-01-22 15:59:05.096488956 +0100
@@ -16,7 +16,7 @@
#
-%define _tar_path 5.41
+%define _tar_path 5.42
# 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.41.0
+Version: 5.42.0
Release: 0
Summary: CMake modules
License: BSD-3-Clause
++++++ extra-cmake-modules-5.41.0.tar.xz -> extra-cmake-modules-5.42.0.tar.xz
++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/extra-cmake-modules-5.41.0/CMakeLists.txt
new/extra-cmake-modules-5.42.0/CMakeLists.txt
--- old/extra-cmake-modules-5.41.0/CMakeLists.txt 2017-11-30
08:42:14.000000000 +0100
+++ new/extra-cmake-modules-5.42.0/CMakeLists.txt 2017-12-20
22:35:02.000000000 +0100
@@ -32,7 +32,7 @@
# Preliminary setup
#
-set(VERSION "5.41.0") # handled by release scripts
+set(VERSION "5.42.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.41.0/kde-modules/KDEInstallDirs.cmake
new/extra-cmake-modules-5.42.0/kde-modules/KDEInstallDirs.cmake
--- old/extra-cmake-modules-5.41.0/kde-modules/KDEInstallDirs.cmake
2017-11-30 08:42:14.000000000 +0100
+++ new/extra-cmake-modules-5.42.0/kde-modules/KDEInstallDirs.cmake
2017-12-20 22:35:02.000000000 +0100
@@ -190,6 +190,11 @@
#
# NB: The variables starting ``KDE_INSTALL_`` are available since 1.6.0,
# unless otherwise noted with the variable.
+#
+# The ``KDE_INSTALL_PREFIX_SCRIPT`` option will install a
${CMAKE_INSTALL_PREFIX}/prefix.sh
+# file that allows to easily incorporate the necessary environment variables
+# for the prefix into a process.
+#
#=============================================================================
# Copyright 2014-2015 Alex Merry <[email protected]>
@@ -689,3 +694,14 @@
if(NOT "${PROJECT_NAME}" STREQUAL "Project")
set(CMAKE_INSTALL_DEFAULT_COMPONENT_NAME "${PROJECT_NAME}")
endif()
+
+
+###################################################################
+# Prefix set up
+
+configure_file(${CMAKE_CURRENT_LIST_DIR}/prefix.sh.cmake
${CMAKE_CURRENT_BINARY_DIR}/prefix.sh @ONLY)
+
+option(KDE_INSTALL_PREFIX_SCRIPT "Installs ${CMAKE_INSTALL_PREFIX}/prefix.sh
that sets up the necessary environment variables" OFF)
+if(KDE_INSTALL_PREFIX_SCRIPT)
+ install(FILES ${CMAKE_CURRENT_BINARY_DIR}/prefix.sh DESTINATION
${CMAKE_INSTALL_PREFIX} PERMISSIONS OWNER_EXECUTE OWNER_WRITE OWNER_READ)
+endif()
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/extra-cmake-modules-5.41.0/kde-modules/prefix.sh.cmake
new/extra-cmake-modules-5.42.0/kde-modules/prefix.sh.cmake
--- old/extra-cmake-modules-5.41.0/kde-modules/prefix.sh.cmake 1970-01-01
01:00:00.000000000 +0100
+++ new/extra-cmake-modules-5.42.0/kde-modules/prefix.sh.cmake 2017-12-20
22:35:02.000000000 +0100
@@ -0,0 +1,8 @@
+export PATH=@KDE_INSTALL_FULL_BINDIR@:$PATH
+export LD_LIBRARY_PATH=@KDE_INSTALL_FULL_LIBDIR@:$LD_LIBRARY_PATH
+
+export
XDG_DATA_DIRS=@KDE_INSTALL_FULL_DATADIR@:${XDG_DATA_DIRS:-/usr/local/share/:/usr/share/}
+export XDG_CONFIG_DIRS=@KDE_INSTALL_FULL_CONFDIR@:${XDG_CONFIG_DIRS:-/etc/xdg}
+
+export QT_PLUGIN_PATH=@KDE_INSTALL_FULL_QTPLUGINDIR@:$QT_PLUGIN_PATH
+export QML2_IMPORT_PATH=@KDE_INSTALL_FULL_QMLDIR@:$QML2_IMPORT_PATH
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/extra-cmake-modules-5.41.0/tests/CMakeLists.txt
new/extra-cmake-modules-5.42.0/tests/CMakeLists.txt
--- old/extra-cmake-modules-5.41.0/tests/CMakeLists.txt 2017-11-30
08:42:14.000000000 +0100
+++ new/extra-cmake-modules-5.42.0/tests/CMakeLists.txt 2017-12-20
22:35:02.000000000 +0100
@@ -56,7 +56,6 @@
add_subdirectory(ECMGenerateHeadersTest)
add_subdirectory(ECMSetupVersionTest)
add_subdirectory(ECMGeneratePkgConfigFile)
-add_subdirectory(ECMToolchainAndroidTest)
# a macro for tests that have a simple format where the name matches the
# directory and project
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/extra-cmake-modules-5.41.0/tests/ECMToolchainAndroidTest/CMakeLists.txt
new/extra-cmake-modules-5.42.0/tests/ECMToolchainAndroidTest/CMakeLists.txt
--- old/extra-cmake-modules-5.41.0/tests/ECMToolchainAndroidTest/CMakeLists.txt
2017-11-30 08:42:14.000000000 +0100
+++ new/extra-cmake-modules-5.42.0/tests/ECMToolchainAndroidTest/CMakeLists.txt
1970-01-01 01:00:00.000000000 +0100
@@ -1,23 +0,0 @@
-project(AndroidToolchainTest)
-cmake_minimum_required(VERSION 2.8.12)
-
-set(CMAKE_MODULE_PATH
- ${CMAKE_CURRENT_SOURCE_DIR}/../../modules
- ${CMAKE_CURRENT_SOURCE_DIR}/../../toolchain
-)
-
-set(TARGET_DIR "${CMAKE_CURRENT_SOURCE_DIR}/testlinkfile")
-set(TARGET_NAME "testtarget")
-set(OUTPUT_FILE "${CMAKE_CURRENT_BINARY_DIR}/androidtest_output.txt")
-set(INPUT_FILE "${CMAKE_CURRENT_SOURCE_DIR}/testlinkfile/outputfake.json")
-
-# test correct include resolution
-include(specifydependencies)
-
-file(READ "${OUTPUT_FILE}" TEST_RESULT)
-string(FIND ${TEST_RESULT} "libKF5Attica.so" CMP_RESULT)
-if (${CMP_RESULT} EQUAL -1)
- message(SEND_ERROR "Could not find relative library libKF5Attica.so")
-endif()
-
-add_executable(dummy main.c)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/extra-cmake-modules-5.41.0/tests/ECMToolchainAndroidTest/main.c
new/extra-cmake-modules-5.42.0/tests/ECMToolchainAndroidTest/main.c
--- old/extra-cmake-modules-5.41.0/tests/ECMToolchainAndroidTest/main.c
2017-11-30 08:42:14.000000000 +0100
+++ new/extra-cmake-modules-5.42.0/tests/ECMToolchainAndroidTest/main.c
1970-01-01 01:00:00.000000000 +0100
@@ -1,4 +0,0 @@
-int main()
-{
- return 0;
-}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/extra-cmake-modules-5.41.0/tests/ECMToolchainAndroidTest/testlinkfile/CMakeFiles/testtarget.dir/link.txt
new/extra-cmake-modules-5.42.0/tests/ECMToolchainAndroidTest/testlinkfile/CMakeFiles/testtarget.dir/link.txt
---
old/extra-cmake-modules-5.41.0/tests/ECMToolchainAndroidTest/testlinkfile/CMakeFiles/testtarget.dir/link.txt
2017-11-30 08:42:14.000000000 +0100
+++
new/extra-cmake-modules-5.42.0/tests/ECMToolchainAndroidTest/testlinkfile/CMakeFiles/testtarget.dir/link.txt
1970-01-01 01:00:00.000000000 +0100
@@ -1 +0,0 @@
-/usr/bin/c++ -pipe -DQT_STRICT_ITERATORS -DQURL_NO_CAST_FROM_STRING
-DQT_NO_HTTP -DQT_NO_FTP -Wformat -Werror=format-security -Werror=return-type
-Wno-variadic-macros -Wlogical-op -std=c++0x -fno-exceptions -Wall -Wextra
-Wcast-align -Wchar-subscripts -Wformat-security -Wno-long-long -Wpointer-arith
-Wundef -Wnon-virtual-dtor -Woverloaded-virtual -Werror=return-type -pedantic
-g -Wl,--enable-new-dtags CMakeFiles/persontest.dir/persontest.cpp.o
CMakeFiles/persontest.dir/persontest_automoc.cpp.o -o testtarget -rdynamic
/opt/qt5/qtbase/lib/libQt5Test.so.5.6.1 ../src/libKF5Attica.so.5.23.0
/opt/qt5/qtbase/lib/libQt5Network.so.5.6.1
/opt/qt5/qtbase/lib/libQt5Core.so.5.6.1
-Wl,-rpath,/opt/qt5/qtbase/lib:/opt/kde/build/frameworks/attica/src
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/extra-cmake-modules-5.41.0/tests/ECMToolchainAndroidTest/testlinkfile/outputfake.json
new/extra-cmake-modules-5.42.0/tests/ECMToolchainAndroidTest/testlinkfile/outputfake.json
---
old/extra-cmake-modules-5.41.0/tests/ECMToolchainAndroidTest/testlinkfile/outputfake.json
2017-11-30 08:42:14.000000000 +0100
+++
new/extra-cmake-modules-5.42.0/tests/ECMToolchainAndroidTest/testlinkfile/outputfake.json
1970-01-01 01:00:00.000000000 +0100
@@ -1 +0,0 @@
-##EXTRALIBS##
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/extra-cmake-modules-5.41.0/toolchain/Android.cmake
new/extra-cmake-modules-5.42.0/toolchain/Android.cmake
--- old/extra-cmake-modules-5.41.0/toolchain/Android.cmake 2017-11-30
08:42:14.000000000 +0100
+++ new/extra-cmake-modules-5.42.0/toolchain/Android.cmake 2017-12-20
22:35:02.000000000 +0100
@@ -246,7 +246,7 @@
COMMAND cmake -E remove_directory "${EXPORT_DIR}"
COMMAND cmake -E copy_directory "${ANDROID_APK_DIR}" "${EXPORT_DIR}"
COMMAND cmake -E copy "$<TARGET_FILE:${QTANDROID_EXPORTED_TARGET}>"
"${EXECUTABLE_DESTINATION_PATH}"
- COMMAND cmake
-DINPUT_FILE="${QTANDROID_EXPORTED_TARGET}-deployment.json.in"
-DOUTPUT_FILE="${QTANDROID_EXPORTED_TARGET}-deployment.json"
"-DTARGET_DIR=$<TARGET_FILE_DIR:${QTANDROID_EXPORTED_TARGET}>"
"-DTARGET_NAME=${QTANDROID_EXPORTED_TARGET}"
"-DEXPORT_DIR=${CMAKE_INSTALL_PREFIX}" -P
${_CMAKE_ANDROID_DIR}/specifydependencies.cmake
+ COMMAND LANG=C cmake
-DINPUT_FILE="${QTANDROID_EXPORTED_TARGET}-deployment.json.in"
-DOUTPUT_FILE="${QTANDROID_EXPORTED_TARGET}-deployment.json"
"-DTARGET=$<TARGET_FILE:${QTANDROID_EXPORTED_TARGET}>"
"-DOUTPUT_DIR=$<TARGET_FILE_DIR:${QTANDROID_EXPORTED_TARGET}>"
"-DEXPORT_DIR=${CMAKE_INSTALL_PREFIX}"
"-DECM_ADDITIONAL_FIND_ROOT_PATH=\"${ECM_ADDITIONAL_FIND_ROOT_PATH}\"" -P
${_CMAKE_ANDROID_DIR}/specifydependencies.cmake
COMMAND $<TARGET_FILE_DIR:Qt5::qmake>/androiddeployqt --gradle --input
"${QTANDROID_EXPORTED_TARGET}-deployment.json" --output "${EXPORT_DIR}"
--deployment bundled ${arguments}
)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/extra-cmake-modules-5.41.0/toolchain/specifydependencies.cmake
new/extra-cmake-modules-5.42.0/toolchain/specifydependencies.cmake
--- old/extra-cmake-modules-5.41.0/toolchain/specifydependencies.cmake
2017-11-30 08:42:14.000000000 +0100
+++ new/extra-cmake-modules-5.42.0/toolchain/specifydependencies.cmake
2017-12-20 22:35:02.000000000 +0100
@@ -1,27 +1,29 @@
-file(READ "${TARGET_DIR}/CMakeFiles/${TARGET_NAME}.dir/link.txt" out)
+execute_process(COMMAND readelf --wide --dynamic ${TARGET} ERROR_VARIABLE
readelf_errors OUTPUT_VARIABLE out RESULT_VARIABLE result)
-string(FIND "${out}" "-o ${TARGET_NAME}" POS) #we trim the initial arguments,
we want the ones in the end. we find the target
-string(SUBSTRING "${out}" ${POS} -1 out) #we
-string(REGEX MATCHALL "(/|\\.\\./|\\./)[^ ]+\\.so" outout "${out}")
-string(STRIP "${outout}" outout)
-string(REPLACE " /" ";/" outout "${outout}")
+if (NOT result EQUAL 0)
+ message(FATAL_ERROR "readelf failed on ${TARGET} exit(${result}):
${readelf_errors}")
+endif()
+string(REPLACE "\n" ";" lines "${out}")
set(extralibs)
-foreach(lib IN LISTS outout) #now we filter Qt5 libraries, because Qt wants to
take care about these itself
- if(NOT ${lib} MATCHES ".*/libQt5.*")
- # resolve relative paths
- if(${lib} MATCHES "^(\\.\\./|\\./)")
- set(lib "${TARGET_DIR}/${lib}")
- endif()
- if(extralibs)
- set(extralibs "${extralibs},${lib}")
+foreach(line ${lines})
+ string(REGEX MATCH ".*\\(NEEDED\\) +Shared library: +\\[(.+)\\]$" matched
${line})
+ set(currentLib ${CMAKE_MATCH_1})
+
+ if(NOT ${currentLib} MATCHES "libQt5.*" AND matched)
+ find_file(ourlib-${currentLib} ${currentLib} HINTS ${OUTPUT_DIR}
${EXPORT_DIR} ${ECM_ADDITIONAL_FIND_ROOT_PATH} NO_DEFAULT_PATH PATH_SUFFIXES
lib)
+
+ if(ourlib-${currentLib})
+ list(APPEND extralibs "${ourlib-${currentLib}}")
else()
- set(extralibs "${lib}")
+ message(STATUS "could not find ${currentLib} in ${OUTPUT_DIR}
${EXPORT_DIR}/lib/ ${ECM_ADDITIONAL_FIND_ROOT_PATH}")
endif()
endif()
endforeach()
+
if(extralibs)
- set(extralibs "\"android-extra-libs\": \"${extralibs}\",")
+ string(REPLACE ";" "," libs "${extralibs}")
+ set(extralibs "\"android-extra-libs\": \"${libs}\",")
endif()
set(extraplugins)