Hi,

I'm now done with all changes I would like to see, so if someone would like to review them I'm grateful. Please see attached the diff against pythonqt 3.0-3. Since the Debian code for this package is hosted in SVN [1], I guess this is the easiest way.

Here is a summary of the changes:

  * New upstream version
  * Change to Qt5, since Qt4 has been deprecated upstream
  * Adapt building to pure qmake (CMake has been deprecated upstream)
  * Build packages for both Python 2 and Python 3
  * Place QtAll extension in separate package
  * Implement multiarch support

Since this is my first contribution to Debian, I'm also thankful for advices on best practices etc. if applicable.

/Erik

[1] https://anonscm.debian.org/viewvc/debian-med/trunk/packages/pythonqt/trunk/

Den 2017-06-06 kl. 19:29, skrev Sandro Knauß:
Hey,

How can I submit my packaging changes for review? Are you using pull
requests somewhere?

there is no "formal way" nor pull request. The normal workflow is to use
mentors and personal repos and send the link around.

* mentors.debian.org
* https://wiki.debian.org/Alioth/Git#Forking_Git_repositories_onto_Alioth

( You can use every other git hosting platform, if you wish)

After some time we will grant you permission to push to git directly.

Hopefully this works for you.

Best Regards,

sandro

diff -ur --unidirectional-new-file PythonQt3.0/debian/changelog PythonQt3.2/debian/changelog
--- PythonQt3.0/debian/changelog	2016-09-15 18:16:39.000000000 +0200
+++ PythonQt3.2/debian/changelog	2017-06-14 00:28:51.456754423 +0200
@@ -1,3 +1,14 @@
+pythonqt (3.2-1) UNRELEASED; urgency=medium
+
+  * New upstream version
+  * Change to Qt5, since Qt4 has been deprecated upstream
+  * Adapt building to pure qmake (CMake has been deprecated upstream)
+  * Build packages for both Python 2 and Python 3
+  * Place QtAll extension in separate package
+  * Implement multiarch support
+
+ -- Erik Lundin <erik.lun...@bluetest.se>  Tue, 13 Jun 2017 22:40:27 +0200
+
 pythonqt (3.0-3) unstable; urgency=medium
 
   * QA upload.
diff -ur --unidirectional-new-file PythonQt3.0/debian/control PythonQt3.2/debian/control
--- PythonQt3.0/debian/control	2016-09-15 18:16:39.000000000 +0200
+++ PythonQt3.2/debian/control	2017-06-14 00:19:55.640303796 +0200
@@ -3,25 +3,34 @@
 Section: libs
 Priority: optional
 Build-Depends: debhelper (>= 9),
-               cmake,
+               dh-exec (>= 0.3),
                python-dev,
-               qt4-qmake,
-               libqt4-dev,
-               libqt4-opengl-dev
+               python3-dev,
+               qtbase5-dev,
+               qttools5-dev,
+               qt5-qmake,
+               libqt5svg5-dev,
+               libqt5xmlpatterns5-dev,
+               qtmultimedia5-dev,
+               qtbase5-private-dev,
+               qtdeclarative5-dev,
+               libqt5opengl5-dev
 Standards-Version: 3.9.8
 Vcs-Browser: https://anonscm.debian.org/viewvc/debian-med/trunk/packages/pythonqt/trunk/
 Vcs-Svn: svn://anonscm.debian.org/debian-med/trunk/packages/pythonqt/trunk/
 Homepage: http://pythonqt.sourceforge.net
-X-Python-Version: current
+X-Python-Version: >= 2.6
+X-Python3-Version: >= 3.3
 
-Package: libpythonqt3.0
+Package: libpythonqt-qt5-python2-3
 Architecture: any
+Multi-Arch: same
 Depends: ${shlibs:Depends},
          ${misc:Depends}
 Description: Dynamic Python binding for the Qt framework - runtime
  PythonQt offers an easy way to embed the Python scripting language into a
- C++ Qt applications. It makes heavy use of the QMetaObject system and thus
- requires Qt 4.x.
+ C++ Qt applications. It makes heavy use of the QMetaObject system and
+ requires Qt 5.x.
  The focus of PythonQt is on embedding Python into an existing C++ application,
  not on writing the whole application completely in Python. If you want to write
  your whole application in Python, you should use PyQt or PySide instead.
@@ -29,20 +38,189 @@
  Application and to script parts of your application via Python, PythonQt is the
  way to go!
  .
- This package contains the libraries needed to run PythonQt applications.
+ This package contains the libraries needed to run PythonQt applications
+ for Python 2.
 
-Package: libpythonqt-dev
+Package: libpythonqt-qt5-common-dev
 Architecture: any
+Multi-Arch: same
 Section: libdevel
-Depends: libpythonqt3.0 (= ${binary:Version}),
+Depends: ${shlibs:Depends},
+         ${misc:Depends}
+Description: Dynamic Python binding for the Qt framework - development
+ PythonQt offers an easy way to embed the Python scripting language into a
+ C++ Qt applications. It makes heavy use of the QMetaObject system and
+ requires Qt 5.x.
+ The focus of PythonQt is on embedding Python into an existing C++ application,
+ not on writing the whole application completely in Python. If you want to write
+ your whole application in Python, you should use PyQt or PySide instead.
+ If you are looking for a simple way to embed Python objects into your C++/Qt
+ Application and to script parts of your application via Python, PythonQt is the
+ way to go!
+ .
+ This package contains development files common for Python 2 and Python 3
+ needed to build PythonQt applications.
+
+Package: libpythonqt-qt5-python2-dev
+Architecture: any
+Multi-Arch: same
+Section: libdevel
+Depends: libpythonqt-qt5-python2-3 (= ${binary:Version}),
+         libpythonqt-qt5-common-dev (= ${binary:Version}),
+         ${shlibs:Depends},
+         ${misc:Depends}
+Description: Dynamic Python binding for the Qt framework - development
+ PythonQt offers an easy way to embed the Python scripting language into a
+ C++ Qt applications. It makes heavy use of the QMetaObject system and
+ requires Qt 5.x.
+ The focus of PythonQt is on embedding Python into an existing C++ application,
+ not on writing the whole application completely in Python. If you want to write
+ your whole application in Python, you should use PyQt or PySide instead.
+ If you are looking for a simple way to embed Python objects into your C++/Qt
+ Application and to script parts of your application via Python, PythonQt is the
+ way to go!
+ .
+ This package contains development files needed to build PythonQt applications
+ for Python 2.
+
+Package: libpythonqt-qtall-qt5-python2-3
+Architecture: any
+Multi-Arch: same
+Depends: libpythonqt-qt5-python2-3 (= ${binary:Version}),
+         ${shlibs:Depends},
+         ${misc:Depends}
+Description: Dynamic Python binding for the Qt framework - runtime
+ PythonQt offers an easy way to embed the Python scripting language into a
+ C++ Qt applications. It makes heavy use of the QMetaObject system and
+ requires Qt 5.x.
+ The focus of PythonQt is on embedding Python into an existing C++ application,
+ not on writing the whole application completely in Python. If you want to write
+ your whole application in Python, you should use PyQt or PySide instead.
+ If you are looking for a simple way to embed Python objects into your C++/Qt
+ Application and to script parts of your application via Python, PythonQt is the
+ way to go!
+ .
+ This package contains the extension PythonQt_QtAll, enabling usage of
+ Qt classes from the embedded Python 2 code.
+
+Package: libpythonqt-qtall-qt5-common-dev
+Architecture: any
+Multi-Arch: same
+Section: libdevel
+Depends: libpythonqt-qt5-common-dev (= ${binary:Version}),
+         ${shlibs:Depends},
+         ${misc:Depends}
+Description: Dynamic Python binding for the Qt framework - development
+ PythonQt offers an easy way to embed the Python scripting language into a
+ C++ Qt applications. It makes heavy use of the QMetaObject system and
+ requires Qt 5.x.
+ The focus of PythonQt is on embedding Python into an existing C++ application,
+ not on writing the whole application completely in Python. If you want to write
+ your whole application in Python, you should use PyQt or PySide instead.
+ If you are looking for a simple way to embed Python objects into your C++/Qt
+ Application and to script parts of your application via Python, PythonQt is the
+ way to go!
+ .
+ This package contains development files common for both Python 2 and Python 3
+ needed to build applications using and the PythonQt extension PythonQt_QtAll.
+
+Package: libpythonqt-qtall-qt5-python2-dev
+Architecture: any
+Multi-Arch: same
+Section: libdevel
+Depends: libpythonqt-qtall-qt5-python2-3 (= ${binary:Version}),
+         libpythonqt-qtall-qt5-common-dev (= ${binary:Version}),
+         libpythonqt-qt5-python2-dev (= ${binary:Version}),
+         ${shlibs:Depends},
+         ${misc:Depends}
+Description: Dynamic Python binding for the Qt framework - development
+ PythonQt offers an easy way to embed the Python scripting language into a
+ C++ Qt applications. It makes heavy use of the QMetaObject system and
+ requires Qt 5.x.
+ The focus of PythonQt is on embedding Python into an existing C++ application,
+ not on writing the whole application completely in Python. If you want to write
+ your whole application in Python, you should use PyQt or PySide instead.
+ If you are looking for a simple way to embed Python objects into your C++/Qt
+ Application and to script parts of your application via Python, PythonQt is the
+ way to go!
+ .
+ This package contains development files needed to build applications
+ using and the PythonQt extension PythonQt_QtAll for Python 2.
+
+Package: libpythonqt-qt5-python3-3
+Architecture: any
+Multi-Arch: same
+Depends: ${shlibs:Depends},
+         ${misc:Depends}
+Description: Dynamic Python binding for the Qt framework - runtime
+ PythonQt offers an easy way to embed the Python scripting language into a
+ C++ Qt applications. It makes heavy use of the QMetaObject system and
+ requires Qt 5.x.
+ The focus of PythonQt is on embedding Python into an existing C++ application,
+ not on writing the whole application completely in Python. If you want to write
+ your whole application in Python, you should use PyQt or PySide instead.
+ If you are looking for a simple way to embed Python objects into your C++/Qt
+ Application and to script parts of your application via Python, PythonQt is the
+ way to go!
+ .
+ This package contains the libraries needed to run PythonQt applications
+ for Python 3.
+
+Package: libpythonqt-qt5-python3-dev
+Architecture: any
+Multi-Arch: same
+Section: libdevel
+Depends: libpythonqt-qt5-python3-3 (= ${binary:Version}),
+         libpythonqt-qt5-common-dev (= ${binary:Version}),
+         ${shlibs:Depends},
+         ${misc:Depends}
+Description: Dynamic Python binding for the Qt framework - development
+ PythonQt offers an easy way to embed the Python scripting language into a
+ C++ Qt applications. It makes heavy use of the QMetaObject system and
+ requires Qt 5.x.
+ The focus of PythonQt is on embedding Python into an existing C++ application,
+ not on writing the whole application completely in Python. If you want to write
+ your whole application in Python, you should use PyQt or PySide instead.
+ If you are looking for a simple way to embed Python objects into your C++/Qt
+ Application and to script parts of your application via Python, PythonQt is the
+ way to go!
+ .
+ This package contains development files needed to build PythonQt applications
+ for Python 3.
+
+Package: libpythonqt-qtall-qt5-python3-3
+Architecture: any
+Multi-Arch: same
+Depends: libpythonqt-qt5-python3-3 (= ${binary:Version}),
+         ${shlibs:Depends},
+         ${misc:Depends}
+Description: Dynamic Python binding for the Qt framework - runtime
+ PythonQt offers an easy way to embed the Python scripting language into a
+ C++ Qt applications. It makes heavy use of the QMetaObject system and
+ requires Qt 5.x.
+ The focus of PythonQt is on embedding Python into an existing C++ application,
+ not on writing the whole application completely in Python. If you want to write
+ your whole application in Python, you should use PyQt or PySide instead.
+ If you are looking for a simple way to embed Python objects into your C++/Qt
+ Application and to script parts of your application via Python, PythonQt is the
+ way to go!
+ .
+ This package contains the extension PythonQt_QtAll, enabling usage of
+ Qt classes from the embedded Python 3 code.
+
+Package: libpythonqt-qtall-qt5-python3-dev
+Architecture: any
+Multi-Arch: same
+Section: libdevel
+Depends: libpythonqt-qtall-qt5-python3-3 (= ${binary:Version}),
+         libpythonqt-qtall-qt5-common-dev (= ${binary:Version}),
+         libpythonqt-qt5-python3-dev (= ${binary:Version}),
          ${shlibs:Depends},
          ${misc:Depends}
-Breaks: libpythonqt2-dev (<< 2.1.0~svn247-1~)
-Replaces: libpythonqt2-dev (<< 2.1.0~svn247-1~)
 Description: Dynamic Python binding for the Qt framework - development
  PythonQt offers an easy way to embed the Python scripting language into a
- C++ Qt applications. It makes heavy use of the QMetaObject system and thus
- requires Qt 4.x.
+ C++ Qt applications. It makes heavy use of the QMetaObject system and
+ requires Qt 5.x.
  The focus of PythonQt is on embedding Python into an existing C++ application,
  not on writing the whole application completely in Python. If you want to write
  your whole application in Python, you should use PyQt or PySide instead.
@@ -50,4 +228,5 @@
  Application and to script parts of your application via Python, PythonQt is the
  way to go!
  .
- This package contains development files needed to build PythonQt applications.
+ This package contains development files needed to build applications
+ using and the PythonQt extension PythonQt_QtAll for Python 3.
Endast i PythonQt3.0/debian/: libpythonqt3.0.install
Endast i PythonQt3.0/debian/: libpythonqt-dev.install
diff -ur --unidirectional-new-file PythonQt3.0/debian/libpythonqt-qt5-common-dev.install PythonQt3.2/debian/libpythonqt-qt5-common-dev.install
--- PythonQt3.0/debian/libpythonqt-qt5-common-dev.install	1970-01-01 01:00:00.000000000 +0100
+++ PythonQt3.2/debian/libpythonqt-qt5-common-dev.install	2017-06-13 22:06:47.145967837 +0200
@@ -0,0 +1,2 @@
+src/*.h usr/include/PythonQt5
+src/gui/*.h usr/include/PythonQt5/gui
diff -ur --unidirectional-new-file PythonQt3.0/debian/libpythonqt-qt5-python2-3.install PythonQt3.2/debian/libpythonqt-qt5-python2-3.install
--- PythonQt3.0/debian/libpythonqt-qt5-python2-3.install	1970-01-01 01:00:00.000000000 +0100
+++ PythonQt3.2/debian/libpythonqt-qt5-python2-3.install	2017-06-13 21:19:22.520785714 +0200
@@ -0,0 +1,3 @@
+#!/usr/bin/dh-exec
+
+build-py2.*/lib/libPythonQt-Qt5-Python2.*.so.* usr/lib/${DEB_HOST_MULTIARCH}
diff -ur --unidirectional-new-file PythonQt3.0/debian/libpythonqt-qt5-python2-dev.install PythonQt3.2/debian/libpythonqt-qt5-python2-dev.install
--- PythonQt3.0/debian/libpythonqt-qt5-python2-dev.install	1970-01-01 01:00:00.000000000 +0100
+++ PythonQt3.2/debian/libpythonqt-qt5-python2-dev.install	2017-06-13 22:07:14.846406619 +0200
@@ -0,0 +1,3 @@
+#!/usr/bin/dh-exec
+
+build-py2.*/lib/libPythonQt-Qt5-Python2.*.so usr/lib/${DEB_HOST_MULTIARCH}
diff -ur --unidirectional-new-file PythonQt3.0/debian/libpythonqt-qt5-python3-3.install PythonQt3.2/debian/libpythonqt-qt5-python3-3.install
--- PythonQt3.0/debian/libpythonqt-qt5-python3-3.install	1970-01-01 01:00:00.000000000 +0100
+++ PythonQt3.2/debian/libpythonqt-qt5-python3-3.install	2017-06-13 21:20:52.586216137 +0200
@@ -0,0 +1,3 @@
+#!/usr/bin/dh-exec
+
+build-py3.*/lib/libPythonQt-Qt5-Python3.*.so.* usr/lib/${DEB_HOST_MULTIARCH}
diff -ur --unidirectional-new-file PythonQt3.0/debian/libpythonqt-qt5-python3-dev.install PythonQt3.2/debian/libpythonqt-qt5-python3-dev.install
--- PythonQt3.0/debian/libpythonqt-qt5-python3-dev.install	1970-01-01 01:00:00.000000000 +0100
+++ PythonQt3.2/debian/libpythonqt-qt5-python3-dev.install	2017-06-13 22:07:28.606624588 +0200
@@ -0,0 +1,3 @@
+#!/usr/bin/dh-exec
+
+build-py3.*/lib/libPythonQt-Qt5-Python3.*.so usr/lib/${DEB_HOST_MULTIARCH}
diff -ur --unidirectional-new-file PythonQt3.0/debian/libpythonqt-qtall-qt5-common-dev.install PythonQt3.2/debian/libpythonqt-qtall-qt5-common-dev.install
--- PythonQt3.0/debian/libpythonqt-qtall-qt5-common-dev.install	1970-01-01 01:00:00.000000000 +0100
+++ PythonQt3.2/debian/libpythonqt-qtall-qt5-common-dev.install	2017-06-13 22:10:10.557190105 +0200
@@ -0,0 +1 @@
+extensions/PythonQt_QtAll/*.h usr/include/PythonQt5
diff -ur --unidirectional-new-file PythonQt3.0/debian/libpythonqt-qtall-qt5-python2-3.install PythonQt3.2/debian/libpythonqt-qtall-qt5-python2-3.install
--- PythonQt3.0/debian/libpythonqt-qtall-qt5-python2-3.install	1970-01-01 01:00:00.000000000 +0100
+++ PythonQt3.2/debian/libpythonqt-qtall-qt5-python2-3.install	2017-06-13 21:21:30.530818790 +0200
@@ -0,0 +1,3 @@
+#!/usr/bin/dh-exec
+
+build-py2.*/lib/libPythonQt_QtAll-Qt5-Python2.*.so.* usr/lib/${DEB_HOST_MULTIARCH}
diff -ur --unidirectional-new-file PythonQt3.0/debian/libpythonqt-qtall-qt5-python2-dev.install PythonQt3.2/debian/libpythonqt-qtall-qt5-python2-dev.install
--- PythonQt3.0/debian/libpythonqt-qtall-qt5-python2-dev.install	1970-01-01 01:00:00.000000000 +0100
+++ PythonQt3.2/debian/libpythonqt-qtall-qt5-python2-dev.install	2017-06-13 22:10:22.417377997 +0200
@@ -0,0 +1,3 @@
+#!/usr/bin/dh-exec
+
+build-py2.*/lib/libPythonQt_QtAll-Qt5-Python2.*.so usr/lib/${DEB_HOST_MULTIARCH}
diff -ur --unidirectional-new-file PythonQt3.0/debian/libpythonqt-qtall-qt5-python3-3.install PythonQt3.2/debian/libpythonqt-qtall-qt5-python3-3.install
--- PythonQt3.0/debian/libpythonqt-qtall-qt5-python3-3.install	1970-01-01 01:00:00.000000000 +0100
+++ PythonQt3.2/debian/libpythonqt-qtall-qt5-python3-3.install	2017-06-13 21:22:19.715599976 +0200
@@ -0,0 +1,3 @@
+#!/usr/bin/dh-exec
+
+build-py3.*/lib/libPythonQt_QtAll-Qt5-Python3.*.so.* usr/lib/${DEB_HOST_MULTIARCH}
diff -ur --unidirectional-new-file PythonQt3.0/debian/libpythonqt-qtall-qt5-python3-dev.install PythonQt3.2/debian/libpythonqt-qtall-qt5-python3-dev.install
--- PythonQt3.0/debian/libpythonqt-qtall-qt5-python3-dev.install	1970-01-01 01:00:00.000000000 +0100
+++ PythonQt3.2/debian/libpythonqt-qtall-qt5-python3-dev.install	2017-06-13 22:10:26.973450176 +0200
@@ -0,0 +1,3 @@
+#!/usr/bin/dh-exec
+
+build-py3.*/lib/libPythonQt_QtAll-Qt5-Python3.*.so usr/lib/${DEB_HOST_MULTIARCH}
Endast i PythonQt3.0/debian/patches: add_missing_header.patch
Endast i PythonQt3.0/debian/patches: cmakebuildsystem.patch
diff -ur --unidirectional-new-file PythonQt3.0/debian/patches/disable_missing_qt54_modules.diff PythonQt3.2/debian/patches/disable_missing_qt54_modules.diff
--- PythonQt3.0/debian/patches/disable_missing_qt54_modules.diff	1970-01-01 01:00:00.000000000 +0100
+++ PythonQt3.2/debian/patches/disable_missing_qt54_modules.diff	2017-06-14 00:24:37.704753301 +0200
@@ -0,0 +1,59 @@
+Description: Remove missing Qt 5.4 modules
+ The generated code for Qt 5.4 is missing QtQml and QtQuick, causing
+ linking to fail while building. Solution: remove the references for
+ Qt < 5.6.
+Author: Erik Lundin <erik.lun...@bluetest.se>
+--- a/extensions/PythonQt_QtAll/PythonQt_QtAll.cpp
++++ b/extensions/PythonQt_QtAll/PythonQt_QtAll.cpp
+@@ -43,8 +43,10 @@ void PythonQt_init_QtOpenGL(PyObject*);
+ void PythonQt_init_QtXml(PyObject*);
+ void PythonQt_init_QtXmlPatterns(PyObject*);
+ void PythonQt_init_QtMultimedia(PyObject*);
++#if QT_VERSION >= 0x050600
+ void PythonQt_init_QtQml(PyObject*);
+ void PythonQt_init_QtQuick(PyObject*);
++#endif
+ void PythonQt_init_QtUiTools(PyObject*);
+ 
+ #ifdef PYTHONQT_WITH_WEBKIT
+@@ -66,8 +68,10 @@ namespace PythonQt_QtAll
+     PythonQt_init_QtOpenGL(0);
+     PythonQt_init_QtXmlPatterns(0);
+     PythonQt_init_QtMultimedia(0);
++#if QT_VERSION >= 0x050600
+     PythonQt_init_QtQml(0);
+     PythonQt_init_QtQuick(0);
++#endif
+     PythonQt_init_QtUiTools(0);
+   };
+ };
+--- a/extensions/PythonQt_QtAll/PythonQt_QtAll.pro
++++ b/extensions/PythonQt_QtAll/PythonQt_QtAll.pro
+@@ -21,8 +21,11 @@ SOURCES +=                \
+   PythonQt_QtAll.cpp
+ 
+ QT += gui svg sql network xml xmlpatterns opengl
+-QT += widgets printsupport multimedia multimediawidgets
+-QT += quick qml quickwidgets uitools
++QT += widgets printsupport multimedia multimediawidgets uitools
++lessThan(QT_MAJOR_VERSION, 6):equals(QT_MAJOR_VERSION, 5):lessThan(QT_MINOR_VERSION, 6) {
++} else {
++  QT += quick qml quickwidgets
++}
+ 
+ include ($$PYTHONQT_GENERATED_PATH/com_trolltech_qt_core/com_trolltech_qt_core.pri)
+ include ($$PYTHONQT_GENERATED_PATH/com_trolltech_qt_gui/com_trolltech_qt_gui.pri)
+@@ -33,8 +36,11 @@ include ($$PYTHONQT_GENERATED_PATH/com_t
+ include ($$PYTHONQT_GENERATED_PATH/com_trolltech_qt_xml/com_trolltech_qt_xml.pri)
+ include ($$PYTHONQT_GENERATED_PATH/com_trolltech_qt_xmlpatterns/com_trolltech_qt_xmlpatterns.pri)
+ include ($$PYTHONQT_GENERATED_PATH/com_trolltech_qt_multimedia/com_trolltech_qt_multimedia.pri)
+-include ($$PYTHONQT_GENERATED_PATH/com_trolltech_qt_qml/com_trolltech_qt_qml.pri)
+-include ($$PYTHONQT_GENERATED_PATH/com_trolltech_qt_quick/com_trolltech_qt_quick.pri)
++lessThan(QT_MAJOR_VERSION, 6):equals(QT_MAJOR_VERSION, 5):lessThan(QT_MINOR_VERSION, 6) {
++} else {
++  include ($$PYTHONQT_GENERATED_PATH/com_trolltech_qt_qml/com_trolltech_qt_qml.pri)
++  include ($$PYTHONQT_GENERATED_PATH/com_trolltech_qt_quick/com_trolltech_qt_quick.pri)
++}
+ include ($$PYTHONQT_GENERATED_PATH/com_trolltech_qt_uitools/com_trolltech_qt_uitools.pri)
+ 
+ PythonQtWebKit {
Endast i PythonQt3.0/debian/patches: disable_webkit
diff -ur --unidirectional-new-file PythonQt3.0/debian/patches/enable_python_selection.diff PythonQt3.2/debian/patches/enable_python_selection.diff
--- PythonQt3.0/debian/patches/enable_python_selection.diff	1970-01-01 01:00:00.000000000 +0100
+++ PythonQt3.2/debian/patches/enable_python_selection.diff	2017-06-09 22:16:03.233331193 +0200
@@ -0,0 +1,17 @@
+Description: Enable Python selection
+Author: Erik Lundin <erik.lun...@bluetest.se>
+--- a/build/python.prf
++++ b/build/python.prf
+@@ -1,8 +1,10 @@
+ # profile to include and link Python
+ 
+ # Change this variable to your python version (2.6, 2.7, 3.3, ...)
+-win32:PYTHON_VERSION=27
+-unix:PYTHON_VERSION=2.7
++isEmpty(PYTHON_VERSION) {
++  win32:PYTHON_VERSION=27
++  unix:PYTHON_VERSION=2.7
++}
+ 
+ macx {
+   # for macx you need to have the Python development kit installed as framework
diff -ur --unidirectional-new-file PythonQt3.0/debian/patches/fix_format_security_error.diff PythonQt3.2/debian/patches/fix_format_security_error.diff
--- PythonQt3.0/debian/patches/fix_format_security_error.diff	1970-01-01 01:00:00.000000000 +0100
+++ PythonQt3.2/debian/patches/fix_format_security_error.diff	2017-06-14 00:24:50.608956750 +0200
@@ -0,0 +1,152 @@
+Description: Fix format security compile errors
+ The log functions of QMessageLogger expect a format and arguments, and
+ giving them a char pointer yields an error [-Werror=format-security].
+ Since this is in generated code, the problem should preferably be fixed
+ elsewhere.
+Author: Erik Lundin <erik.lun...@bluetest.se>
+--- a/generated_cpp_50/com_trolltech_qt_core/com_trolltech_qt_core1.cpp
++++ b/generated_cpp_50/com_trolltech_qt_core/com_trolltech_qt_core1.cpp
+@@ -2158,27 +2158,27 @@ return new QMessageLogger(file, line, fu
+ 
+ void PythonQtWrapper_QMessageLogger::critical(QMessageLogger* theWrappedObject, const char*  msg) const
+ {
+-  ( theWrappedObject->critical(msg));
++  ( theWrappedObject->critical("%s", msg));
+ }
+ 
+ void PythonQtWrapper_QMessageLogger::debug(QMessageLogger* theWrappedObject, const char*  msg) const
+ {
+-  ( theWrappedObject->debug(msg));
++  ( theWrappedObject->debug("%s", msg));
+ }
+ 
+ void PythonQtWrapper_QMessageLogger::fatal(QMessageLogger* theWrappedObject, const char*  msg) const
+ {
+-  ( theWrappedObject->fatal(msg));
++  ( theWrappedObject->fatal("%s", msg));
+ }
+ 
+ void PythonQtWrapper_QMessageLogger::noDebug(QMessageLogger* theWrappedObject, const char*  arg__1) const
+ {
+-  ( theWrappedObject->noDebug(arg__1));
++  ( theWrappedObject->noDebug("%s", arg__1));
+ }
+ 
+ void PythonQtWrapper_QMessageLogger::warning(QMessageLogger* theWrappedObject, const char*  msg) const
+ {
+-  ( theWrappedObject->warning(msg));
++  ( theWrappedObject->warning("%s", msg));
+ }
+ 
+ 
+--- a/generated_cpp_53/com_trolltech_qt_core/com_trolltech_qt_core1.cpp
++++ b/generated_cpp_53/com_trolltech_qt_core/com_trolltech_qt_core1.cpp
+@@ -3913,27 +3913,27 @@ return new QMessageLogger(file, line, fu
+ 
+ void PythonQtWrapper_QMessageLogger::critical(QMessageLogger* theWrappedObject, const char*  msg) const
+ {
+-  ( theWrappedObject->critical(msg));
++  ( theWrappedObject->critical("%s", msg));
+ }
+ 
+ void PythonQtWrapper_QMessageLogger::debug(QMessageLogger* theWrappedObject, const char*  msg) const
+ {
+-  ( theWrappedObject->debug(msg));
++  ( theWrappedObject->debug("%s", msg));
+ }
+ 
+ void PythonQtWrapper_QMessageLogger::fatal(QMessageLogger* theWrappedObject, const char*  msg) const
+ {
+-  ( theWrappedObject->fatal(msg));
++  ( theWrappedObject->fatal("%s", msg));
+ }
+ 
+ void PythonQtWrapper_QMessageLogger::noDebug(QMessageLogger* theWrappedObject, const char*  arg__1) const
+ {
+-  ( theWrappedObject->noDebug(arg__1));
++  ( theWrappedObject->noDebug("%s", arg__1));
+ }
+ 
+ void PythonQtWrapper_QMessageLogger::warning(QMessageLogger* theWrappedObject, const char*  msg) const
+ {
+-  ( theWrappedObject->warning(msg));
++  ( theWrappedObject->warning("%s", msg));
+ }
+ 
+ 
+--- a/generated_cpp_54/com_trolltech_qt_core/com_trolltech_qt_core1.cpp
++++ b/generated_cpp_54/com_trolltech_qt_core/com_trolltech_qt_core1.cpp
+@@ -3913,27 +3913,27 @@ return new QMessageLogger(file, line, fu
+ 
+ void PythonQtWrapper_QMessageLogger::critical(QMessageLogger* theWrappedObject, const char*  msg) const
+ {
+-  ( theWrappedObject->critical(msg));
++  ( theWrappedObject->critical("%s", msg));
+ }
+ 
+ void PythonQtWrapper_QMessageLogger::debug(QMessageLogger* theWrappedObject, const char*  msg) const
+ {
+-  ( theWrappedObject->debug(msg));
++  ( theWrappedObject->debug("%s", msg));
+ }
+ 
+ void PythonQtWrapper_QMessageLogger::fatal(QMessageLogger* theWrappedObject, const char*  msg) const
+ {
+-  ( theWrappedObject->fatal(msg));
++  ( theWrappedObject->fatal("%s", msg));
+ }
+ 
+ void PythonQtWrapper_QMessageLogger::noDebug(QMessageLogger* theWrappedObject, const char*  arg__1) const
+ {
+-  ( theWrappedObject->noDebug(arg__1));
++  ( theWrappedObject->noDebug("%s", arg__1));
+ }
+ 
+ void PythonQtWrapper_QMessageLogger::warning(QMessageLogger* theWrappedObject, const char*  msg) const
+ {
+-  ( theWrappedObject->warning(msg));
++  ( theWrappedObject->warning("%s", msg));
+ }
+ 
+ 
+--- a/generated_cpp_56/com_trolltech_qt_core/com_trolltech_qt_core1.cpp
++++ b/generated_cpp_56/com_trolltech_qt_core/com_trolltech_qt_core1.cpp
+@@ -4951,32 +4951,32 @@ return new QMessageLogger(file, line, fu
+ 
+ void PythonQtWrapper_QMessageLogger::critical(QMessageLogger* theWrappedObject, const char*  msg) const
+ {
+-  ( theWrappedObject->critical(msg));
++  ( theWrappedObject->critical("%s", msg));
+ }
+ 
+ void PythonQtWrapper_QMessageLogger::debug(QMessageLogger* theWrappedObject, const char*  msg) const
+ {
+-  ( theWrappedObject->debug(msg));
++  ( theWrappedObject->debug("%s", msg));
+ }
+ 
+ void PythonQtWrapper_QMessageLogger::fatal(QMessageLogger* theWrappedObject, const char*  msg) const
+ {
+-  ( theWrappedObject->fatal(msg));
++  ( theWrappedObject->fatal("%s", msg));
+ }
+ 
+ void PythonQtWrapper_QMessageLogger::info(QMessageLogger* theWrappedObject, const char*  msg) const
+ {
+-  ( theWrappedObject->info(msg));
++  ( theWrappedObject->info("%s", msg));
+ }
+ 
+ void PythonQtWrapper_QMessageLogger::noDebug(QMessageLogger* theWrappedObject, const char*  arg__1) const
+ {
+-  ( theWrappedObject->noDebug(arg__1));
++  ( theWrappedObject->noDebug("%s", arg__1));
+ }
+ 
+ void PythonQtWrapper_QMessageLogger::warning(QMessageLogger* theWrappedObject, const char*  msg) const
+ {
+-  ( theWrappedObject->warning(msg));
++  ( theWrappedObject->warning("%s", msg));
+ }
+ 
+ 
diff -ur --unidirectional-new-file PythonQt3.0/debian/patches/series PythonQt3.2/debian/patches/series
--- PythonQt3.0/debian/patches/series	2016-09-15 18:16:39.000000000 +0200
+++ PythonQt3.2/debian/patches/series	2017-06-09 22:11:40.596487571 +0200
@@ -1,3 +1,3 @@
-cmakebuildsystem.patch
-add_missing_header.patch
-disable_webkit
+fix_format_security_error.diff
+disable_missing_qt54_modules.diff
+enable_python_selection.diff
diff -ur --unidirectional-new-file PythonQt3.0/debian/rules PythonQt3.2/debian/rules
--- PythonQt3.0/debian/rules	2016-07-04 21:56:08.000000000 +0200
+++ PythonQt3.2/debian/rules	2017-06-13 23:37:53.384461528 +0200
@@ -5,9 +5,25 @@
 #export DH_VERBOSE=1
 
 export DEB_BUILD_MAINT_OPTIONS = hardening=+bindnow
+export QT_SELECT=qt5
+
+PY2VERS := $(shell pyversions -vd)
+PY3VERS := $(shell py3versions -vd)
 
 %:
-	dh $@ --parallel --buildsystem=cmake
+	dh $@ --parallel
 
 override_dh_auto_configure:
-	dh_auto_configure -- -DPythonQt_Wrap_QtAll=ON
+	for i in $(PY2VERS) $(PY3VERS); do \
+		echo mkdir -p build-py$${i}; \
+		mkdir -p build-py$${i}; \
+		dh_auto_configure --builddirectory=build-py$${i} -- PYTHON_VERSION=$${i} LIBS+=-L$$PWD/build-py$${i}/lib ../PythonQt.pro; \
+	done
+
+override_dh_auto_build:
+	for i in $(PY2VERS) $(PY3VERS); do \
+		dh_auto_build --builddirectory=build-py$${i}; \
+	done
+
+override_dh_auto_clean:
+	rm -rf build-py*

Attachment: pythonqt_3.2-1.debian.tar.xz
Description: application/xz

-- 
http://lists.alioth.debian.org/cgi-bin/mailman/listinfo/pkg-kde-talk

Reply via email to