<pre style='margin:0'>
ra1nb0w (ra1nb0w) pushed a commit to branch gnuradio-3.10
in repository macports-ports.
</pre>
<p><a href="https://github.com/macports/macports-ports/commit/045ebeb70238af7c40d6e7a76190c2a88de3650c">https://github.com/macports/macports-ports/commit/045ebeb70238af7c40d6e7a76190c2a88de3650c</a></p>
<pre style="white-space: pre; background: #F8F8F8"><span style='display:block; white-space:pre;color:#808000;'>commit 045ebeb70238af7c40d6e7a76190c2a88de3650c
</span>Author: Davide Gerhard <ra1nb0w@macports.org>
AuthorDate: Fri Feb 11 11:47:10 2022 +0100
<span style='display:block; white-space:pre;color:#404040;'> gnuradio: update version to 3.10.1.1
</span>---
science/gnuradio/Portfile | 87 ++++----
.../gnuradio/files/patch-C_CXX_STANDARD.38.diff | 146 --------------
...tch-fix-GNURadioControlPortClient-usage.38.diff | 48 -----
.../gnuradio/files/patch-fix-pkg-config.38.diff | 24 ---
...sh.38.diff => patch-quartz_drop_crash.310.diff} | 0
.../gnuradio/files/patch-std::filesystem.310.diff | 221 +++++++++++++++++++++
6 files changed, 261 insertions(+), 265 deletions(-)
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/science/gnuradio/Portfile b/science/gnuradio/Portfile
</span><span style='display:block; white-space:pre;color:#808080;'>index 78594c84484..7c6c27f9a2c 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/science/gnuradio/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/science/gnuradio/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -15,11 +15,11 @@ license GPL-3
</span>
if {${subport} eq ${name}} {
<span style='display:block; white-space:pre;background:#ffe0e0;'>- github.setup gnuradio gnuradio 3.8.5.0 v
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- checksums rmd160 098825a19d8962bac72f2f2e14fcdfee8500f307 \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- sha256 dd336400034b57b7bce7b1fec6c5cd99f1e9dde7b78faa2cd28105877c213b14 \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- size 3399901
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- revision 1
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ github.setup gnuradio gnuradio 3.10.1.1 v
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ checksums rmd160 e1bc73346df36b00773148930ab905ac90b7c80a \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ sha256 bf98e13db58e0b2ed2e6cb0bb35e80f4b080d20b2bae37d6c18c64f111981559 \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ size 4317609
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ revision 0
</span>
long_description ${description}: \
This port is kept up with the GNU Radio release, \
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -27,24 +27,21 @@ if {${subport} eq ${name}} {
</span>
conflicts gnuradio37 gnuradio-next
<span style='display:block; white-space:pre;background:#ffe0e0;'>- # temporary patch to fix and allow external setting for
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- # CMAKE_C/CXX_STANDARD
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- patchfiles-append \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- patch-C_CXX_STANDARD.38.diff
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- # temporary patch to fix usage of GNURadioControlPortClient
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- patchfiles-append \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- patch-fix-GNURadioControlPortClient-usage.38.diff
</span> # fix Quartz behaviour
# TODO verify https://github.com/gnuradio/gnuradio/issues/2726
patchfiles-append \
<span style='display:block; white-space:pre;background:#ffe0e0;'>- patch-quartz_drop_crash.38.diff
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- # fix https://github.com/gnuradio/gnuradio/pull/3981
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- patchfiles-append \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- patch-fix-pkg-config.38.diff
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ patch-quartz_drop_crash.310.diff
</span>
<span style='display:block; white-space:pre;background:#ffe0e0;'>- set GR_VERSION_INFO "Release 3.8"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # macOS 10.14 doesn't have std::filesystem but supports c++17
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # revert to boost implementation
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ if {${os.platform} eq "darwin" && ${os.major} == 18} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ patchfiles-append \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ patch-std::filesystem.310.diff
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span>
<span style='display:block; white-space:pre;background:#ffe0e0;'>- github.livecheck.regex {(3.8.[0-9.]+)}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ set GR_VERSION_INFO "Release 3.10"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ github.livecheck.regex {(3.10.[0-9.]+)}
</span> }
subport gnuradio37 {
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -143,9 +140,8 @@ configure.args-append \
</span> -DENABLE_PERFORMANCE_COUNTERS=OFF \
-DENABLE_GR_ZEROMQ=OFF \
-DENABLE_GR_LOG=OFF \
<span style='display:block; white-space:pre;background:#ffe0e0;'>- -DLOG4CPP_FOUND=OFF \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- -DLOG4CPP_INCLUDE_DIRS= \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- -DLOG4CPP_LIBRARIES=
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ -DENABLE_GR_SOAPY=OFF \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ -DENABLE_GR_IIO=OFF
</span>
# override default version string to be MacPorts-specific
configure.args-append \
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -454,11 +450,6 @@ if {${subport} eq "gnuradio37"} {
</span> depends_lib-append \
port:log4cpp
<span style='display:block; white-space:pre;background:#ffe0e0;'>- configure.args-delete \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- -DLOG4CPP_FOUND= \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- -DLOG4CPP_INCLUDE_DIRS= \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- -DLOG4CPP_LIBRARIES=
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span> configure.args-append \
-DLOG4CPP_FOUND=ON \
-DLOG4CPP_INCLUDE_DIRS=${prefix}/include \
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -470,39 +461,41 @@ if {${subport} eq "gnuradio37"} {
</span>
} else {
<span style='display:block; white-space:pre;background:#ffe0e0;'>- # logging using log4cpp is always enabled on GR 3.8+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ configure.args-append \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ -DENABLE_TESTING=OFF
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span> depends_lib-append \
<span style='display:block; white-space:pre;background:#ffe0e0;'>- port:log4cpp
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ port:spdlog \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ port:libunwind \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ port:py${active_python_version_no_dot}-mako \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ port:py${active_python_version_no_dot}-pygccxml
</span>
<span style='display:block; white-space:pre;background:#ffe0e0;'>- configure.args-delete \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- -DLOG4CPP_FOUND=OFF \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- -DLOG4CPP_INCLUDE_DIRS= \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- -DLOG4CPP_LIBRARIES=
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ variant soapysdr description {Install GNU Radio with SoapySDR support} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ configure.args-replace \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ -DENABLE_GR_SOAPY=OFF \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ -DENABLE_GR_SOAPY=ON
</span>
<span style='display:block; white-space:pre;background:#ffe0e0;'>- configure.args-append \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- -DLOG4CPP_FOUND=ON \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- -DLOG4CPP_INCLUDE_DIRS=${prefix}/include \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- -DLOG4CPP_LIBRARIES=${prefix}/lib/liblog4cpp.dylib
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ depends_lib-append \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ port:soapysdr
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span>
<span style='display:block; white-space:pre;background:#ffe0e0;'>-}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ variant iio description {Install GNU Radio with IIO support} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ configure.args-replace \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ -DENABLE_GR_IIO=OFF \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ -DENABLE_GR_IIO=ON
</span>
<span style='display:block; white-space:pre;background:#ffe0e0;'>-variant quartz conflicts x11 description {Enable native macOS graphics support} {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- require_active_variants gtk3 quartz
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- require_active_variants path:lib/pkgconfig/cairo.pc:cairo quartz
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- require_active_variants path:lib/pkgconfig/pango.pc:pango quartz
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ depends_lib-append \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ port:libad9361-iio \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ port:libiio
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span>
<span style='display:block; white-space:pre;background:#ffe0e0;'>-variant x11 conflicts quartz description {Enable X11 support} {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- require_active_variants gtk3 x11
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- require_active_variants path:lib/pkgconfig/cairo.pc:cairo x11
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- require_active_variants path:lib/pkgconfig/pango.pc:pango x11
</span> }
# per user consensus: enable all variants except +jack, +portaudio,
# +ctrlport, +ctrlport_thrift, +performance_counters,+debug, and
# +universal.
default_variants +grc +qtgui +uhd +wavelet \
<span style='display:block; white-space:pre;background:#ffe0e0;'>- +sdl +zeromq
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ +sdl +zeromq +soapysdr +iio
</span>
post-destroot {
# fix residual cmake module install location when
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/science/gnuradio/files/patch-C_CXX_STANDARD.38.diff b/science/gnuradio/files/patch-C_CXX_STANDARD.38.diff
</span>deleted file mode 100644
<span style='display:block; white-space:pre;color:#808080;'>index 52a7916ce2c..00000000000
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/science/gnuradio/files/patch-C_CXX_STANDARD.38.diff
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ /dev/null
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -1,146 +0,0 @@
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>---- CMakeLists.txt.orig
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+++ CMakeLists.txt
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -141,12 +141,16 @@
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- MESSAGE(status "Skipping compiler version check.")
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- ENDIF()
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--# Configure C++ standard if not externally specified (will actually be
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--# set after CppUnit check below). Use the variable CMAKE_CXX_STANDARD
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--# since it will actually be used for this purposes starting in CMake 3.1.
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+########################################################################
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+# Configure C++ standard if not externally specified. Use the variable
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+# CMAKE_CXX_STANDARD since it will actually be used for this purposes
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+# starting in CMake 3.1.
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+########################################################################
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--SET(CMAKE_C_EXTENSIONS OFF)
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--SET(CMAKE_CXX_EXTENSIONS OFF)
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+# save current setting, if provided
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+IF(CMAKE_CXX_STANDARD)
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+ SET(CMAKE_CXX_STANDARD_EXT ${CMAKE_CXX_STANDARD})
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+ENDIF()
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- IF(CMAKE_CXX_COMPILER_ID STREQUAL "GNU")
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- SET(CMAKE_CXX_STANDARD 11)
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -155,9 +159,60 @@
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- ELSEIF(CMAKE_CXX_COMPILER_ID STREQUAL "MSVC")
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- SET(CMAKE_CXX_STANDARD 11)
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- ELSE()
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-- message(WARNING "C++ standard could not be set because compiler is not GNU, Clang or MSVC.")
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+ MESSAGE(WARNING "C++ standard could not be set because compiler is not GNU, Clang or MSVC.")
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+ENDIF()
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+# if the CXX standard was provided externally, make sure it meets GR's minimum
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+IF(CMAKE_CXX_STANDARD_EXT)
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+ # verify that the provided C++ standard is one CMake
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+ # accepts. options are 90, 99, and 11 as of CMake 3.11.4 (with 20
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+ # coming in 3.12).
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+ IF(NOT ${CMAKE_CXX_STANDARD_EXT} VERSION_EQUAL "98" AND
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+ NOT ${CMAKE_CXX_STANDARD_EXT} VERSION_EQUAL "11" AND
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+ NOT ${CMAKE_CXX_STANDARD_EXT} VERSION_EQUAL "14" AND
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+ NOT ${CMAKE_CXX_STANDARD_EXT} VERSION_EQUAL "17")
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+ MESSAGE(WARNING "Requested C++ standard (${CMAKE_CXX_STANDARD_EXT}) isn't recognized by CMake; expecting one of 98, 11, 14, or 17. Ignoring and using the GNU Radio default C++ standard (${CMAKE_CXX_STANDARD}).")
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+ SET(CMAKE_CXX_STANDARD_EXT ${CMAKE_CXX_STANDARD})
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+ ENDIF()
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+ # fix settings to be comparables. It will be -many- years until we
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+ # have to worry about this value getting large enough to wrap
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+ # around (to 90), so just add 100 to any value not in the 90's,
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+ # for comparison sake.
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+ IF(${CMAKE_CXX_STANDARD} VERSION_EQUAL "98")
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+ # just copy the value
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+ SET(CMAKE_CXX_STANDARD_CMP ${CMAKE_CXX_STANDARD})
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+ ELSE()
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+ # add 100 to the value
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+ MATH(EXPR CMAKE_CXX_STANDARD_CMP "${CMAKE_CXX_STANDARD} + 100")
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+ ENDIF()
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+ IF(${CMAKE_CXX_STANDARD_EXT} VERSION_EQUAL "98")
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+ # just copy the value
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+ SET(CMAKE_CXX_STANDARD_EXT_CMP ${CMAKE_CXX_STANDARD_EXT})
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+ ELSE()
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+ # add 100 to the value
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+ MATH(EXPR CMAKE_CXX_STANDARD_EXT_CMP "${CMAKE_CXX_STANDARD_EXT} + 100")
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+ ENDIF()
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+ # compare values
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+ IF(${CMAKE_CXX_STANDARD_EXT_CMP} VERSION_LESS ${CMAKE_CXX_STANDARD_CMP})
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+ MESSAGE(WARNING "Requested C++ standard (${CMAKE_CXX_STANDARD_EXT}) isn't modern enough to build GNU Radio; using minimum required C++ standard (${CMAKE_CXX_STANDARD}) instead and hoping for the best!")
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+ ELSEIF(${CMAKE_CXX_STANDARD_EXT_CMP} VERSION_GREATER ${CMAKE_CXX_STANDARD_CMP})
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+ MESSAGE(WARNING "Requested C++ standard (${CMAKE_CXX_STANDARD_EXT}) is more recent than the minimum required C++ standard (${CMAKE_CXX_STANDARD}). GNU Radio might have issues building using this C++ standard; going with it and hoping for the best!")
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+ SET(CMAKE_CXX_STANDARD ${CMAKE_CXX_STANDARD_EXT})
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+ ENDIF()
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+ENDIF()
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+########################################################################
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+# Configure C standard if not externally specified. Use the variable
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+# CMAKE_C_STANDARD since it will actually be used for this purposes
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+# starting in CMake 3.1.
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+########################################################################
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+# save current setting, if provided
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+IF(CMAKE_C_STANDARD)
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+ SET(CMAKE_C_STANDARD_EXT ${CMAKE_C_STANDARD})
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- ENDIF()
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+# set GR preferred setting
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- IF(CMAKE_C_COMPILER_ID STREQUAL "GNU")
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- SET(CMAKE_C_STANDARD 11)
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- ELSEIF(CMAKE_C_COMPILER_ID MATCHES "Clang")
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -165,7 +220,58 @@
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- ELSEIF(CMAKE_C_COMPILER_ID STREQUAL "MSVC")
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- SET(CMAKE_C_STANDARD 11)
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- ELSE()
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-- message(WARNING "C standard could not be set because compiler is not GNU, Clang or MSVC.")
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+ MESSAGE(WARNING "C standard could not be set because compiler is not GNU, Clang or MSVC.")
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+ENDIF()
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+# if the C standard was provided externally, make sure it meets GR's minimum
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+IF(CMAKE_C_STANDARD_EXT)
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+ # verify that the provided C standard is one CMake
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+ # accepts. options are 90, 99, and 11 as of CMake 3.11.4.
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+ IF(NOT ${CMAKE_C_STANDARD_EXT} VERSION_EQUAL "90" AND
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+ NOT ${CMAKE_C_STANDARD_EXT} VERSION_EQUAL "99" AND
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+ NOT ${CMAKE_C_STANDARD_EXT} VERSION_EQUAL "11")
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+ MESSAGE(WARNING "Requested C standard (${CMAKE_C_STANDARD_EXT}) isn't recognized by CMake; expecting one of 90, 99, or 11. Ignoring and using the GNU Radio default C standard (${CMAKE_C_STANDARD}).")
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+ SET(CMAKE_C_STANDARD_EXT ${CMAKE_C_STANDARD})
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+ ENDIF()
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+ # fix settings to be comparable. It will be -many- years until we
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+ # have to worry about this value getting large enough to wrap
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+ # around (to 90), so just add 100 to any value not in the 90's,
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+ # for comparison sake.
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+ IF(${CMAKE_C_STANDARD} VERSION_EQUAL "90" OR
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+ ${CMAKE_C_STANDARD} VERSION_EQUAL "99")
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+ # just copy the value
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+ SET(CMAKE_C_STANDARD_CMP ${CMAKE_C_STANDARD})
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+ ELSE()
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+ # add 100 to the value
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+ MATH(EXPR CMAKE_C_STANDARD_CMP "${CMAKE_C_STANDARD} + 100")
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+ ENDIF()
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+ IF(${CMAKE_C_STANDARD_EXT} VERSION_EQUAL "90" OR
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+ ${CMAKE_C_STANDARD_EXT} VERSION_EQUAL "99")
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+ # just copy the value
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+ SET(CMAKE_C_STANDARD_EXT_CMP ${CMAKE_C_STANDARD_EXT})
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+ ELSE()
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+ # add 100 to the value
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+ MATH(EXPR CMAKE_C_STANDARD_EXT_CMP "${CMAKE_C_STANDARD_EXT} + 100")
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+ ENDIF()
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+ # compare values
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+ IF(${CMAKE_C_STANDARD_EXT_CMP} VERSION_LESS ${CMAKE_C_STANDARD_CMP})
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+ MESSAGE(WARNING "Requested C standard (${CMAKE_C_STANDARD_EXT}) isn't modern enough to build GNU Radio; using minimum required C standard (${CMAKE_C_STANDARD}) instead and hoping for the best!")
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+ ELSEIF(${CMAKE_C_STANDARD_EXT_CMP} VERSION_GREATER ${CMAKE_C_STANDARD_CMP})
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+ MESSAGE(WARNING "Requested C standard (${CMAKE_C_STANDARD_EXT}) is more recent than the minimum required C standard (${CMAKE_C_STANDARD}). GNU Radio might have issues building using this C standard; going with it and hoping for the best!")
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+ SET(CMAKE_C_STANDARD ${CMAKE_C_STANDARD_EXT})
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+ ENDIF()
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+ENDIF()
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+########################################################################
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+# If C/CXX EXTENSIONS are defined, don't change them. GNU Radio itself
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+# does not require them. If not defined, then disable them as a safe default.
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+########################################################################
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+IF(NOT CMAKE_C_EXTENSIONS)
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+ SET(CMAKE_C_EXTENSIONS OFF)
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+ENDIF()
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+IF(NOT CMAKE_CXX_EXTENSIONS)
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+ SET(CMAKE_CXX_EXTENSIONS OFF)
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- ENDIF()
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- ########################################################################
</span><span style='display:block; white-space:pre;color:#808080;'>diff --git a/science/gnuradio/files/patch-fix-GNURadioControlPortClient-usage.38.diff b/science/gnuradio/files/patch-fix-GNURadioControlPortClient-usage.38.diff
</span>deleted file mode 100644
<span style='display:block; white-space:pre;color:#808080;'>index a543ceaa6a4..00000000000
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/science/gnuradio/files/patch-fix-GNURadioControlPortClient-usage.38.diff
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ /dev/null
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -1,48 +0,0 @@
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>---- gr-blocks/examples/ctrlport/simple_copy_controller.py.orig
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+++ gr-blocks/examples/ctrlport/simple_copy_controller.py
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -13,8 +13,7 @@
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- hostname = args[1]
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- portnum = int(args[2])
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- msg = args[3].lower()
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--argv = [None, hostname, portnum]
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--radiosys = GNURadioControlPortClient(argv=argv, rpcmethod='thrift')
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+radiosys = GNURadioControlPortClient(hostname, portnum, rpcmethod='thrift')
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- radio = radiosys.client
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- if(msg == 'true'):
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>---- gr-blocks/examples/ctrlport/usrp_sink_controller.py.orig
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+++ gr-blocks/examples/ctrlport/usrp_sink_controller.py
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -30,8 +30,7 @@
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- else:
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- val = pmt.from_double(float(val))
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--argv = [None, args.host, args.port]
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--radiosys = GNURadioControlPortClient(argv=argv, rpcmethod='thrift')
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+radiosys = GNURadioControlPortClient(args.host, args.port, rpcmethod='thrift')
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- radio = radiosys.client
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- radio.postMessage(args.alias, port, pmt.cons(pmt.intern(cmd), val))
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>---- gr-blocks/examples/ctrlport/usrp_source_controller.py.orig
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+++ gr-blocks/examples/ctrlport/usrp_source_controller.py
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -30,8 +30,7 @@
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- else:
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- val = pmt.from_double(float(val))
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--argv = [None, args.host, args.port]
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--radiosys = GNURadioControlPortClient(argv=argv, rpcmethod='thrift')
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+radiosys = GNURadioControlPortClient(args.host, args.port, rpcmethod='thrift')
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- radio = radiosys.client
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- radio.postMessage(args.alias, port, pmt.cons(pmt.intern(cmd), val))
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>---- gr-dtv/examples/atsc_ctrlport_monitor.py.orig
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+++ gr-dtv/examples/atsc_ctrlport_monitor.py
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -45,8 +45,7 @@
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- class atsc_ctrlport_monitor(object):
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- def __init__(self, host, port):
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-- argv = [None, host, port]
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-- radiosys = GNURadioControlPortClient(argv=argv, rpcmethod='thrift')
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+ radiosys = GNURadioControlPortClient(host, port, rpcmethod='thrift')
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- self.radio = radiosys.client
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- print(self.radio)
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span><span style='display:block; white-space:pre;color:#808080;'>diff --git a/science/gnuradio/files/patch-fix-pkg-config.38.diff b/science/gnuradio/files/patch-fix-pkg-config.38.diff
</span>deleted file mode 100644
<span style='display:block; white-space:pre;color:#808080;'>index 56329881c7a..00000000000
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/science/gnuradio/files/patch-fix-pkg-config.38.diff
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ /dev/null
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -1,24 +0,0 @@
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-From d9ff22d53e2173db45ff0bf07d7e59f17974f4c9 Mon Sep 17 00:00:00 2001
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-From: Ryan Govostes <rgov@users.noreply.github.com>
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-Date: Thu, 3 Dec 2020 21:27:18 -0500
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-Subject: [PATCH] cmake: Fix variable substitution in pkg-config
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-Variable interpolation is done with configure_file(... @ONLY), so use @VAR@ and not ${VAR}.
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-Fixes #3969.
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>----
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- gr-qtgui/gnuradio-qtgui.pc.in | 4 ++--
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- 1 file changed, 2 insertions(+), 2 deletions(-)
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-diff --git a/gr-qtgui/gnuradio-qtgui.pc.in b/gr-qtgui/gnuradio-qtgui.pc.in
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-index 2489caf2141..a1e93eb4712 100644
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>---- gr-qtgui/gnuradio-qtgui.pc.in
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+++ gr-qtgui/gnuradio-qtgui.pc.in
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -7,5 +7,5 @@ Name: gnuradio-qtgui
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- Description: GNU Radio blocks for QT GUI
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- Requires: gnuradio-runtime
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- Version: @LIBVER@
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--Libs: -L${libdir} -lgnuradio-qtgui ${PC_LIBS_STR}
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--Cflags: -I${includedir} -I${QWT_INCLUDE_DIRS} -I${QT_HEADERS_DIR}
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+Libs: -L${libdir} -lgnuradio-qtgui @PC_LIBS_STR@
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+Cflags: -I${includedir} -I@QWT_INCLUDE_DIRS@ -I@QT_HEADERS_DIR@
</span><span style='display:block; white-space:pre;color:#808080;'>diff --git a/science/gnuradio/files/patch-quartz_drop_crash.38.diff b/science/gnuradio/files/patch-quartz_drop_crash.310.diff
</span>similarity index 100%
rename from science/gnuradio/files/patch-quartz_drop_crash.38.diff
rename to science/gnuradio/files/patch-quartz_drop_crash.310.diff
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/science/gnuradio/files/patch-std::filesystem.310.diff b/science/gnuradio/files/patch-std::filesystem.310.diff
</span>new file mode 100644
<span style='display:block; white-space:pre;color:#808080;'>index 00000000000..c32208f2dc8
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--- /dev/null
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/science/gnuradio/files/patch-std::filesystem.310.diff
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -0,0 +1,221 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git cmake/Modules/GnuradioConfig.cmake.in cmake/Modules/GnuradioConfig.cmake.in
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index 04cb5e350..0733c4114 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- cmake/Modules/GnuradioConfig.cmake.in
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ cmake/Modules/GnuradioConfig.cmake.in
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -16,6 +16,7 @@ find_dependency(MPLIB)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ set(BOOST_REQUIRED_COMPONENTS
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ date_time
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ program_options
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ filesystem
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ system
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ regex
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ thread
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git cmake/Modules/GrBoost.cmake cmake/Modules/GrBoost.cmake
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index a48bb232d..f73dd856a 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- cmake/Modules/GrBoost.cmake
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ cmake/Modules/GrBoost.cmake
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -17,6 +17,7 @@ set(__INCLUDED_GR_BOOST_CMAKE TRUE)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ set(BOOST_REQUIRED_COMPONENTS
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ date_time
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ program_options
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ filesystem
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ system
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ regex
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ thread
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git gnuradio-runtime/lib/CMakeLists.txt gnuradio-runtime/lib/CMakeLists.txt
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index 6cd9c0c54..5da90d8f1 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- gnuradio-runtime/lib/CMakeLists.txt
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ gnuradio-runtime/lib/CMakeLists.txt
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -132,6 +132,7 @@ target_link_libraries(gnuradio-runtime PUBLIC
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ gnuradio-pmt
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ Volk::volk
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ Boost::program_options
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ Boost::filesystem
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ Boost::system
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ Boost::regex
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ Boost::thread
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -168,9 +169,6 @@ target_include_directories(gnuradio-runtime
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ target_compile_definitions(gnuradio-runtime PUBLIC ${MPLIB_DEFINITIONS})
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-# constants.cc includes boost::dll headers, force them to use std::filesystem
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-target_compile_definitions(gnuradio-runtime PRIVATE BOOST_DLL_USE_STD_FS)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ if(${CMAKE_VERSION} VERSION_GREATER_EQUAL "3.16.0")
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ target_precompile_headers(
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ gnuradio-runtime
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git gnuradio-runtime/lib/constants.cc.in gnuradio-runtime/lib/constants.cc.in
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index 4d8e240e2..8cbf6eacf 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- gnuradio-runtime/lib/constants.cc.in
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ gnuradio-runtime/lib/constants.cc.in
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -15,9 +15,9 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #include <gnuradio/constants.h>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #include <boost/dll/runtime_symbol_info.hpp>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #include <cstdlib>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-#include <filesystem>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#include <boost/filesystem/path.hpp>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-using std::filesystem::path;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++using boost::filesystem::path;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ namespace gr {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ const std::string prefix()
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -30,7 +30,7 @@ const std::string prefix()
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ path prefix_rel_lib = "@prefix_relative_to_lib@";
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ path gr_runtime_lib_path = boost::dll::this_line_location().string();
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ // Canonize before decomposing path so result is reliable and without symlinks
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- path canonical_lib_path = std::filesystem::canonical(gr_runtime_lib_path);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ path canonical_lib_path = boost::filesystem::canonical(gr_runtime_lib_path);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ path prefix_path = canonical_lib_path.parent_path() / prefix_rel_lib;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ return prefix_path.lexically_normal().string();
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git gnuradio-runtime/lib/prefs.cc gnuradio-runtime/lib/prefs.cc
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index a450644dd..0456c44bd 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- gnuradio-runtime/lib/prefs.cc
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ gnuradio-runtime/lib/prefs.cc
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -17,12 +17,15 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #include <gnuradio/sys_paths.h>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #include <algorithm>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-#include <filesystem>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #include <fstream>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #include <iostream>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#include <boost/system/error_code.hpp>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#include <boost/filesystem/fstream.hpp>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#include <boost/filesystem/operations.hpp>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#include <boost/filesystem/path.hpp>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #include <boost/program_options.hpp>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-namespace fs = std::filesystem;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++namespace fs = boost::filesystem;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ namespace po = boost::program_options;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ typedef std::ifstream::char_type char_t;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -142,16 +145,16 @@ void prefs::save()
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ // Write temp file.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ const fs::path tmp = fs::path(gr::userconf_path()) / "config.conf.tmp";
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- std::ofstream fout(tmp);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ fs::ofstream fout(tmp);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ fout << conf;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ fout.close();
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ if (!fout.good()) {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ const std::string write_err = strerror(errno);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- std::error_code err;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ boost::system::error_code err;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ fs::remove(tmp, err);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ if (err) {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- std::cerr << "Failed to remove temp file: " << err << std::endl;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ std::cerr << "Failed to remove temp file: " << err.message() << std::endl;
</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;'>+ throw std::runtime_error("failed to write updated config: " + write_err);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git gnuradio-runtime/lib/sys_paths.cc gnuradio-runtime/lib/sys_paths.cc
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index 06333ffc6..1c0464cd3 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- gnuradio-runtime/lib/sys_paths.cc
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ gnuradio-runtime/lib/sys_paths.cc
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -9,7 +9,7 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #include <gnuradio/sys_paths.h>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #include <cstdlib> //getenv
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-#include <filesystem>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#include <boost/filesystem/path.hpp>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ namespace gr {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -56,7 +56,7 @@ std::string __userconf_path()
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ // First determine if there is an environment variable specifying the prefs path
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ path = getenv("GR_PREFS_PATH");
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- std::filesystem::path p;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ boost::filesystem::path p;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ if (path) {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ p = path;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ } else {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git gnuradio-runtime/lib/vmcircbuf_prefs.cc gnuradio-runtime/lib/vmcircbuf_prefs.cc
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index ad0416248..34671840b 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- gnuradio-runtime/lib/vmcircbuf_prefs.cc
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ gnuradio-runtime/lib/vmcircbuf_prefs.cc
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -22,8 +22,9 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #include <cstdio>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #include <cstdlib>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #include <cstring>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-#include <filesystem>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-namespace fs = std::filesystem;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#include <boost/filesystem/operations.hpp>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#include <boost/filesystem/path.hpp>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++namespace fs = boost::filesystem;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ namespace gr {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git gr-fec/lib/ldpc_decoder.cc gr-fec/lib/ldpc_decoder.cc
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index 0680aba85..93929d43d 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- gr-fec/lib/ldpc_decoder.cc
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ gr-fec/lib/ldpc_decoder.cc
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -17,10 +17,11 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #include <cmath>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #include <cstdio>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #include <cstring> // for memcpy
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-#include <filesystem>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #include <sstream>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #include <vector>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#include <boost/filesystem/operations.hpp>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ namespace gr {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ namespace fec {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -34,7 +35,7 @@ ldpc_decoder::make(std::string alist_file, float sigma, int max_iterations)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ ldpc_decoder::ldpc_decoder(std::string alist_file, float sigma, int max_iterations)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ : generic_decoder("ldpc_decoder")
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- if (!std::filesystem::exists(alist_file))
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ if (!boost::filesystem::exists(alist_file))
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ throw std::runtime_error("Bad AList file name!");
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ d_list.read(alist_file.c_str());
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git gr-fec/lib/ldpc_encoder_impl.cc gr-fec/lib/ldpc_encoder_impl.cc
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index 0ac925b2d..ad70c9dfa 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- gr-fec/lib/ldpc_encoder_impl.cc
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ gr-fec/lib/ldpc_encoder_impl.cc
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -13,9 +13,10 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #include <algorithm> // for std::reverse
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #include <cstdio>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #include <cstring> // for memcpy
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-#include <filesystem>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #include <sstream>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#include <boost/filesystem/operations.hpp>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ namespace gr {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ namespace fec {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -26,7 +27,7 @@ generic_encoder::sptr ldpc_encoder::make(std::string alist_file)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ ldpc_encoder_impl::ldpc_encoder_impl(std::string alist_file)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- if (!std::filesystem::exists(alist_file)) {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ if (!boost::filesystem::exists(alist_file)) {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ throw std::runtime_error("Bad AList file name!");
</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;'>+diff --git gr-fft/lib/fft.cc gr-fft/lib/fft.cc
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index b111942e2..09366e0fa 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- gr-fft/lib/fft.cc
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ gr-fft/lib/fft.cc
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -35,11 +35,12 @@ static int my_fftw_read_char(void* f) { return fgetc((FILE*)f); }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #include <cstdio>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #include <cstdlib>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #include <cstring>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-#include <filesystem>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #include <stdexcept>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#include <boost/filesystem/operations.hpp>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#include <boost/filesystem/path.hpp>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #include <boost/interprocess/sync/file_lock.hpp>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-namespace fs = std::filesystem;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++namespace fs = boost::filesystem;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ namespace gr {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ namespace fft {
</span></pre><pre style='margin:0'>
</pre>