Hello community,

here is the log from the commit of package kvirc for openSUSE:Factory checked 
in at 2020-01-17 16:05:54
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/kvirc (Old)
 and      /work/SRC/openSUSE:Factory/.kvirc.new.26092 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "kvirc"

Fri Jan 17 16:05:54 2020 rev:42 rq:765064 version:5.0.0

Changes:
--------
--- /work/SRC/openSUSE:Factory/kvirc/kvirc.changes      2019-02-15 
09:54:58.787767978 +0100
+++ /work/SRC/openSUSE:Factory/.kvirc.new.26092/kvirc.changes   2020-01-17 
16:06:18.240466070 +0100
@@ -1,0 +2,10 @@
+Thu Jan 16 11:34:54 UTC 2020 - Christophe Giboudeaux <[email protected]>
+
+- Add patches to use Python 3:
+  * 0001-Add-support-for-Python-3.patch
+  * 0001-This-is-not-necessary-anymore.patch
+  * 0001-Replace-FindPythonLibs-with-FindPython3-in-CMake.patch
+  * 0001-Stop-unsetting-_DEBUG-when-including-Python.h.patch
+- Drop obsolete conditions
+
+-------------------------------------------------------------------

New:
----
  0001-Add-support-for-Python-3.patch
  0001-Replace-FindPythonLibs-with-FindPython3-in-CMake.patch
  0001-Stop-unsetting-_DEBUG-when-including-Python.h.patch
  0001-This-is-not-necessary-anymore.patch

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

Other differences:
------------------
++++++ kvirc.spec ++++++
--- /var/tmp/diff_new_pack.4OEjtf/_old  2020-01-17 16:06:19.204466525 +0100
+++ /var/tmp/diff_new_pack.4OEjtf/_new  2020-01-17 16:06:19.208466527 +0100
@@ -1,7 +1,7 @@
 #
 # spec file for package kvirc
 #
-# Copyright (c) 2019 SUSE LINUX GmbH, Nuernberg, Germany.
+# Copyright (c) 2020 SUSE LLC
 #
 # All modifications and additions to the file contributed by third parties
 # remain the property of their copyright owners, unless otherwise agreed
@@ -24,8 +24,13 @@
 Group:          Productivity/Networking/IRC
 URL:            http://www.kvirc.net/
 Source:         
ftp://ftp.kvirc.net/pub/kvirc/%{version}/source/KVIrc-%{version}.tar.bz2
+# PATCH-FIX-UPSTREAM -- Patch0 to Patch3 replace python2 with python3
+Patch0:         0001-Add-support-for-Python-3.patch
+Patch1:         0001-This-is-not-necessary-anymore.patch
+Patch2:         0001-Replace-FindPythonLibs-with-FindPython3-in-CMake.patch
+Patch3:         0001-Stop-unsetting-_DEBUG-when-including-Python.h.patch
 BuildRequires:  audiofile-devel
-BuildRequires:  cmake >= 3.1.0
+BuildRequires:  cmake >= 3.12.0
 BuildRequires:  doxygen
 BuildRequires:  enchant-devel
 BuildRequires:  extra-cmake-modules
@@ -37,7 +42,7 @@
 BuildRequires:  perl
 BuildRequires:  phonon4qt5-devel
 BuildRequires:  pkgconfig
-BuildRequires:  python-devel
+BuildRequires:  python3-devel
 BuildRequires:  subversion
 BuildRequires:  update-desktop-files
 BuildRequires:  zlib-devel
@@ -60,10 +65,6 @@
 BuildRequires:  cmake(Qt5Xml)
 %requires_eq    perl
 Obsoletes:      %{name}-devel < %{version}
-%if 0%{?suse_version} < 1500
-# It does not build with the default compiler (GCC 4.8) on Leap 42.x
-BuildRequires:  gcc7-c++
-%endif
 
 %description
 IRC (Internet Relay Chat) client with an MDI interface; scripting,
@@ -71,15 +72,9 @@
 SOCKSV4 & V5 support; and more.
 
 %prep
-%setup -q -n KVIrc-%{version}
+%autosetup -p1 -n KVIrc-%{version}
 
 %build
-%if 0%{?suse_version} < 1500
-# It does not build with the default compiler (GCC 4.8) on Leap 42.x
-export CC=gcc-7
-export CXX=g++-7
-%endif
-
 EXTRA_FLAGS="-UCMAKE_MODULE_LINKER_FLAGS \
 %if "%{?_lib}" == "lib64"
 -DLIB_SUFFIX=64 \
@@ -103,7 +98,7 @@
 popd
 %fdupes %{buildroot}
 
-rm %{buildroot}%{_libdir}/libkvilib.so
+rm %{buildroot}%{_kf5_libdir}/libkvilib.so
 
 %post   -p /sbin/ldconfig
 %postun -p /sbin/ldconfig

++++++ 0001-Add-support-for-Python-3.patch ++++++
>From dbe8ef6dad916124c3714abc469403ed9991261c Mon Sep 17 00:00:00 2001
From: wodim <[email protected]>
Date: Sat, 26 Aug 2017 15:02:56 +0200
Subject: [PATCH] Add support for Python 3

---
 CMakeLists.txt                               |  7 ++----
 src/modules/python/libkvipython.cpp          | 26 ++++++++++++++++++++
 src/modules/pythoncore/kvircmodule.cpp       |  2 +-
 src/modules/pythoncore/pythonheaderwrapper.h |  6 +++++
 4 files changed, 35 insertions(+), 6 deletions(-)

diff --git a/CMakeLists.txt b/CMakeLists.txt
index 57df293..1e07dd1 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -67,9 +67,6 @@ set(CMAKE_KVIRC_BUILD_CPU ${CMAKE_SYSTEM_PROCESSOR})
 set(CMAKE_KVIRC_BUILD_COMPILER ${CMAKE_CXX_COMPILER})
 set(CMAKE_KVIRC_BUILD_COMPILER_FLAGS ${CMAKE_CXX_FLAGS})
 
-# Prefer Python 2.7 over 3.x (which is currently incompatible) - GitHub issue 
#2020
-set(Python_ADDITIONAL_VERSIONS "2.7")
-
 # Suffix for GNU/Linux
 set(LIB_SUFFIX
        CACHE STRING "Define suffix of directory name (32/64)"
@@ -751,10 +748,10 @@ endif()
 # Check for Python support
 option(WANT_PYTHON "Compile Python support" ON)
 if(WANT_PYTHON)
-       find_package(PythonLibs 2.7)
+       find_package(PythonLibs)
        if(PYTHONLIBS_FOUND)
                set(COMPILE_PYTHON_SUPPORT 1)
-               set(CMAKE_STATUS_PYTHON_SUPPORT "Yes")
+               set(CMAKE_STATUS_PYTHON_SUPPORT "Yes, Python 
${PYTHONLIBS_VERSION_STRING}")
                list(APPEND LIBS ${PYTHON_LIBRARIES})
                include_directories(${PYTHON_INCLUDE_DIRS})
        else()
diff --git a/src/modules/python/libkvipython.cpp 
b/src/modules/python/libkvipython.cpp
index 6bdd56a80..700e8939b 100644
--- a/src/modules/python/libkvipython.cpp
+++ b/src/modules/python/libkvipython.cpp
@@ -502,6 +502,31 @@ static bool 
python_kvs_fnc_isAvailable(KviKvsModuleFunctionCall * c)
        return true;
 }
 
+/*
+       @doc: python.version
+       @type:
+               function
+       @title:
+               $python.version
+       @short:
+               Check which version of Python is supported in this build of 
KVIrc
+       @syntax:
+               $python.version
+       @description:
+               Returns which major version of Python is KVIrc linked to 
([b]2[/b] or [b]3[/b])
+               or [b]0[/b] if Python is not supported at all.
+*/
+
+static bool python_kvs_fnc_version(KviKvsModuleFunctionCall * c)
+{
+#ifdef COMPILE_PYTHON_SUPPORT
+       c->returnValue()->setInteger(PY_MAJOR_VERSION);
+#else
+       c->returnValue()->setBoolean(false);
+#endif
+       return true;
+}
+
 static bool python_module_init(KviModule * m)
 {
        // register the command anyway
@@ -509,6 +534,7 @@ static bool python_module_init(KviModule * m)
        KVSM_REGISTER_SIMPLE_COMMAND(m, "destroy", python_kvs_cmd_destroy);
 
        KVSM_REGISTER_FUNCTION(m, "isAvailable", python_kvs_fnc_isAvailable);
+       KVSM_REGISTER_FUNCTION(m, "version", python_kvs_fnc_version);
 #ifdef COMPILE_PYTHON_SUPPORT
        g_pPythonCoreModule = g_pModuleManager->getModule("pythoncore");
 #endif
diff --git a/src/modules/pythoncore/kvircmodule.cpp 
b/src/modules/pythoncore/kvircmodule.cpp
index 8937b6a63..659345d7e 100644
--- a/src/modules/pythoncore/kvircmodule.cpp
+++ b/src/modules/pythoncore/kvircmodule.cpp
@@ -423,7 +423,7 @@ PyMODINIT_FUNC python_init()
        else
        {
                // Create a CObject containing the API pointer array's address
-               PyObject * pC_API_Object = PyCObject_FromVoidPtr(PyKVIrc_API, 
nullptr);
+               PyObject * pC_API_Object = PyCapsule_New((void *)PyKVIrc_API, 
"kvirc._C_API", nullptr);
                if(pC_API_Object)
                        PyModule_AddObject(pModule, "_C_API", pC_API_Object);
        }
diff --git a/src/modules/pythoncore/pythonheaderwrapper.h 
b/src/modules/pythoncore/pythonheaderwrapper.h
index 47f60d361..2b34066c3 100644
--- a/src/modules/pythoncore/pythonheaderwrapper.h
+++ b/src/modules/pythoncore/pythonheaderwrapper.h
@@ -1,6 +1,12 @@
 #ifndef _PYTHONHEADERWRAPPER_H_
 #define _PYTHONHEADERWRAPPER_H_
 
+// As of Python 3, something inside <Python.h> defines a struct with a member
+// called "slots" which conflicts with the builtin Qt keyword. But since we
+// include stuff from KVIrc itself back into the python module, we can't just
+// use QT_NO_KEYWORDS.
+#undef slots
+
 // See 
http://stackoverflow.com/questions/16200997/why-doesnt-include-python-h-work 
and 
http://stackoverflow.com/questions/19716859/puzzling-dependency-of-boost-python-1-54-debug-build-to-python27-lib-on-window
 
 #if defined(_DEBUG) && defined(_MSC_VER)
-- 
2.25.0
++++++ 0001-Replace-FindPythonLibs-with-FindPython3-in-CMake.patch ++++++
>From 2c881f711d518bbe4db95bf183ddc946c12f7751 Mon Sep 17 00:00:00 2001
From: Alexey Sokolov <[email protected]>
Date: Sun, 29 Dec 2019 23:26:31 +0000
Subject: [PATCH] Replace FindPythonLibs with FindPython3 in CMake

---
 CMakeLists.txt | 12 ++++++------
 1 file changed, 6 insertions(+), 6 deletions(-)

diff --git a/CMakeLists.txt b/CMakeLists.txt
index 1e07dd1..7e3607d 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -34,7 +34,7 @@
 ###############################################################################
 
 # Minimum CMake version
-cmake_minimum_required(VERSION 3.1.0)
+cmake_minimum_required(VERSION 3.12.0)
 
 # Name of the project
 project(kvirc)
@@ -748,12 +748,12 @@ endif()
 # Check for Python support
 option(WANT_PYTHON "Compile Python support" ON)
 if(WANT_PYTHON)
-       find_package(PythonLibs)
-       if(PYTHONLIBS_FOUND)
+       find_package(Python3 COMPONENTS Development)
+       if(Python3_FOUND)
                set(COMPILE_PYTHON_SUPPORT 1)
-               set(CMAKE_STATUS_PYTHON_SUPPORT "Yes, Python 
${PYTHONLIBS_VERSION_STRING}")
-               list(APPEND LIBS ${PYTHON_LIBRARIES})
-               include_directories(${PYTHON_INCLUDE_DIRS})
+               set(CMAKE_STATUS_PYTHON_SUPPORT "Yes, Python 
${Python3_VERSION}")
+               list(APPEND LIBS ${Python3_LIBRARIES})
+               include_directories(${Python3_INCLUDE_DIRS})
        else()
                set(CMAKE_STATUS_PYTHON_SUPPORT "No, not found.")
        endif()

-- 
2.25.0
++++++ 0001-Stop-unsetting-_DEBUG-when-including-Python.h.patch ++++++
>From 79dbba4260113b453fcea155881ecb4c6f82963b Mon Sep 17 00:00:00 2001
From: Alexey Sokolov <[email protected]>
Date: Mon, 30 Dec 2019 07:32:51 +0000
Subject: [PATCH] Stop unsetting _DEBUG when including Python.h

Because of 
https://stackoverflow.com/questions/59126760/building-a-python-c-extension-on-windows-with-a-debug-python-installation
---
 src/modules/pythoncore/pythonheaderwrapper.h | 10 +---------
 1 file changed, 1 insertion(+), 9 deletions(-)

diff --git a/src/modules/pythoncore/pythonheaderwrapper.h 
b/src/modules/pythoncore/pythonheaderwrapper.h
index 2b34066c3..173e3c289 100644
--- a/src/modules/pythoncore/pythonheaderwrapper.h
+++ b/src/modules/pythoncore/pythonheaderwrapper.h
@@ -7,14 +7,6 @@
 // use QT_NO_KEYWORDS.
 #undef slots
 
-// See 
http://stackoverflow.com/questions/16200997/why-doesnt-include-python-h-work 
and 
http://stackoverflow.com/questions/19716859/puzzling-dependency-of-boost-python-1-54-debug-build-to-python27-lib-on-window
-
-#if defined(_DEBUG) && defined(_MSC_VER)
-# undef _DEBUG
-# include <Python.h>
-# define _DEBUG 1
-#else
-# include <Python.h>
-#endif
+#include <Python.h>
 
 #endif
-- 
2.25.0

++++++ 0001-This-is-not-necessary-anymore.patch ++++++
>From 77983c1ac38efa87a3c644b3918dd1648040aee0 Mon Sep 17 00:00:00 2001
From: wodim <[email protected]>
Date: Mon, 1 Apr 2019 15:02:39 +0200
Subject: [PATCH] This is not necessary anymore

---
 src/modules/python/libkvipython.cpp | 26 --------------------------
 1 file changed, 26 deletions(-)

diff --git a/src/modules/python/libkvipython.cpp 
b/src/modules/python/libkvipython.cpp
index 700e8939b..6bdd56a80 100644
--- a/src/modules/python/libkvipython.cpp
+++ b/src/modules/python/libkvipython.cpp
@@ -502,31 +502,6 @@ static bool 
python_kvs_fnc_isAvailable(KviKvsModuleFunctionCall * c)
        return true;
 }
 
-/*
-       @doc: python.version
-       @type:
-               function
-       @title:
-               $python.version
-       @short:
-               Check which version of Python is supported in this build of 
KVIrc
-       @syntax:
-               $python.version
-       @description:
-               Returns which major version of Python is KVIrc linked to 
([b]2[/b] or [b]3[/b])
-               or [b]0[/b] if Python is not supported at all.
-*/
-
-static bool python_kvs_fnc_version(KviKvsModuleFunctionCall * c)
-{
-#ifdef COMPILE_PYTHON_SUPPORT
-       c->returnValue()->setInteger(PY_MAJOR_VERSION);
-#else
-       c->returnValue()->setBoolean(false);
-#endif
-       return true;
-}
-
 static bool python_module_init(KviModule * m)
 {
        // register the command anyway
@@ -534,7 +509,6 @@ static bool python_module_init(KviModule * m)
        KVSM_REGISTER_SIMPLE_COMMAND(m, "destroy", python_kvs_cmd_destroy);
 
        KVSM_REGISTER_FUNCTION(m, "isAvailable", python_kvs_fnc_isAvailable);
-       KVSM_REGISTER_FUNCTION(m, "version", python_kvs_fnc_version);
 #ifdef COMPILE_PYTHON_SUPPORT
        g_pPythonCoreModule = g_pModuleManager->getModule("pythoncore");
 #endif
-- 
2.25.0


Reply via email to