<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/f85aa98dac3ff88de244e77a5935af920918506c">https://github.com/macports/macports-ports/commit/f85aa98dac3ff88de244e77a5935af920918506c</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 f85aa98dac3 ubertooth: new port [skip ci]
</span>f85aa98dac3 is described below

<span style='display:block; white-space:pre;color:#808000;'>commit f85aa98dac3ff88de244e77a5935af920918506c
</span>Author: Sergey Fedorov <vital.had@gmail.com>
AuthorDate: Tue Nov 1 14:20:38 2022 +0800

<span style='display:block; white-space:pre;color:#404040;'>    ubertooth: new port
</span><span style='display:block; white-space:pre;color:#404040;'>    [skip ci]
</span>---
 devel/ubertooth/Portfile                 | 108 +++++++++++++++++++++++++++++++
 devel/ubertooth/files/patch-python3.diff |  37 +++++++++++
 2 files changed, 145 insertions(+)

<span style='display:block; white-space:pre;color:#808080;'>diff --git a/devel/ubertooth/Portfile b/devel/ubertooth/Portfile
</span>new file mode 100644
<span style='display:block; white-space:pre;color:#808080;'>index 00000000000..3cc2d5b35f5
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--- /dev/null
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/devel/ubertooth/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -0,0 +1,108 @@
</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           active_variants 1.1
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+PortGroup           cmake 1.1
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+PortGroup           github 1.0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+PortGroup           legacysupport 1.1
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+name                ubertooth
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+categories          devel net security
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+description         Software, firmware and hardware designs for Ubertooth.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+long_description    Project Ubertooth is an open source wireless development platform suitable \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    for Bluetooth experimentation. Ubertooth ships with a capable BLE (Bluetooth Smart) \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    sniffer and can sniff some data from Basic Rate (BR) Bluetooth Classic connections.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+license             GPL-2
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+maintainers         {@barracuda156 gmail.com:vital.had} openmaintainer
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+homepage            https://ubertooth.readthedocs.io
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+subport             ${name}-devel {}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+if {${subport} eq "${name}"} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    conflicts       ${name}-devel
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    github.setup    greatscottgadgets ubertooth 2020-12-R1
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    checksums       rmd160  078b6b2ae3dc7e003358d049800d804fa74ba834 \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    sha256  24dd76995419de73dcf4f17bb341f386826d68071191e1d7d2d30a699949102d \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    size    1373134
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+} elseif {${subport} eq "${name}-devel"} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    conflicts       ${name}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    github.setup    greatscottgadgets ubertooth 3e9de91f406ea13f4a5a76c3fd5e21c2a0375ad8
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    version         2022-07-19
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    checksums       rmd160  3a3545670f44bcb3a1ce257bf5dd5da42fba1014 \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    sha256  3ad1dc36accd8b7f69fdf4489df93afcaa4d1e7bdd9448b24a23eacc525deec5 \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    size    1307090
</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;'>+# clock_gettime
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+legacysupport.newest_darwin_requires_legacy 15
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+patchfiles          patch-python3.diff
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+set python_branch   3.10
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+set python_ver      [string map {. {}} ${python_branch}]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+configure.python    ${prefix}/bin/python${python_branch}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</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;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+depends_lib-append  path:lib/pkgconfig/libusb-1.0.pc:libusb
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# It is advised to used paired versions:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+if {${subport} eq "${name}"} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    depends_lib-append  path:lib/pkgconfig/libbtbb.pc:libbtbb
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+} elseif {${subport} eq "${name}-devel"} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    depends_lib-append  path:lib/pkgconfig/libbtbb.pc:libbtbb-devel
</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 {${build_arch} ni [list ppc ppc64]} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    depends_lib-append \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    port:python${python_ver} \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    port:py${python_ver}-numpy \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    port:py${python_ver}-pyside \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    port:py${python_ver}-qtpy
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    depends_build-append \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    port:py${python_ver}-setuptools
</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;'>+post-patch {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    fs-traverse f ${worksrcpath}/host/python {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        if {[file extension ${f}] eq ".py"} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+            reinplace -q "s|/usr/bin/env python3|${configure.python}|" ${f}
</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;'>+    reinplace "s|/usr/bin/env python3|${configure.python}|" ${worksrcpath}/host/python/ubtbr/ubertooth-btbr
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    reinplace "s|/usr/bin/env python3|${configure.python}|" ${worksrcpath}/host/python/specan_ui/ubertooth-specan-ui
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    reinplace "s|/usr/bin/env python3|${configure.python}|" ${worksrcpath}/host/python/specan_ui/setup.py.in
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    reinplace "s|@PYTHON3@|${configure.python}|g" ${worksrcpath}/host/python/ubtbr/CMakeLists.txt
</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;'>+cmake.source_dir    ${worksrcpath}/host
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+cmake.module_path   ${cmake.source_dir}/cmake/modules
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+compiler.blacklist-append *gcc-4.*
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+platform darwin powerpc {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    # Indirect dependency, py310-shiboken, currently fails on PPC: https://trac.macports.org/ticket/65708
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    configure.args-append \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    -DENABLE_PYTHON=OFF
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    # Needed for Rosetta
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    compiler.blacklist-append clang
</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;'>+# It is advised to used paired versions:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+pre-fetch {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    if {${subport} eq "${name}-devel"} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        if {[catch {set result [active_variants libbtbb-devel ""]}]} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+            ui_msg "Error: ${name} should be paired with libbtbb. Please install a libbtbb-devel subport."
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+            return -code error "Version mismatch."
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    } elseif {${subport} eq "${name}"} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        if {[catch {set result [active_variants libbtbb ""]}]} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+            ui_msg "Error: ${name} should be paired with libbtbb. Please install a libbtbb subport."
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+            return -code error "Version mismatch."
</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;color:#808080;'>diff --git a/devel/ubertooth/files/patch-python3.diff b/devel/ubertooth/files/patch-python3.diff
</span>new file mode 100644
<span style='display:block; white-space:pre;color:#808080;'>index 00000000000..9793cdc7628
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--- /dev/null
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/devel/ubertooth/files/patch-python3.diff
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -0,0 +1,37 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- host/python/CMakeLists.txt.orig        2022-07-19 05:15:57.000000000 +0800
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ host/python/CMakeLists.txt     2022-11-01 18:44:41.000000000 +0800
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -20,7 +20,8 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ project(ubertooth-python)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # Check for python installation
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-find_package(Python3)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++set(Python3_FIND_UNVERSIONED_NAMES NEVER)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++find_package(PYTHON3)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ if(NOT Python3_FOUND)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   return()
</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;'>+--- host/python/ubtbr/CMakeLists.txt.orig  2022-07-19 05:15:57.000000000 +0800
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ host/python/ubtbr/CMakeLists.txt       2022-11-01 19:48:10.000000000 +0800
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -1,4 +1,5 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-find_program(PYTHON3 "python3")
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++set(Python3_FIND_UNVERSIONED_NAMES NEVER)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++find_package(PYTHON3)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ set(SETUP_PY_IN   ${CMAKE_CURRENT_SOURCE_DIR}/setup.py.in)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ set(SETUP_PY    ${CMAKE_CURRENT_BINARY_DIR}/setup.py)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ set(DEPS        ${CMAKE_CURRENT_SOURCE_DIR}/ubtbr/__init__.py
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -9,12 +10,12 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ configure_file(${SETUP_PY_IN} ${SETUP_PY})
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ add_custom_command(OUTPUT ${OUTPUT}/timestamp
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-                   COMMAND ${PYTHON3} setup.py build
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++                   COMMAND @PYTHON3@ setup.py build
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    COMMAND ${CMAKE_COMMAND} -E touch ${OUTPUT}/timestamp
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    DEPENDS ${DEPS})
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ add_custom_target(ubtbr ALL DEPENDS ${OUTPUT}/timestamp)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-install(CODE "execute_process(COMMAND ${PYTHON3} ${SETUP_PY} build -b ${OUTPUT} install -f --prefix=${CMAKE_INSTALL_PREFIX})")
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++install(CODE "execute_process(COMMAND @PYTHON3@ ${SETUP_PY} build -b ${OUTPUT} install -f --prefix=${CMAKE_INSTALL_PREFIX})")
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ add_custom_target(ubertooth-btbr ALL DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/ubertooth-btbr)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ install(PROGRAMS ubertooth-btbr DESTINATION ${INSTALL_DEFAULT_BINDIR})
</span></pre><pre style='margin:0'>

</pre>