commit:     bae5ae994b8a67ea627bf27c82973b808922e4f7
Author:     Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Tue May 28 01:36:09 2024 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Tue May 28 01:36:09 2024 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=bae5ae99

net-wireless/uhd: fix build w/ boost-1.85

Closes: https://bugs.gentoo.org/932239
Thanks-to: Vladislav Mikhailikov <vmikhailikov <AT> gmail.com>
Signed-off-by: Sam James <sam <AT> gentoo.org>

 .../uhd/files/uhd-4.6.0.0-boost-1.85-1.patch       | 80 ++++++++++++++++++++++
 .../uhd/files/uhd-4.6.0.0-boost-1.85-2.patch       | 31 +++++++++
 net-wireless/uhd/uhd-4.6.0.0.ebuild                |  5 ++
 3 files changed, 116 insertions(+)

diff --git a/net-wireless/uhd/files/uhd-4.6.0.0-boost-1.85-1.patch 
b/net-wireless/uhd/files/uhd-4.6.0.0-boost-1.85-1.patch
new file mode 100644
index 000000000000..5861b93b6676
--- /dev/null
+++ b/net-wireless/uhd/files/uhd-4.6.0.0-boost-1.85-1.patch
@@ -0,0 +1,80 @@
+https://github.com/EttusResearch/uhd/commit/ea586168c596d13d05d145832519755794649ba0
+https://bugs.gentoo.org/932239#c10
+
+From ea586168c596d13d05d145832519755794649ba0 Mon Sep 17 00:00:00 2001
+From: Martin Braun <martin.br...@ettus.com>
+Date: Thu, 28 Mar 2024 17:28:57 +0100
+Subject: [PATCH 08/30] lib: Replace deprecated boost::filesystem usage
+
+Recent versions of Boost were throwing compiler warnings due to usage of
+deprecated functions. Our minimum version of Boost (1.65) already
+provides the replacements, so this commit simply updates these
+deprecated use cases.
+---
+ host/lib/usrp/mpmd/mpmd_image_loader.cpp                 | 6 ++----
+ host/lib/usrp/x300/x300_image_loader.cpp                 | 4 ++--
+ host/lib/usrp_clock/octoclock/octoclock_image_loader.cpp | 2 +-
+ 3 files changed, 5 insertions(+), 7 deletions(-)
+
+diff --git a/host/lib/usrp/mpmd/mpmd_image_loader.cpp 
b/host/lib/usrp/mpmd/mpmd_image_loader.cpp
+index 31b6387ab..ba0f45fad 100644
+--- a/lib/usrp/mpmd/mpmd_image_loader.cpp
++++ b/lib/usrp/mpmd/mpmd_image_loader.cpp
+@@ -27,8 +27,6 @@
+ #include <cctype>
+ #include <fstream>
+ #include <iterator>
+-#include <sstream>
+-#include <streambuf>
+ #include <string>
+ #include <vector>
+ 
+@@ -271,7 +269,7 @@ static uhd::usrp::component_files_t 
bin_dts_to_component_files(
+     // DTS component struct
+     // First, we need to determine the name
+     const std::string base_name =
+-        boost::filesystem::change_extension(fpga_path, "").string();
++        boost::filesystem::path(fpga_path).replace_extension("").string();
+     if (base_name == fpga_path) {
+         const std::string err_msg(
+             "Can't cut extension from FPGA filename... " + fpga_path);
+@@ -340,7 +338,7 @@ static void mpmd_send_fpga_to_device(
+         UHD_LOG_TRACE("MPMD IMAGE LOADER", "FPGA path: " << fpga_path);
+ 
+         // If the fpga_path is a lvbitx file, parse it as such
+-        if (boost::filesystem::extension(fpga_path) == ".lvbitx") {
++        if (boost::filesystem::path(fpga_path).extension() == ".lvbitx") {
+             all_component_files = lvbitx_to_component_files(fpga_path, 
delay_reload);
+         } else {
+             all_component_files = bin_dts_to_component_files(fpga_path, 
delay_reload);
+diff --git a/host/lib/usrp/x300/x300_image_loader.cpp 
b/host/lib/usrp/x300/x300_image_loader.cpp
+index d7a64d4d0..a84dba420 100644
+--- a/lib/usrp/x300/x300_image_loader.cpp
++++ b/lib/usrp/x300/x300_image_loader.cpp
+@@ -138,8 +138,8 @@ static void x300_validate_image(x300_session_t& session)
+             boost::format("Could not find image at path \"%s\".") % 
session.filepath));
+     }
+ 
+-    std::string extension = fs::extension(session.filepath);
+-    session.lvbitx        = (extension == ".lvbitx");
++    const std::string extension = 
fs::path(session.filepath).extension().string();
++    session.lvbitx              = (extension == ".lvbitx");
+ 
+     if (session.lvbitx) {
+         extract_from_lvbitx(session);
+diff --git a/host/lib/usrp_clock/octoclock/octoclock_image_loader.cpp 
b/host/lib/usrp_clock/octoclock/octoclock_image_loader.cpp
+index 930c5d758..4c39790c7 100644
+--- a/lib/usrp_clock/octoclock/octoclock_image_loader.cpp
++++ b/lib/usrp_clock/octoclock/octoclock_image_loader.cpp
+@@ -95,7 +95,7 @@ static void 
octoclock_validate_firmware_image(octoclock_session_t& session)
+                                      % session.image_filepath));
+     }
+ 
+-    std::string extension = fs::extension(session.image_filepath);
++    const std::string extension = 
fs::path(session.image_filepath).extension().string();
+     if (extension == ".bin") {
+         octoclock_read_bin(session);
+     } else if (extension == ".hex") {
+-- 
+2.44.1
+

diff --git a/net-wireless/uhd/files/uhd-4.6.0.0-boost-1.85-2.patch 
b/net-wireless/uhd/files/uhd-4.6.0.0-boost-1.85-2.patch
new file mode 100644
index 000000000000..fab224782ccc
--- /dev/null
+++ b/net-wireless/uhd/files/uhd-4.6.0.0-boost-1.85-2.patch
@@ -0,0 +1,31 @@
+https://github.com/EttusResearch/uhd/commit/c4863b9b9f8b639260f7797157e8ac4dd81fef93
+https://bugs.gentoo.org/932239#c11
+
+From c4863b9b9f8b639260f7797157e8ac4dd81fef93 Mon Sep 17 00:00:00 2001
+From: Joerg Hofrichter <joerg.hofrich...@ni.com>
+Date: Wed, 17 Apr 2024 13:59:19 +0200
+Subject: [PATCH 26/30] fix compilation with boost 1.85.0
+
+The header boost/filesystem/convenience.hpp was removed with boost 1.85.0
+
+The deprecated extension-related functions were already replaced with
+commit ea586168c596d13d05d145832519755794649ba0
+---
+ host/lib/usrp/mpmd/mpmd_image_loader.cpp | 1 -
+ 1 file changed, 1 deletion(-)
+
+diff --git a/host/lib/usrp/mpmd/mpmd_image_loader.cpp 
b/host/lib/usrp/mpmd/mpmd_image_loader.cpp
+index ba0f45fad..9824bbf4d 100644
+--- a/lib/usrp/mpmd/mpmd_image_loader.cpp
++++ b/lib/usrp/mpmd/mpmd_image_loader.cpp
+@@ -21,7 +21,6 @@
+ #include <boost/algorithm/string.hpp>
+ #include <boost/archive/iterators/binary_from_base64.hpp>
+ #include <boost/archive/iterators/transform_width.hpp>
+-#include <boost/filesystem/convenience.hpp>
+ #include <boost/optional.hpp>
+ #include <boost/property_tree/xml_parser.hpp>
+ #include <cctype>
+-- 
+2.44.1
+

diff --git a/net-wireless/uhd/uhd-4.6.0.0.ebuild 
b/net-wireless/uhd/uhd-4.6.0.0.ebuild
index 9872c06071f8..bfe690bb44c8 100644
--- a/net-wireless/uhd/uhd-4.6.0.0.ebuild
+++ b/net-wireless/uhd/uhd-4.6.0.0.ebuild
@@ -50,6 +50,11 @@ BDEPEND="
 
 S="${WORKDIR}/${P}/host"
 
+PATCHES=(
+       "${FILESDIR}"/uhd-4.6.0.0-boost-1.85-1.patch
+       "${FILESDIR}"/uhd-4.6.0.0-boost-1.85-2.patch
+)
+
 src_unpack() {
        default
        mv "uhd-images_${PV}" images || die

Reply via email to