<pre style='margin:0'>
Zhenfu Shi (i0ntempest) pushed a commit to branch master
in repository macports-ports.

</pre>
<p><a href="https://github.com/macports/macports-ports/commit/e8aee3602c4e6aaa32e3bdf74cbdff5ad581f61e">https://github.com/macports/macports-ports/commit/e8aee3602c4e6aaa32e3bdf74cbdff5ad581f61e</a></p>
<pre style="white-space: pre; background: #F8F8F8">The following commit(s) were added to refs/heads/master by this push:
<span style='display:block; white-space:pre;color:#404040;'>     new e8aee3602c4 cutter-rizin: use qt6, enable python support
</span>e8aee3602c4 is described below

<span style='display:block; white-space:pre;color:#808000;'>commit e8aee3602c4e6aaa32e3bdf74cbdff5ad581f61e
</span>Author: i0ntempest <i0ntempest@i0ntempest.com>
AuthorDate: Fri Apr 25 19:50:14 2025 +1000

<span style='display:block; white-space:pre;color:#404040;'>    cutter-rizin: use qt6, enable python support
</span>---
 devel/cutter-rizin/Portfile                        | 79 ++++++++++++++--------
 .../cutter-rizin/files/patch-3395_PySide_6.8.diff  | 14 ++++
 2 files changed, 64 insertions(+), 29 deletions(-)

<span style='display:block; white-space:pre;color:#808080;'>diff --git a/devel/cutter-rizin/Portfile b/devel/cutter-rizin/Portfile
</span><span style='display:block; white-space:pre;color:#808080;'>index 0db5ead966f..2583d993081 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/devel/cutter-rizin/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/devel/cutter-rizin/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -2,13 +2,13 @@
</span> 
 PortSystem          1.0
 PortGroup           github 1.0
<span style='display:block; white-space:pre;background:#ffe0e0;'>-PortGroup           qt5 1.0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+PortGroup           qt6 1.0
</span> PortGroup           cmake 1.1
 PortGroup           app 1.1
 
 github.setup        rizinorg cutter 2.3.4 v
 name                cutter-rizin
<span style='display:block; white-space:pre;background:#ffe0e0;'>-revision            2
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+revision            3
</span> github.tarball_from releases
 distname            Cutter-v${version}-src
 
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -26,28 +26,32 @@ checksums           rmd160  d74bbc32f6f319117deb40627396f2960492cb83 \
</span>                     sha256  edc266a5f7a1f1c7f71cf5c6c9727e05008b728eae3bb42beb7d0b24ce07c5c3 \
                     size    11608176
 
<span style='display:block; white-space:pre;background:#ffe0e0;'>-extract.rename      yes
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+depends_build-append \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    port:pkgconfig
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+depends_lib-append  port:rizin \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    port:graphviz
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+qt6.depends_build   qttools
</span> 
<span style='display:block; white-space:pre;background:#ffe0e0;'>-depends_lib-append  port:rizin
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-depends_run-append  path:bin/dot:graphviz
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-qt5.depends_build_component \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-                    qttools
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-#qt6.depends_build   qttools
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-qt5.depends_component \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-                    qtsvg
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-#qt6.depends_lib     qtsvg
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+qt6.depends_lib     qtsvg \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    qt5compat
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+extract.rename      yes
</span> 
 compiler.cxx_standard \
                     2017
<span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+patch.args          -p1
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+patchfiles-append   patch-3395_PySide_6.8.diff
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span> configure.args-append \
                     -DCUTTER_USE_BUNDLED_RIZIN=NO \
                     -DCUTTER_ENABLE_GRAPHVIZ=YES \
                     -DCUTTER_ENABLE_DEPENDENCY_DOWNLOADS=NO \
<span style='display:block; white-space:pre;background:#ffe0e0;'>-                    -DCUTTER_EXTRA_PLUGIN_DIRS=${prefix}/lib/rizin/plugins
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-                    #-DCUTTER_QT6=ON
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    -DCUTTER_EXTRA_PLUGIN_DIRS=${prefix}/lib/rizin/plugins \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    -DCUTTER_QT6=ON
</span> 
<span style='display:block; white-space:pre;background:#ffe0e0;'>-#cmake.module_path   ${qt6.dir}/lib/cmake/Qt6LinguistTools
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-# Cannot build with Qt6 for now because we don't have pyside6 port
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+cmake.module_path   ${qt6.dir}/lib/cmake/Qt6LinguistTools
</span> 
 app.name            Cutter
 app.identifier      re.[string trimright ${github.author} "org"].${github.project}
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -61,41 +65,58 @@ destroot.keepdirs   ${destroot}${prefix}/lib/rizin/plugins
</span> 
 proc python-depends {python_branch} {
         global frameworks_dir prefix
<span style='display:block; white-space:pre;background:#ffe0e0;'>-        set python_version [string map {. ""} ${python_branch}]
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-        set ::python_framework ${frameworks_dir}/Python.framework
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-        global python_framework
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        set python_version  [string map {. ""} ${python_branch}]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        set ::python_prefix ${frameworks_dir}/Python.framework/Versions/${python_branch}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        global python_prefix
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        set ::python_pkgd   ${python_prefix}/lib/python${python_branch}/site-packages
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        global python_pkgd
</span>         # same here, and creating an alias of the variable in proc namespace so we can use it here
 
         depends_lib-append  port:python${python_version} \
<span style='display:block; white-space:pre;background:#ffe0e0;'>-                            port:py${python_version}-pyside2
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-        
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                            port:py${python_version}-pyside6
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span>         configure.args-append \
                             -DCUTTER_ENABLE_PYTHON=ON \
                             -DCUTTER_ENABLE_PYTHON_BINDINGS=ON \
<span style='display:block; white-space:pre;background:#ffe0e0;'>-                            -DPYTHON_LIBRARY="${python_framework}/Versions/${python_branch}/lib/libpython${python_branch}.dylib" \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-                            -DPYTHON_INCLUDE_DIR="${python_framework}/Versions/${python_branch}/include/python${python_branch}" \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                            -DPYTHON_LIBRARY="${python_prefix}/lib/libpython${python_branch}.dylib" \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                            -DPYTHON_INCLUDE_DIR="${python_prefix}/include/python${python_branch}" \
</span>                             -DPYTHON_EXECUTABLE="${prefix}/bin/python${python_branch}"
<span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        cmake.install_rpath-append \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                            ${python_pkgd}/PySide6 \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                            ${python_pkgd}/shiboken6
</span> }
 
<span style='display:block; white-space:pre;background:#ffe0e0;'>-# Python variants are currently broken due to https://trac.macports.org/ticket/65411
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-variant python39 conflicts python310 python311 description {Enable Python support and bindings using Python 3.9} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+variant python39 conflicts python310 python311 python312 python313 description {Enable Python support and bindings using Python 3.9} {
</span>     set ::python_branch 3.9
     # :: refers to global namespace, so the variable is created in global ns and is usable in pre-destroot
     python-depends ${::python_branch}
 }
 
<span style='display:block; white-space:pre;background:#ffe0e0;'>-variant python310 conflicts python39 python311 description {Enable Python support and bindings using Python 3.10} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+variant python310 conflicts python39 python311 python31 python3132 description {Enable Python support and bindings using Python 3.10} {
</span>     set ::python_branch 3.10
     # :: refers to global namespace, so the variable is created in global ns and is usable in pre-destroot
     python-depends ${::python_branch}
 }
 
<span style='display:block; white-space:pre;background:#ffe0e0;'>-variant python311 conflicts python39 python311 description {Enable Python support and bindings using Python 3.11} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+variant python311 conflicts python39 python310 python312 python313 description {Enable Python support and bindings using Python 3.11} {
</span>     set ::python_branch 3.11
     # :: refers to global namespace, so the variable is created in global ns and is usable in pre-destroot
     python-depends ${::python_branch}
 }
 
<span style='display:block; white-space:pre;background:#ffe0e0;'>-#if {![variant_isset python39] && ![variant_isset python310]} {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-#    default_variants +python311
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-#}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+variant python312 conflicts python39 python310 python311 python313 description {Enable Python support and bindings using Python 3.11} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    set ::python_branch 3.12
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    # :: refers to global namespace, so the variable is created in global ns and is usable in pre-destroot
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    python-depends ${::python_branch}
</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;'>+variant python313 conflicts python39 python310 python311 python312 description {Enable Python support and bindings using Python 3.11} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    set ::python_branch 3.13
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    # :: refers to global namespace, so the variable is created in global ns and is usable in pre-destroot
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    python-depends ${::python_branch}
</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 {![variant_isset python39] && ![variant_isset python310] && ![variant_isset python311] && ![variant_isset python312]} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    default_variants +python313
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+}
</span><span style='display:block; white-space:pre;color:#808080;'>diff --git a/devel/cutter-rizin/files/patch-3395_PySide_6.8.diff b/devel/cutter-rizin/files/patch-3395_PySide_6.8.diff
</span>new file mode 100644
<span style='display:block; white-space:pre;color:#808080;'>index 00000000000..eb798425d64
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--- /dev/null
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/devel/cutter-rizin/files/patch-3395_PySide_6.8.diff
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -0,0 +1,14 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/src/common/PythonManager.cpp b/src/common/PythonManager.cpp
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index eb43b018e..dca8fcba9 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/src/common/PythonManager.cpp
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/src/common/PythonManager.cpp
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -133,7 +133,9 @@ void PythonManager::shutdown()
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     Core()->setProperty("_PySideInvalidatePtr", QVariant());
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     // see PySide::destroyQCoreApplication()
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#    if QT_VERSION < QT_VERSION_CHECK(6, 8, 0)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     PySide::SignalManager::instance().clear();
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#    endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     Shiboken::BindingManager &bm = Shiboken::BindingManager::instance();
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     SbkObject *pyQApp = bm.retrieveWrapper(QCoreApplication::instance());
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     PyTypeObject *pyQObjectType = Shiboken::Conversions::getPythonTypeObject("QObject*");
</span></pre><pre style='margin:0'>

</pre>