<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>