<pre style='margin:0'>
Renee Otten (reneeotten) pushed a commit to branch master
in repository macports-ports.

</pre>
<p><a href="https://github.com/macports/macports-ports/commit/0fc6818d55b94ba571fe2f41a69e5ec83668fcee">https://github.com/macports/macports-ports/commit/0fc6818d55b94ba571fe2f41a69e5ec83668fcee</a></p>
<pre style="white-space: pre; background: #F8F8F8"><span style='display:block; white-space:pre;color:#808000;'>commit 0fc6818d55b94ba571fe2f41a69e5ec83668fcee
</span>Author: Renee Otten <reneeotten@macports.org>
AuthorDate: Sun Sep 5 11:08:08 2021 -0400

<span style='display:block; white-space:pre;color:#404040;'>    py27-pyqt5: new port from py-pyqt5
</span>---
 python/py-pyqt5/Portfile                           |  2 +-
 python/{py-pyqt5 => py27-pyqt5}/Portfile           |  7 ++--
 python/py27-pyqt5/files/patch-dbus_includes.diff   | 11 ++++++
 .../files/patch-no-abort-on-python-errors.diff     | 41 ++++++++++++++++++++++
 python/py27-pyqt5/files/patch-use-default-sip.diff | 36 +++++++++++++++++++
 5 files changed, 94 insertions(+), 3 deletions(-)

<span style='display:block; white-space:pre;color:#808080;'>diff --git a/python/py-pyqt5/Portfile b/python/py-pyqt5/Portfile
</span><span style='display:block; white-space:pre;color:#808080;'>index 31db5a2fe37..5c382d16002 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/python/py-pyqt5/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/python/py-pyqt5/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -34,7 +34,7 @@ if {[vercmp ${qt5.version} 5.11] < 0} {
</span>                         size    3258085
 }
 
<span style='display:block; white-space:pre;background:#ffe0e0;'>-python.versions 27 35 36 37 38 39
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+python.versions 35 36 37 38 39
</span> subport "${name}-common" {}
 
 foreach py_ver ${python.versions} {
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/python/py-pyqt5/Portfile b/python/py27-pyqt5/Portfile
</span>similarity index 98%
copy from python/py-pyqt5/Portfile
copy to python/py27-pyqt5/Portfile
<span style='display:block; white-space:pre;color:#808080;'>index 31db5a2fe37..90ae61c1b2b 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/python/py-pyqt5/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/python/py27-pyqt5/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -2,8 +2,11 @@
</span> 
 PortSystem              1.0
 PortGroup               python 1.0
<span style='display:block; white-space:pre;background:#e0ffe0;'>+PortGroup               deprecated 1.0
</span> 
<span style='display:block; white-space:pre;background:#ffe0e0;'>-name                    py-pyqt5
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+deprecated.upstream_support no
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+name                    py27-pyqt5
</span> python.rootname         PyQt5
 categories-append       devel
 platforms               darwin
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -34,7 +37,7 @@ if {[vercmp ${qt5.version} 5.11] < 0} {
</span>                         size    3258085
 }
 
<span style='display:block; white-space:pre;background:#ffe0e0;'>-python.versions 27 35 36 37 38 39
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+python.versions 27
</span> subport "${name}-common" {}
 
 foreach py_ver ${python.versions} {
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/python/py27-pyqt5/files/patch-dbus_includes.diff b/python/py27-pyqt5/files/patch-dbus_includes.diff
</span>new file mode 100644
<span style='display:block; white-space:pre;color:#808080;'>index 00000000000..0e63ed33916
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--- /dev/null
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/python/py27-pyqt5/files/patch-dbus_includes.diff
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -0,0 +1,11 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- configure.py.orig      2021-03-05 04:57:14.000000000 -0500
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ configure.py   2021-03-18 22:13:16.000000000 -0400
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -2314,7 +2314,7 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     # Instead we look where DBus itself is installed - which in most cases will
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     # be where dbus-python is also installed.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     if target_config.pydbus_inc_dir != '':
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-        target_config.dbus_inc_dirs = [target_config.pydbus_inc_dir]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++        target_config.dbus_inc_dirs.append(target_config.pydbus_inc_dir)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     for d in target_config.dbus_inc_dirs:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+         if os.access(os.path.join(d, 'dbus', 'dbus-python.h'), os.F_OK):
</span><span style='display:block; white-space:pre;color:#808080;'>diff --git a/python/py27-pyqt5/files/patch-no-abort-on-python-errors.diff b/python/py27-pyqt5/files/patch-no-abort-on-python-errors.diff
</span>new file mode 100644
<span style='display:block; white-space:pre;color:#808080;'>index 00000000000..e20f6322b7b
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--- /dev/null
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/python/py27-pyqt5/files/patch-no-abort-on-python-errors.diff
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -0,0 +1,41 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- qpy/QtCore/qpycore_public_api.cpp.orig 2020-05-31 08:10:54.000000000 -0400
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ qpy/QtCore/qpycore_public_api.cpp      2020-06-11 19:43:03.000000000 -0400
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -79,7 +79,7 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-// A replacement for PyErr_Print() that passes the exception to qFatal().
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++// A replacement for PyErr_Print() that passes the exception to qCritical().
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ void pyqt5_err_print()
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #if PY_MAJOR_VERSION >= 3
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -175,7 +175,7 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+         PyErr_Restore(exception, value, traceback);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+         PyErr_Print();
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-        // This will be passed to qFatal() if we can't get the detailed text.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++        // This will be passed to qCritical() if we can't get the detailed text.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+         QByteArray message("Unhandled Python exception");
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+         // Extract the detailed text if it was redirected.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -191,7 +191,7 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+             if (text)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+             {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-                // Strip the text as qFatal() likes to add a newline.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++                // Strip the text as qCritical() likes to add a newline.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                 PyObject *stripped = PyObject_CallMethod(text,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                         CONST_CAST("strip"), NULL);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -249,9 +249,9 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+             Py_DECREF(new_stderr);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+         }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-        // qFatal() may not call abort.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++        // qCritical() will not call abort.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+         Py_BEGIN_ALLOW_THREADS
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-        qFatal("%s", message.data());
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++        qCritical("%s", message.data());
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+         Py_END_ALLOW_THREADS
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;color:#808080;'>diff --git a/python/py27-pyqt5/files/patch-use-default-sip.diff b/python/py27-pyqt5/files/patch-use-default-sip.diff
</span>new file mode 100644
<span style='display:block; white-space:pre;color:#808080;'>index 00000000000..998e33e7d59
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--- /dev/null
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/python/py27-pyqt5/files/patch-use-default-sip.diff
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -0,0 +1,36 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- configure.py.orig      2021-03-18 22:08:19.000000000 -0400
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ configure.py   2021-03-18 22:08:19.000000000 -0400
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -2490,7 +2490,7 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     the target configuration.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     """
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    sip_flags = ['-n', 'PyQt5.sip']
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    sip_flags = ['-n', 'sip']
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     # If we don't check for signed interpreters, we exclude the 'VendorID'
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     # feature
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- designer/pluginloader.cpp.orig 2021-03-05 04:57:14.000000000 -0500
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ designer/pluginloader.cpp      2021-03-18 22:08:19.000000000 -0400
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -169,7 +169,7 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     // Make sure we have sip.unwrapinstance.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     if (!sip_unwrapinstance)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-        sip_unwrapinstance = getModuleAttr("PyQt5.sip", "unwrapinstance");
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++        sip_unwrapinstance = getModuleAttr("sip", "unwrapinstance");
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+         if (!sip_unwrapinstance)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+             return true;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- qmlscene/pluginloader.cpp.orig 2021-03-05 04:57:14.000000000 -0500
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ qmlscene/pluginloader.cpp      2021-03-18 22:08:19.000000000 -0400
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -414,9 +414,9 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ void PyQt5QmlPlugin::getSipAPI()
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #if defined(SIP_USE_PYCAPSULE)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    sip = (const sipAPIDef *)PyCapsule_Import("PyQt5.sip._C_API", 0);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    sip = (const sipAPIDef *)PyCapsule_Import("sip._C_API", 0);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    PyObject *c_api = getModuleAttr("PyQt5.sip", "_C_API");
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    PyObject *c_api = getModuleAttr("sip", "_C_API");
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     if (c_api)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     {
</span></pre><pre style='margin:0'>

</pre>