<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/fb351de6e72c9f727c4b7805603e34b38c77c279">https://github.com/macports/macports-ports/commit/fb351de6e72c9f727c4b7805603e34b38c77c279</a></p>
<pre style="white-space: pre; background: #F8F8F8"><span style='display:block; white-space:pre;color:#808000;'>commit fb351de6e72c9f727c4b7805603e34b38c77c279
</span>Author: Renee Otten <reneeotten@macports.org>
AuthorDate: Mon Sep 6 21:54:44 2021 -0400

<span style='display:block; white-space:pre;color:#404040;'>    py-sip4: new port from py-sip to provide legacy version
</span><span style='display:block; white-space:pre;color:#404040;'>    
</span><span style='display:block; white-space:pre;color:#404040;'>    - update/rev-bump dependents for this change
</span>---
 devel/qscintilla/Portfile                       |   4 +-
 gis/qgis/Portfile                               |   4 +-
 gis/qgis3/Portfile                              |   2 +-
 python/py-PyQGLViewer/Portfile                  |   4 +-
 python/py-gpilab-framework/Portfile             |   6 +-
 python/py-poppler-qt4/Portfile                  |   4 +-
 python/py-poppler-qt5/Portfile                  |   4 +-
 python/py-pyqt5/Portfile                        |   6 +-
 python/py-pyqwt/Portfile                        |   4 +-
 python/py-sip4/Portfile                         | 164 ++++++++++++++++++++++++
 python/py-sip4/files/patch-add_ppc64.diff       |  11 ++
 python/py-sip4/files/patch-configure.py.diff    |  11 ++
 python/py-sip4/files/patch-siplib_siplib.c.diff |  11 ++
 python/py-sip4/files/patch-siputils.py.diff     |  96 ++++++++++++++
 python/py-sip4/files/patch-specs_macx-g++.diff  |  28 ++++
 python/py-wxpython-4.0/Portfile                 |   4 +-
 16 files changed, 343 insertions(+), 20 deletions(-)

<span style='display:block; white-space:pre;color:#808080;'>diff --git a/devel/qscintilla/Portfile b/devel/qscintilla/Portfile
</span><span style='display:block; white-space:pre;color:#808080;'>index dab1fe78f4c..3a4309d0a85 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/devel/qscintilla/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/devel/qscintilla/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -8,7 +8,7 @@ version             2.11.6
</span> checksums           rmd160  bc00b95128956424a2f3466d25c4dd9f03169c0b \
                     sha256  e7346057db47d2fb384467fafccfcb13aa0741373c5d593bc72b55b2f0dd20a7 \
                     size    3027764
<span style='display:block; white-space:pre;background:#ffe0e0;'>-revision            0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+revision            1
</span> 
 categories          devel
 license             GPL-3
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -137,7 +137,7 @@ foreach qt_major {4 5} {
</span>             depends_lib-append                  \
                 port:qscintilla-qt${qt_major}   \
                 port:python${pver}              \
<span style='display:block; white-space:pre;background:#ffe0e0;'>-                port:py${pver}-sip              \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                port:py${pver}-sip4              \
</span>                 port:py${pver}-pyqt${qt_major}
 
             if {${qt_major} eq 4} {
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/gis/qgis/Portfile b/gis/qgis/Portfile
</span><span style='display:block; white-space:pre;color:#808080;'>index afe8dabe2ed..cb757e11b68 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/gis/qgis/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/gis/qgis/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -6,7 +6,7 @@ PortGroup           github  1.0
</span> PortGroup           qt4     1.0
 
 github.setup        qgis QGIS 2_18_17 final-
<span style='display:block; white-space:pre;background:#ffe0e0;'>-revision            5
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+revision            6
</span> name                qgis
 version             [string map {_ .} ${github.version}]
 categories          gis
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -104,7 +104,7 @@ depends_lib-append      port:python27 \
</span>                         port:qwt61 \
                         port:qjson
 
<span style='display:block; white-space:pre;background:#ffe0e0;'>-depends_build-append    port:py27-sip
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+depends_build-append    port:py27-sip4
</span> 
 depends_run-append      port:py27-psycopg2 \
                         port:py27-spatialite \
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/gis/qgis3/Portfile b/gis/qgis3/Portfile
</span><span style='display:block; white-space:pre;color:#808080;'>index 74ad31de624..63aa4b94815 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/gis/qgis3/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/gis/qgis3/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -189,7 +189,7 @@ foreach pyver ${python_suffixes} {
</span>                                     port:py${pyver}-six \
                                     port:py${pyver}-protobuf3
 
<span style='display:block; white-space:pre;background:#ffe0e0;'>-            depends_build-append    port:py${pyver}-sip
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+            depends_build-append    port:py${pyver}-sip4
</span> 
             depends_run-append      port:py${pyver}-psycopg2 \
                                     port:py${pyver}-requests \
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/python/py-PyQGLViewer/Portfile b/python/py-PyQGLViewer/Portfile
</span><span style='display:block; white-space:pre;color:#808080;'>index 6a04ac9f133..b0d9ecbbf6b 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/python/py-PyQGLViewer/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/python/py-PyQGLViewer/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -5,7 +5,7 @@ PortGroup           python 1.0
</span> 
 name                py-PyQGLViewer
 version             0.11
<span style='display:block; white-space:pre;background:#ffe0e0;'>-revision            2
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+revision            3
</span> categories-append   graphics
 platforms           darwin
 maintainers         inria.fr:christophe.pradal openmaintainer
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -40,7 +40,7 @@ if {${name} ne ${subport}} {
</span> 
     depends_lib-append  port:py${python.version}-pyqt4 \
                         port:libQGLViewer \
<span style='display:block; white-space:pre;background:#ffe0e0;'>-                        port:py${python.version}-sip
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                        port:py${python.version}-sip4
</span> 
     use_configure       yes
     configure.cmd       ${python.bin} configure.py
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/python/py-gpilab-framework/Portfile b/python/py-gpilab-framework/Portfile
</span><span style='display:block; white-space:pre;color:#808080;'>index 4b34bea3600..0b7ce05e963 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/python/py-gpilab-framework/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/python/py-gpilab-framework/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -7,7 +7,7 @@ PortGroup               select 1.0
</span> 
 github.setup            gpilab framework 1.3.0 v
 name                    py-gpilab-framework
<span style='display:block; white-space:pre;background:#ffe0e0;'>-revision                0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+revision                1
</span> python.versions         37 38 39
 supported_archs         noarch
 platforms               darwin
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -53,9 +53,9 @@ if {${name} ne ${subport}} {
</span>                             port:py${python.version}-pyflakes \
                             port:py${python.version}-qimage2ndarray \
                             port:py${python.version}-scipy \
<span style='display:block; white-space:pre;background:#ffe0e0;'>-                            port:py${python.version}-sip \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                            port:py${python.version}-sip4 \
</span>                             port:gpilab_select
<span style='display:block; white-space:pre;background:#ffe0e0;'>-                            
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span>     livecheck.type          none
 
     post-patch {
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/python/py-poppler-qt4/Portfile b/python/py-poppler-qt4/Portfile
</span><span style='display:block; white-space:pre;color:#808080;'>index 020e5e9291a..f537d2cd54c 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/python/py-poppler-qt4/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/python/py-poppler-qt4/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -7,7 +7,7 @@ name                py-poppler-qt4
</span> python.rootname     python-poppler-qt4
 set _n              [string index ${python.rootname} 0]
 version             0.24.0
<span style='display:block; white-space:pre;background:#ffe0e0;'>-revision            3
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+revision            4
</span> platforms           darwin
 license             LGPL-2.1+
 maintainers         {gmail.com:davide.liessi @dliessi} openmaintainer
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -39,7 +39,7 @@ if {${name} ne ${subport}} {
</span> 
     depends_lib-append      port:poppler-qt4-mac \
                             port:qt4-mac \
<span style='display:block; white-space:pre;background:#ffe0e0;'>-                            port:py${python.version}-sip \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                            port:py${python.version}-sip4 \
</span>                             port:py${python.version}-pyqt4
 
     patchfiles              patch-types.sip.diff
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/python/py-poppler-qt5/Portfile b/python/py-poppler-qt5/Portfile
</span><span style='display:block; white-space:pre;color:#808080;'>index c8bc435957d..cb6f04d9536 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/python/py-poppler-qt5/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/python/py-poppler-qt5/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -7,6 +7,8 @@ PortGroup           python 1.0
</span> name                py-poppler-qt5
 python.rootname     python-poppler-qt5
 version             0.75.0
<span style='display:block; white-space:pre;background:#e0ffe0;'>+revision            1
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span> platforms           darwin
 license             LGPL-2.1+
 maintainers         {gmail.com:davide.liessi @dliessi} openmaintainer
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -34,7 +36,7 @@ if {${name} ne ${subport}} {
</span>     depends_build-append    port:py${python.version}-setuptools
 
     depends_lib-append      port:poppler-qt5 \
<span style='display:block; white-space:pre;background:#ffe0e0;'>-                            port:py${python.version}-sip \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                            port:py${python.version}-sip4 \
</span>                             port:py${python.version}-pyqt5
 
     patchfiles              patch-fix-qt-dirs.diff
<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 650059b04a3..31db5a2fe37 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;'>@@ -21,14 +21,14 @@ unset just_want_qt5_version_info
</span> if {[vercmp ${qt5.version} 5.11] < 0} {
     # https://trac.macports.org/ticket/61006
     version             5.14.2
<span style='display:block; white-space:pre;background:#ffe0e0;'>-    revision            0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    revision            1
</span>     checksums           rmd160  9f4672ff0a2165a7557216ac3a14fadbb9db9375 \
                         sha256  bd230c6fd699eabf1ceb51e13a8b79b74c00a80272c622427b80141a22269eb0 \
                         size    3246557
 } else {
     # we the next bump check --allow-sip-warnings if needed
     version             5.15.4
<span style='display:block; white-space:pre;background:#ffe0e0;'>-    revision            0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    revision            1
</span>     checksums           rmd160  c0f93412d4010e5e0d8e14e61af9579b66065bb4 \
                         sha256  2a69597e0dd11caabe75fae133feca66387819fc9bc050f547e5551bce97e5be \
                         size    3258085
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -115,7 +115,7 @@ if {${subport} eq "${name}-common"} {
</span>                         qtscript \
                         qt3d \
                         qt5
<span style='display:block; white-space:pre;background:#ffe0e0;'>-    depends_lib-append  port:py${python.version}-sip \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    depends_lib-append  port:py${python.version}-sip4 \
</span>                         port:dbus-python${python.version}
 
     if {${python.version} == 27} {
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/python/py-pyqwt/Portfile b/python/py-pyqwt/Portfile
</span><span style='display:block; white-space:pre;color:#808080;'>index 264a0ed8fe2..3d2930c9dd5 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/python/py-pyqwt/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/python/py-pyqwt/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -5,7 +5,7 @@ PortGroup           python 1.0
</span> 
 name                py-pyqwt
 version             5.2.0
<span style='display:block; white-space:pre;background:#ffe0e0;'>-revision            12
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+revision            13
</span> 
 platforms           macosx
 categories-append   devel
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -37,7 +37,7 @@ if {${name} ne ${subport}} {
</span> 
     depends_lib-append port:py${python.version}-pyqt4 \
                        port:py${python.version}-numpy \
<span style='display:block; white-space:pre;background:#ffe0e0;'>-                       port:py${python.version}-sip
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                       port:py${python.version}-sip4
</span> 
     patchfiles         patch-sip_qwt5qt4_QwtModule.sip.diff
 
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/python/py-sip4/Portfile b/python/py-sip4/Portfile
</span>new file mode 100644
<span style='display:block; white-space:pre;color:#808080;'>index 00000000000..6a4a929347f
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--- /dev/null
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/python/py-sip4/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -0,0 +1,164 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# -*- coding: utf-8; mode: tcl; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- vim:fenc=utf-8:ft=tcl:et:sw=4:ts=4:sts=4
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+PortSystem          1.0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+PortGroup           python 1.0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+name                py-sip4
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+categories-append   devel
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+maintainers         {michaelld @michaelld} openmaintainer
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+license             {GPL-2 GPL-3 PSF}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+platforms           macosx
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+description         create Python bindings for C and C++ libraries
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+long_description \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    SIP is a tool that makes it very easy to create \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    Python bindings for C and C++ libraries. \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    It was originally developed to create PyQt, \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    the Python bindings for the Qt toolkit, \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    but can be used to create bindings for any \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    C or C++ library.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+homepage            https://www.riverbankcomputing.com/software/sip/intro
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+version             4.19.25
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# from siplib/sip.h[.in]:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+#
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# Define the current API version number.  SIP must handle modules with
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# the same major number and with the same or earlier minor number.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# Whenever data structure elements are added they must be appended and
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# the minor number incremented.  Whenever data structure elements are
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# removed or the order changed then the major number must be
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# incremented and the minor number set to 0.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+#
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# SIP 4.19.[19-25] provides SIP API 12.7
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# SIP 4.19.[14-18] provides SIP API 12.6
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# SIP 4.19.[12-13] provides SIP API 12.5
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# SIP 4.19.[9-11] do not work with MacPorts
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# -> see the "epoch" note above for more info
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# SIP 4.19.8 provides SIP API 12.4
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# SIP 4.19.[4-7] provides SIP API 12.3
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# SIP 4.19.3 provides SIP API 12.2
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# SIP 4.19.[1-2] provides SIP API 12.1
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# SIP 4.19.0 provides SIP API 12.0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# SIP 4.18.[0-1] provides SIP API 11.3
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# SIP 4.17.0 provides SIP API 11.2
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# SIP 4.16.[8-9] provides SIP API 11.2
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+#  -> BUT: the change is to the private API, not the public one.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+#  -> SO: no rev-bumps are be needed.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# SIP 4.16.[1-7] provides SIP API 11.1.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# SIP 4.15.5 provided SIP API 11.0.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+python.versions     27 35 36 37 38 39
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+if {${name} ne ${subport}} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    conflicts           py${python.version}-sip
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    master_sites        https://www.riverbankcomputing.com/static/Downloads/sip/${version}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    set branch          [join [lrange [split ${version} .] 0 1] .]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    set patch           [lindex [split ${version} .] 2]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    if {${patch} == 0} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        distname        sip-${branch}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    } else {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        distname        sip-${version}
</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;'>+    checksums           rmd160 9709eda79d7e0a73eca82e25cbbfd0af6da074c8 \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                        sha256 b39d93e937647807bac23579edbff25fe46d16213f708370072574ab1f1b4211 \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                        size   1056384
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    revision            0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    patchfiles          patch-siputils.py.diff \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                        patch-specs_macx-g++.diff \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                        patch-configure.py.diff \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                        patch-add_ppc64.diff
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    use_configure       yes
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    pre-configure {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        # Ensure correct compilers are used
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        reinplace "s|@CC@|${configure.cc}|" \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+            ${worksrcpath}/specs/macx-g++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        reinplace "s|@CXX@|${configure.cxx}|" \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+            ${worksrcpath}/specs/macx-g++
</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;'>+    configure.cmd       ${python.bin} configure.py
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    configure.pre_args  -b ${python.prefix}/bin \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                        -d ${python.pkgd} \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                        -e ${python.include} \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                        -v ${python.prefix}/share/sip \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                        -p macx-g++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    # always add some arch flags, since the user might have overridden
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    # the default arch build (e.g., ticket #44086).
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    python.add_archflags    no
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    if {![info exists universal_possible]} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        set universal_possible [expr {${os.universal_supported} && [llength ${configure.universal_archs}] >= 2}]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    if {${universal_possible} && [variant_isset universal]} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        foreach arch ${configure.universal_archs} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+            configure.args-append   "--arch=${arch}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        configure.universal_args
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        configure.post_args LFLAGS="-F${frameworks_dir} -L${prefix}/lib \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                                    ${configure.universal_ldflags}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        configure.post_args-append  CFLAGS="${configure.universal_cflags}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        configure.post_args-append  CXXFLAGS="${configure.universal_cxxflags}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    } else {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        configure.args-append       "--arch=${configure.build_arch}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        configure.post_args LFLAGS="-F${frameworks_dir} -L${prefix}/lib \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                                    ${configure.ld_archflags}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        configure.post_args-append  CFLAGS="${configure.cc_archflags}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        configure.post_args-append  CXXFLAGS="${configure.cxx_archflags}"
</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;'>+    if {${configure.sdkroot} eq ""} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        set configure.sdkroot "/"
</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;'>+    configure.args-append --sdk=${configure.sdkroot}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    build.cmd           make
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    build.target        all
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    test.run            yes
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    test.cmd            cd siplib && ${python.bin} -c 'import sip'
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    destroot.cmd        make
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    destroot.destdir    DESTDIR=${destroot}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    post-destroot {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        xinstall -m 755 -d ${destroot}${prefix}/share/doc
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        file copy ${worksrcpath}/doc ${destroot}${prefix}/share/doc/${subport}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        xinstall -m 644 -W ${worksrcpath} LICENSE LICENSE-GPL2 LICENSE-GPL3 NEWS README \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+            ${destroot}${prefix}/share/doc/${subport}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        system "${python.bin} ${python.libdir}/compileall.py ${destroot}${prefix}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        system "${python.bin} -O ${python.libdir}/compileall.py ${destroot}${prefix}"
</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;'>+    notes "${subport} is available under a PSF license with one addition: \n
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    4. Licensee may not use SIP to generate Python bindings for any C or
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+       C++ library for which bindings are already provided by Riverbank. \n
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+GPL-2 or GPL-3 licenses are also available. For details see
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+${prefix}/share/doc/${subport}/LICENSE \[-GPL2 -GPL3\]\n\n"
</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;'>+if {[string last devel ${subport}] != -1} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    livecheck.type   none
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+} else {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    livecheck.type   regex
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    livecheck.url    https://www.riverbankcomputing.com/software/sip/download
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    livecheck.regex  sip-(4(\\.\\d+)+)${extract.suffix}
</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/py-sip4/files/patch-add_ppc64.diff b/python/py-sip4/files/patch-add_ppc64.diff
</span>new file mode 100644
<span style='display:block; white-space:pre;color:#808080;'>index 00000000000..89287508dc2
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--- /dev/null
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/python/py-sip4/files/patch-add_ppc64.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
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ configure.py
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -788,7 +788,7 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+         g = optparse.OptionGroup(p, title="MacOS X Configuration")
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+         g.add_option("--arch", action="append", default=[], dest="arch",
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-                choices=["i386", "x86_64", "ppc"],
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++                choices=["i386", "x86_64", "ppc", "ppc64", "arm64"],
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                 help="build for architecture ARCH")
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+         g.add_option("--deployment-target", action="store", default='',
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                 metavar="VERSION", dest="deployment_target",
</span><span style='display:block; white-space:pre;color:#808080;'>diff --git a/python/py-sip4/files/patch-configure.py.diff b/python/py-sip4/files/patch-configure.py.diff
</span>new file mode 100644
<span style='display:block; white-space:pre;color:#808080;'>index 00000000000..8ed3b5b8f3a
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--- /dev/null
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/python/py-sip4/files/patch-configure.py.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
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ configure.py
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -1046,7 +1046,6 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+         raise
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     except:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+         sys.stderr.write(
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-"""An internal error occured.  Please report all the output from the program,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-including the following traceback, to support@riverbankcomputing.com.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++"""An internal error occured.  Please follow the instructions provided by MacPorts < http://www.macports.org > to report this issue.  Please do not report this issue to Riverbank Computing until MacPorts developers have determined that it is appropriate to do so.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ """)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+         raise
</span><span style='display:block; white-space:pre;color:#808080;'>diff --git a/python/py-sip4/files/patch-siplib_siplib.c.diff b/python/py-sip4/files/patch-siplib_siplib.c.diff
</span>new file mode 100644
<span style='display:block; white-space:pre;color:#808080;'>index 00000000000..3784d9557b3
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--- /dev/null
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/python/py-sip4/files/patch-siplib_siplib.c.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;'>+--- siplib/siplib.c.orig
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ siplib/siplib.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -13073,7 +13073,7 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     name_str = _PyUnicode_AsString(name);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     /* We don't handle Unicode names. */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    if (!PyStringCheck(name))
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    if (!PyString_Check(name))
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+         PyErr_Format(PyExc_TypeError,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                 "attribute name must be string, not '%.200s'",
</span><span style='display:block; white-space:pre;color:#808080;'>diff --git a/python/py-sip4/files/patch-siputils.py.diff b/python/py-sip4/files/patch-siputils.py.diff
</span>new file mode 100644
<span style='display:block; white-space:pre;color:#808080;'>index 00000000000..073f4d8a5b2
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--- /dev/null
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/python/py-sip4/files/patch-siputils.py.diff
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -0,0 +1,96 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- siputils.py.orig
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ siputils.py
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -298,7 +298,7 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+             # These require special handling as they are (potentially) a set of
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+             # space separated values rather than a single value that might
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+             # contain spaces.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-            if m in ("DEFINES", "CONFIG") or m[:6] in ("INCDIR", "LIBDIR"):
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++            if m in ("DEFINES", "CONFIG") or m[:6] in ("INCDIR", "LIBDIR") or m[:12] in ("FRAMEWORKDIR"):
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                 val = val.split()
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+             # We also want to treat lists of libraries in the same way so that
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -615,6 +615,16 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+             libdir.extend(libdir_qt)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+             rpaths.extend(libdir_qt)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++            # projects using SIP may not define FRAMEWORKDIR_QT as a
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++            # configuration option, so try to retrieve it and fallback
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++            # as necessary to a reasonable default for MacPorts
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++            try:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++                frameworkdir_qt = self.optional_list("FRAMEWORKDIR_QT")
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++            except:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++                frameworkdir_qt = self.config.qt_dir + "/Library/Frameworks"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++            libdir.extend(frameworkdir_qt)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++            rpaths.extend(frameworkdir_qt)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+             if qt_version >= 0x040000:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                 # Try and read QT_LIBINFIX from qconfig.pri.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                 qconfig = os.path.join(mkspecs, "qconfig.pri")
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -750,7 +760,7 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                         if mod == "QAxContainer":
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                             incdir.append(os.path.join(qtincdir[0], "ActiveQt"))
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                         elif self._is_framework(mod):
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-                            idir = libdir_qt[0]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++                            idir = frameworkdir_qt[0]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                             if mod == "QtAssistant" and qt_version < 0x040202:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                                 mod = "QtAssistantClient"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -836,7 +846,7 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     def _is_framework(self, mod):
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+         """Return true if the given Qt module is a framework.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+         """
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-        return (self.config.qt_framework and (self.config.qt_version >= 0x040200 or mod != "QtAssistant"))
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++        return (self.config.qt_framework and (self.config.qt_version >= 0x040200 or mod != "QtAssistant") and (mod != "phonon"))
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     def _qt_module_to_lib(self, mname):
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+         """Return the name of the Qt library corresponding to a module.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -964,7 +974,7 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+         if self.generator in ("MSVC", "MSVC.NET", "MSBUILD", "BMAKE"):
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+             prl_name = os.path.join(self.config.qt_lib_dir, clib + ".prl")
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+         elif sys.platform == "darwin" and framework:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-            prl_name = os.path.join(self.config.qt_lib_dir, clib + ".framework", clib + ".prl")
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++            prl_name = os.path.join(self.config.qt_framework_dir, clib + ".framework", clib + ".prl")
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+         else:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+             prl_name = os.path.join(self.config.qt_lib_dir, "lib" + clib + ".prl")
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -2510,6 +2520,40 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                 lhs = line[:assstart].strip()
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                 rhs = line[assend + 1:].strip()
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#                print "lhs is", lhs
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#                print "rhs is", rhs
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++                # check for X = foo $$X (like += but prepending)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++                s_start = rhs.find(lhs)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++                if s_start != -1:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#                    print "maybe found substr"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++                    s_pre_s = s_start
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++                    while s_pre_s >= 0 and rhs[s_pre_s] not in string.whitespace:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++                        s_pre_s -= 1
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++                    s_pre_s += 1
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++                    s_pre_str = rhs[s_pre_s:s_start]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++                    s_end = s_start
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++                    while s_end < len(rhs) and rhs[s_end] not in string.whitespace:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++                        s_end += 1
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++                    s_str = rhs[s_start:s_end]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#                    print "before: s_str =", s_str
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#                    print "befire: s_pre_str =", s_pre_str
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++                    if s_pre_str.find("$$") == 0:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++                        # $$ something, maybe; find that something
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++                        if len(s_pre_str) == 3:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#                            print "looking for brackets at end"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++                            # verify termination is a bracket type
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++                            if s_str[len(s_str)-1] in "}]":
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++                                s_str = s_str[:(len(s_str)-1)]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#                    print "s_str is", s_str
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++                    if len(s_str) == len(lhs):
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#                        print "found match"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++                        # make sure 'lhs' is already in 'raw'
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++                        orig_rhs = raw.get(lhs)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++                        if orig_rhs is not None:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++                            rhs = rhs[:s_pre_s] + orig_rhs
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#                            print "new rhs is", rhs
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                 # Remove the escapes for any quotes.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                 rhs = rhs.replace(r'\"', '"').replace(r"\'", "'")
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;color:#808080;'>diff --git a/python/py-sip4/files/patch-specs_macx-g++.diff b/python/py-sip4/files/patch-specs_macx-g++.diff
</span>new file mode 100644
<span style='display:block; white-space:pre;color:#808080;'>index 00000000000..acd3c43843c
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--- /dev/null
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/python/py-sip4/files/patch-specs_macx-g++.diff
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -0,0 +1,28 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- specs/macx-g++.orig    2012-08-16 14:56:34.000000000 -0400
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ specs/macx-g++ 2012-08-16 14:59:56.000000000 -0400
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -11,7 +11,7 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ QMAKE_INCREMENTAL_STYLE = sublibs
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ QMAKE_COMPILER_DEFINES  += __APPLE__ __GNUC__
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-QMAKE_CC          = cc
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++QMAKE_CC          = @CC@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ QMAKE_LEX         = flex
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ QMAKE_LEXFLAGS            =
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ QMAKE_YACC                = yacc
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -33,7 +33,7 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ QMAKE_CFLAGS_PPC        = -arch ppc
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ QMAKE_CFLAGS_X86        = -arch i386
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-QMAKE_CXX         = c++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++QMAKE_CXX         = @CXX@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ QMAKE_CXXFLAGS            = $$QMAKE_CFLAGS
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ QMAKE_CXXFLAGS_DEPS       = $$QMAKE_CFLAGS_DEPS
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ QMAKE_CXXFLAGS_WARN_ON    = $$QMAKE_CFLAGS_WARN_ON
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -49,6 +49,7 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ QMAKE_LIBDIR              =
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ QMAKE_INCDIR_QT           = $$[QT_INSTALL_HEADERS]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ QMAKE_LIBDIR_QT           = $$[QT_INSTALL_LIBS]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++QMAKE_FRAMEWORKDIR_QT     = $$[QT_INSTALL_FRAMEWORKS]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ QMAKE_INCDIR_OPENGL       = /System/Library/Frameworks/OpenGL.framework/Headers \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   /System/Library/Frameworks/AGL.framework/Headers/
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;color:#808080;'>diff --git a/python/py-wxpython-4.0/Portfile b/python/py-wxpython-4.0/Portfile
</span><span style='display:block; white-space:pre;color:#808080;'>index ce026a52348..d39f1f88129 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/python/py-wxpython-4.0/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/python/py-wxpython-4.0/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -6,7 +6,7 @@ PortGroup           wxWidgets   1.0
</span> 
 name                py-wxpython-4.0
 version             4.1.1
<span style='display:block; white-space:pre;background:#ffe0e0;'>-revision            3
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+revision            4
</span> distname            wxPython-${version}
 set wx_version      [join [lrange [split ${version} .] 0 2] .]
 set branch          [join [lrange [split ${version} .] 0 1] .]
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -49,7 +49,7 @@ if {${name} ne ${subport}} {
</span>         port:${wxWidgets.port} \
         port:py${python.version}-pathlib2 \
         port:py${python.version}-pip \
<span style='display:block; white-space:pre;background:#ffe0e0;'>-        port:py${python.version}-sip
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        port:py${python.version}-sip4
</span> 
     depends_run-append \
         port:py${python.version}-numpy \
</pre><pre style='margin:0'>

</pre>