Hello community,

here is the log from the commit of package libArcus for openSUSE:Factory 
checked in at 2020-11-11 20:47:40
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/libArcus (Old)
 and      /work/SRC/openSUSE:Factory/.libArcus.new.26437 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "libArcus"

Wed Nov 11 20:47:40 2020 rev:12 rq:847705 version:4.8.0

Changes:
--------
--- /work/SRC/openSUSE:Factory/libArcus/libArcus.changes        2020-09-17 
14:48:54.219799495 +0200
+++ /work/SRC/openSUSE:Factory/.libArcus.new.26437/libArcus.changes     
2020-11-11 20:47:54.723732626 +0100
@@ -1,0 +2,8 @@
+Tue Nov 10 18:06:37 UTC 2020 - Stefan BrĂ¼ns <stefan.bru...@rwth-aachen.de>
+
+- update to 4.8.0
+  * no code changes, just some build system churn.
+- Fix build error with Python 3.8, add
+  0001-Fix-build-with-Python-3.8-and-no-undefined-linker-flags.patch
+
+-------------------------------------------------------------------

Old:
----
  libArcus-4.7.1.tar.gz

New:
----
  0001-Fix-build-with-Python-3.8-and-no-undefined-linker-flags.patch
  libArcus-4.8.0.tar.gz

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

Other differences:
------------------
++++++ libArcus.spec ++++++
--- /var/tmp/diff_new_pack.VxdrGJ/_old  2020-11-11 20:47:55.363733227 +0100
+++ /var/tmp/diff_new_pack.VxdrGJ/_new  2020-11-11 20:47:55.367733231 +0100
@@ -18,15 +18,18 @@
 
 %define sover 3
 Name:           libArcus
-Version:        4.7.1
+%define sversion        4.8
+Version:        4.8.0
 Release:        0
 Summary:        3D printer control software
 License:        LGPL-3.0-only
 Group:          Development/Libraries/C and C++
-URL:            http://github.com/Ultimaker/%name
-Source:         
https://github.com/Ultimaker/libArcus/archive/%{version}.tar.gz#/%{name}-%{version}.tar.gz
+URL:            https://github.com/Ultimaker/%name
+Source:         
https://github.com/Ultimaker/libArcus/archive/%{sversion}.tar.gz#/%{name}-%{version}.tar.gz
 # PATCH-FIX-OPENSUSE - use Qt5 sip import name, taken from Fedora
 Patch0:         libArcus-3.5.1-PyQt5.sip.patch
+# PATCH-FIX-UPSTREAM - https://github.com/Ultimaker/libArcus/pull/113
+Patch1:         
0001-Fix-build-with-Python-3.8-and-no-undefined-linker-flags.patch
 BuildRequires:  cmake >= 3.6
 BuildRequires:  gcc-c++
 BuildRequires:  protobuf-devel >= 3.0.0
@@ -54,8 +57,9 @@
 tools necessary for compiling and linking programs which use %{name}.
 
 %prep
-%setup
+%setup -n %{name}-%{sversion}
 %patch0 -p1
+%patch1 -p1
 
 %build
 %cmake

++++++ 0001-Fix-build-with-Python-3.8-and-no-undefined-linker-flags.patch ++++++
From 53959415a4748a3518a6586fab6b8f821bb121c3 Mon Sep 17 00:00:00 2001
From: StefanBruens <stefan.bru...@rwth-aachen.de>
Date: Sun, 25 Oct 2020 06:23:16 +0100
Subject: [PATCH] Fix build with Python 3.8 and --no-undefined linker flags

Currently the build uses the CMAKE_SHARED_LINKER_FLAGS for both
the libArcus shared library as well as the Python module. Starting with
Python 3.8 the Python module is no longer linked to libpython, and thus
some symbols stay undefined.

The correct build type for python modules is "MODULE", which uses the
distinct CMAKE_MODULE_LINKER_FLAGS. This allows to keep the
'-Wl,--no-undefined' linker flag for libArcus.

https://github.com/Ultimaker/libArcus/pull/109
---
 cmake/SIPMacros.cmake | 7 +------
 1 file changed, 1 insertion(+), 6 deletions(-)

diff --git a/cmake/SIPMacros.cmake b/cmake/SIPMacros.cmake
index e80198f..50553e0 100644
--- a/cmake/SIPMacros.cmake
+++ b/cmake/SIPMacros.cmake
@@ -105,12 +105,7 @@ MACRO(ADD_SIP_PYTHON_MODULE MODULE_NAME MODULE_SIP)
         COMMAND ${SIP_EXECUTABLE} ${_sip_tags} ${_sip_x} ${SIP_EXTRA_OPTIONS} 
-j ${SIP_CONCAT_PARTS} -c ${CMAKE_CURRENT_BINARY_DIR}/${_module_path} 
${_sip_includes} ${_abs_module_sip}
         DEPENDS ${_abs_module_sip} ${SIP_EXTRA_FILES_DEPEND}
     )
-    # not sure if type MODULE could be uses anywhere, limit to cygwin for now
-    IF (CYGWIN OR APPLE)
-        ADD_LIBRARY(${_logical_name} MODULE ${_sip_output_files} 
${SIP_EXTRA_SOURCE_FILES})
-    ELSE (CYGWIN OR APPLE)
-        ADD_LIBRARY(${_logical_name} SHARED ${_sip_output_files} 
${SIP_EXTRA_SOURCE_FILES})
-    ENDIF (CYGWIN OR APPLE)
+    ADD_LIBRARY(${_logical_name} MODULE ${_sip_output_files} 
${SIP_EXTRA_SOURCE_FILES})
     IF (NOT APPLE)
         IF ("${Python3_VERSION_MINOR}" GREATER 7)
             MESSAGE(STATUS "Python > 3.7 - not linking to libpython")
++++++ libArcus-4.7.1.tar.gz -> libArcus-4.8.0.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libArcus-4.7.1/CMakeLists.txt 
new/libArcus-4.8/CMakeLists.txt
--- old/libArcus-4.7.1/CMakeLists.txt   2020-08-06 13:55:39.000000000 +0200
+++ new/libArcus-4.8/CMakeLists.txt     2020-10-09 18:43:28.000000000 +0200
@@ -24,16 +24,10 @@
 if(BUILD_PYTHON)
     list(APPEND CMAKE_MODULE_PATH ${CMAKE_SOURCE_DIR}/cmake)
 
-    # FIXME: Remove the code for CMake <3.12 once we have switched over 
completely.
-    # FindPython3 is a new module since CMake 3.12. It deprecates 
FindPythonInterp and FindPythonLibs.
-    if(${CMAKE_VERSION} VERSION_LESS 3.12)
-        # Use FindPythonInterp and FindPythonLibs for CMake <3.12
-        find_package(PythonInterp 3.4 REQUIRED)
-        find_package(PythonLibs 3.4 REQUIRED)
-    else()
-        # Use FindPython3 for CMake >=3.12
-        find_package(Python3 3.4 REQUIRED COMPONENTS Interpreter Development)
-    endif()
+    # FIXME: Use FindPython3 to find Python, new in CMake 3.12.
+    # However currently on our CI server it finds the wrong Python version and 
then doesn't find the headers.
+    find_package(PythonInterp 3.4 REQUIRED)
+    find_package(PythonLibs 3.4 REQUIRED)
 
     find_package(SIP REQUIRED)
     if(NOT DEFINED LIB_SUFFIX)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libArcus-4.7.1/README.md new/libArcus-4.8/README.md
--- old/libArcus-4.7.1/README.md        2020-08-06 13:55:39.000000000 +0200
+++ new/libArcus-4.8/README.md  2020-10-09 18:43:28.000000000 +0200
@@ -29,8 +29,7 @@
 
 To disable building the Python bindings, set BUILD_PYTHON to OFF. They will be
 installed into ```$prefix/lib/python3/dist-packages``` on Debian-based systems
-and into ```$prefix/lib/python3.4/site-packages``` on other computers. To
-override this directory, set ```PYTHON_SITE_PACKAGES_DIR```.
+and into ```$prefix/lib/python3.4/site-packages``` on other computers.
 
 Building the Python bindings on 64-bit Windows requires you to build with 
Microsoft Visual
 C++ since the module will fail to import if built with MinGW.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libArcus-4.7.1/cmake/FindSIP.cmake 
new/libArcus-4.8/cmake/FindSIP.cmake
--- old/libArcus-4.7.1/cmake/FindSIP.cmake      2020-08-06 13:55:39.000000000 
+0200
+++ new/libArcus-4.8/cmake/FindSIP.cmake        2020-10-09 18:43:28.000000000 
+0200
@@ -24,46 +24,41 @@
     set(CMAKE_FIND_FRAMEWORK LAST)
 endif()
 
-# FIXME: Remove the code for CMake <3.12 once we have switched over completely.
-# FindPython3 is a new module since CMake 3.12. It deprecates FindPythonInterp 
and FindPythonLibs.
-if(${CMAKE_VERSION} VERSION_LESS 3.12)
-    # Use FindPythonInterp and FindPythonLibs for CMake <3.12
-    find_package(PythonInterp 3.4 REQUIRED)
-    find_package(PythonLibs 3.4 REQUIRED)
+# FIXME: Use FindPython3 to find Python, new in CMake 3.12.
+# However currently on our CI server it finds the wrong Python version and 
then doesn't find the headers.
+find_package(PythonInterp 3.5 REQUIRED)
+find_package(PythonLibs 3.5 REQUIRED)
 
-    # Define variables that are available in FindPython3, so there's no need 
to branch off in the later part.
-    set(Python3_EXECUTABLE ${PYTHON_EXECUTABLE})
-    set(Python3_INCLUDE_DIRS ${PYTHON_INCLUDE_DIRS})
-    set(Python3_LIBRARIES ${PYTHON_LIBRARIES})
+# Define variables that are available in FindPython3, so there's no need to 
branch off in the later part.
+set(Python3_EXECUTABLE ${PYTHON_EXECUTABLE})
+set(Python3_INCLUDE_DIRS ${PYTHON_INCLUDE_DIRS})
+set(Python3_LIBRARIES ${PYTHON_LIBRARIES})
+set(Python3_VERSION_MINOR "${PYTHON_VERSION_MINOR}")
 
-    execute_process(
-        COMMAND ${Python3_EXECUTABLE} -c
-                "import distutils.sysconfig; 
print(distutils.sysconfig.get_python_lib(plat_specific=False,standard_lib=False))"
-        RESULT_VARIABLE _process_status
-        OUTPUT_VARIABLE _process_output
-        OUTPUT_STRIP_TRAILING_WHITESPACE
-    )
-    if(${_process_status} EQUAL 0)
-        string(STRIP ${_process_output} Python3_SITELIB)
-    else()
-        message(FATAL_ERROR "Failed to get Python3_SITELIB. Error: 
${_process_output}")
-    endif()
+execute_process(
+   COMMAND ${Python3_EXECUTABLE} -c
+           "import distutils.sysconfig; 
print(distutils.sysconfig.get_python_lib(plat_specific=False,standard_lib=False))"
+   RESULT_VARIABLE _process_status
+   OUTPUT_VARIABLE _process_output
+   OUTPUT_STRIP_TRAILING_WHITESPACE
+)
+if(${_process_status} EQUAL 0)
+   string(STRIP ${_process_output} Python3_SITELIB)
+else()
+   message(FATAL_ERROR "Failed to get Python3_SITELIB. Error: 
${_process_output}")
+endif()
 
-    execute_process(
-        COMMAND ${Python3_EXECUTABLE} -c
-                "import distutils.sysconfig; 
print(distutils.sysconfig.get_python_lib(plat_specific=True,standard_lib=False))"
-        RESULT_VARIABLE _process_status
-        OUTPUT_VARIABLE _process_output
-        OUTPUT_STRIP_TRAILING_WHITESPACE
-    )
-    if(${_process_status} EQUAL 0)
-        string(STRIP ${_process_output} Python3_SITEARCH)
-    else()
-        message(FATAL_ERROR "Failed to get Python3_SITEARCH. Error: 
${_process_output}")
-    endif()
+execute_process(
+   COMMAND ${Python3_EXECUTABLE} -c
+           "import distutils.sysconfig; 
print(distutils.sysconfig.get_python_lib(plat_specific=True,standard_lib=False))"
+   RESULT_VARIABLE _process_status
+   OUTPUT_VARIABLE _process_output
+   OUTPUT_STRIP_TRAILING_WHITESPACE
+)
+if(${_process_status} EQUAL 0)
+   string(STRIP ${_process_output} Python3_SITEARCH)
 else()
-    # Use FindPython3 for CMake >=3.12
-    find_package(Python3 3.4 REQUIRED COMPONENTS Interpreter Development)
+   message(FATAL_ERROR "Failed to get Python3_SITEARCH. Error: 
${_process_output}")
 endif()
 
 get_filename_component(_python_binary_path ${Python3_EXECUTABLE} DIRECTORY)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libArcus-4.7.1/cmake/SIPMacros.cmake 
new/libArcus-4.8/cmake/SIPMacros.cmake
--- old/libArcus-4.7.1/cmake/SIPMacros.cmake    2020-08-06 13:55:39.000000000 
+0200
+++ new/libArcus-4.8/cmake/SIPMacros.cmake      2020-10-09 18:43:28.000000000 
+0200
@@ -112,7 +112,11 @@
         ADD_LIBRARY(${_logical_name} SHARED ${_sip_output_files} 
${SIP_EXTRA_SOURCE_FILES})
     ENDIF (CYGWIN OR APPLE)
     IF (NOT APPLE)
-        TARGET_LINK_LIBRARIES(${_logical_name} ${Python3_LIBRARIES})
+        IF ("${Python3_VERSION_MINOR}" GREATER 7)
+            MESSAGE(STATUS "Python > 3.7 - not linking to libpython")
+        ELSE ()
+            TARGET_LINK_LIBRARIES(${_logical_name} ${Python3_LIBRARIES})
+        ENDIF ()
     ENDIF (NOT APPLE)
     TARGET_LINK_LIBRARIES(${_logical_name} ${EXTRA_LINK_LIBRARIES})
     IF (APPLE)
_______________________________________________
openSUSE Commits mailing list -- commit@lists.opensuse.org
To unsubscribe, email commit-le...@lists.opensuse.org
List Netiquette: https://en.opensuse.org/openSUSE:Mailing_list_netiquette
List Archives: 
https://lists.opensuse.org/archives/list/commit@lists.opensuse.org

Reply via email to