From 8bbcd9c234879dff25ecae021fed080afce5e25feebdfd598e4999a1d1454969 Mon Sep 17 00:00:00 2001 From: Martin Pluskal Date: Mon, 29 Jul 2024 07:54:36 +0000 Subject: [PATCH] - Update to version 3.10.11.0 - Changed * Project + Const (keyword) cleanup in a large number of files. QtGUI code uses const in many more places. * Runtime + Add persistent() function to gr paths module. This function returns either the value of the XDG_CACHE_HOME environment variable, or appdata()/.local/state. * GRC + Work continues on the Qt version of GRC (gnuradio-companion --qt). While the Gtk version is still the default, we're getting close to the point where the Qt version can be the default. + Generated Python code now includes a startup event (flowgraph_started) to the top level class. This was added specifically to avoid a race in the Variable Function Probe block, and may be useful elsewhere. + Struct variables have not been usable since around v3.8. Fixed! + Paths are now based on gr paths, where they were previous hardcoded to the user's home directory. + C++ hier block code paths fixed (so hier blocks work again). + Block connection line shape and width are now preferences. * gr-blocks + New Burst To Stream block transforms a bursty tagged stream into a continuous stream by inserting zeros in the output between input packets whenever no packets are available at the input. * gr-digital + FLL Band Edge power calculations fixed, along with thread safety issues. * gr-fec + Unused RS code removed - unlikely anyone will notice. * gr-filter + Numpy float_ changed to float64 for Numpy 2.0 compatibility. * gr-fft + Vector version of FFT fft_v library function (calls fftw) thread safety improved. * gr-uhd + Do not require PyQt5 for non-graphical configurations. * modtool + Many bug fixes and cleanups, resulting in more reliable operation. That sounds really good, right? + Remove dependency on the "click plugins" package. + Appending new blocks to CMake files respects closing parens. * Build system and packaging + CMake minimum versions were out of sync in different places, fixed. + Incorrect Qwt maximum version removed. - Last two patches gnuradio-fix-error-message-for-Qwt-version.patch and gnuradio-remove-maximum-version-for-Qwt.patch removed as appliedn upstream. - Containd fix for latest spdlog (Tumbleweed). OBS-URL: https://build.opensuse.org/package/show/hardware:sdr/gnuradio?expand=0&rev=151 --- .gitattributes | 23 + .gitignore | 1 + _constraints | 14 + gnuradio-3.10.10.0.tar.gz | 3 + gnuradio-3.10.11.0.tar.gz | 3 + ...io-fix-error-message-for-Qwt-version.patch | 23 + gnuradio-not-install-freedesktop-files.patch | 136 ++ gnuradio-remove-maximum-version-for-Qwt.patch | 24 + gnuradio-rpmlintrc | 2 + gnuradio.changes | 2097 +++++++++++++++++ gnuradio.spec | 276 +++ grc_to_37.sh | 156 ++ missing_library.patch | 14 + 13 files changed, 2772 insertions(+) create mode 100644 .gitattributes create mode 100644 .gitignore create mode 100644 _constraints create mode 100644 gnuradio-3.10.10.0.tar.gz create mode 100644 gnuradio-3.10.11.0.tar.gz create mode 100644 gnuradio-fix-error-message-for-Qwt-version.patch create mode 100644 gnuradio-not-install-freedesktop-files.patch create mode 100644 gnuradio-remove-maximum-version-for-Qwt.patch create mode 100644 gnuradio-rpmlintrc create mode 100644 gnuradio.changes create mode 100644 gnuradio.spec create mode 100644 grc_to_37.sh create mode 100644 missing_library.patch diff --git a/.gitattributes b/.gitattributes new file mode 100644 index 0000000..9b03811 --- /dev/null +++ b/.gitattributes @@ -0,0 +1,23 @@ +## Default LFS +*.7z filter=lfs diff=lfs merge=lfs -text +*.bsp filter=lfs diff=lfs merge=lfs -text +*.bz2 filter=lfs diff=lfs merge=lfs -text +*.gem filter=lfs diff=lfs merge=lfs -text +*.gz filter=lfs diff=lfs merge=lfs -text +*.jar filter=lfs diff=lfs merge=lfs -text +*.lz filter=lfs diff=lfs merge=lfs -text +*.lzma filter=lfs diff=lfs merge=lfs -text +*.obscpio filter=lfs diff=lfs merge=lfs -text +*.oxt filter=lfs diff=lfs merge=lfs -text +*.pdf filter=lfs diff=lfs merge=lfs -text +*.png filter=lfs diff=lfs merge=lfs -text +*.rpm filter=lfs diff=lfs merge=lfs -text +*.tbz filter=lfs diff=lfs merge=lfs -text +*.tbz2 filter=lfs diff=lfs merge=lfs -text +*.tgz filter=lfs diff=lfs merge=lfs -text +*.ttf filter=lfs diff=lfs merge=lfs -text +*.txz filter=lfs diff=lfs merge=lfs -text +*.whl filter=lfs diff=lfs merge=lfs -text +*.xz filter=lfs diff=lfs merge=lfs -text +*.zip filter=lfs diff=lfs merge=lfs -text +*.zst filter=lfs diff=lfs merge=lfs -text diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..57affb6 --- /dev/null +++ b/.gitignore @@ -0,0 +1 @@ +.osc diff --git a/_constraints b/_constraints new file mode 100644 index 0000000..5cefe32 --- /dev/null +++ b/_constraints @@ -0,0 +1,14 @@ + + + + + 14 + + + 1000 + + + 4 + + + diff --git a/gnuradio-3.10.10.0.tar.gz b/gnuradio-3.10.10.0.tar.gz new file mode 100644 index 0000000..7efa1fe --- /dev/null +++ b/gnuradio-3.10.10.0.tar.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4202a486bee49ae97672acae559c133b1337e0e89f2d192332e4381d7c6682da +size 4648970 diff --git a/gnuradio-3.10.11.0.tar.gz b/gnuradio-3.10.11.0.tar.gz new file mode 100644 index 0000000..bb2e7c4 --- /dev/null +++ b/gnuradio-3.10.11.0.tar.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9ca658e6c4af9cfe144770757b34ab0edd23f6dcfaa6c5c46a7546233e5ecd29 +size 4659646 diff --git a/gnuradio-fix-error-message-for-Qwt-version.patch b/gnuradio-fix-error-message-for-Qwt-version.patch new file mode 100644 index 0000000..1fbdf26 --- /dev/null +++ b/gnuradio-fix-error-message-for-Qwt-version.patch @@ -0,0 +1,23 @@ +From 9d6c8f166a4834bab33ea8619c71895e66fc757d Mon Sep 17 00:00:00 2001 +From: Jeff Long +Date: Fri, 10 May 2024 17:21:24 -0400 +Subject: [PATCH] cmake: fix error message for Qwt version + +Signed-off-by: Jeff Long +--- + cmake/Modules/FindQwt.cmake | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/cmake/Modules/FindQwt.cmake b/cmake/Modules/FindQwt.cmake +index e87c6a20a9..241b255e58 100644 +--- a/cmake/Modules/FindQwt.cmake ++++ b/cmake/Modules/FindQwt.cmake +@@ -37,7 +37,7 @@ if(QWT_INCLUDE_DIRS) + if(NOT QWT_WRONG_VERSION) + set(QWT_FOUND TRUE) + else(NOT QWT_WRONG_VERSION) +- message(STATUS "QWT Version must be >= 6.1 and < 6.3, Found ${QWT_VERSION}") ++ message(STATUS "QWT Version must be >= 6.1, Found ${QWT_VERSION}") + endif(NOT QWT_WRONG_VERSION) + + endif(QWT_INCLUDE_DIRS) diff --git a/gnuradio-not-install-freedesktop-files.patch b/gnuradio-not-install-freedesktop-files.patch new file mode 100644 index 0000000..fb13c43 --- /dev/null +++ b/gnuradio-not-install-freedesktop-files.patch @@ -0,0 +1,136 @@ +From 7c87800f1d7e85589678f01281b45451085c7482 Mon Sep 17 00:00:00 2001 +From: Volker Schroer <3470424+dl1ksv@users.noreply.github.com> +Date: Thu, 9 Mar 2023 12:37:46 +0100 +Subject: [PATCH] The uninstall script did not remove the previously installed + freedesktop icons and desktop files. Now grc_setup_freedesktop uninstall is + called in cmake_uninstall.cmake + +As far as I can see the icon and menu files are only needed in the freedesktop environment. +It's not necessary to put them into gnuradio install path. + +So I removed these copies and installed these files directly from the source directory +using xdg-icon-resource and other xdg-utils. + +Giving grc_setup_freedesktop execute permissions in the build directory avoids copying it +to the libexec directory. So even if ENABLE_POSTINSTALL=ON no libexec directory will be created. + +Signed-off-by: Volker Schroer <3470424+dl1ksv@users.noreply.github.com> +--- + cmake/cmake_uninstall.cmake.in | 8 ++++ + grc/scripts/freedesktop/CMakeLists.txt | 41 +------------------ + .../freedesktop/grc_setup_freedesktop.in | 8 ++-- + 3 files changed, 15 insertions(+), 42 deletions(-) + +diff --git a/cmake/cmake_uninstall.cmake.in b/cmake/cmake_uninstall.cmake.in +index 410b4a8b9d0..186c5c18448 100644 +--- a/cmake/cmake_uninstall.cmake.in ++++ b/cmake/cmake_uninstall.cmake.in +@@ -7,6 +7,14 @@ if(NOT EXISTS "@CMAKE_CURRENT_BINARY_DIR@/install_manifest.txt") + ) + endif(NOT EXISTS "@CMAKE_CURRENT_BINARY_DIR@/install_manifest.txt") + ++if(NOT EXISTS "@CMAKE_CURRENT_BINARY_DIR@/grc/scripts/freedesktop/grc_setup_freedesktop") ++ message(STATUS "Cannot find freedesktop install script") ++else("@CMAKE_CURRENT_BINARY_DIR@/grc/scripts/freedesktop/grc_setup_freedesktop") ++ exec_program( ++ "@CMAKE_CURRENT_BINARY_DIR@/grc/scripts/freedesktop/grc_setup_freedesktop" ++ ARGS "uninstall" ++ ) ++endif("@CMAKE_CURRENT_BINARY_DIR@/grc/scripts/freedesktop/grc_setup_freedesktop") + file(READ "@CMAKE_CURRENT_BINARY_DIR@/install_manifest.txt" files) + string(REGEX REPLACE "\n" ";" files "${files}") + foreach(file ${files}) +diff --git a/grc/scripts/freedesktop/CMakeLists.txt b/grc/scripts/freedesktop/CMakeLists.txt +index ef42c3e410b..356f07a182f 100644 +--- a/grc/scripts/freedesktop/CMakeLists.txt ++++ b/grc/scripts/freedesktop/CMakeLists.txt +@@ -6,54 +6,17 @@ + # + + ######################################################################## +-set(grc_freedesktop_path ${GR_PKG_DATA_DIR}/grc/freedesktop) +- +-install(FILES +- grc-icon-256.png +- grc-icon-128.png +- grc-icon-64.png +- grc-icon-48.png +- grc-icon-32.png +- grc-icon-24.png +- grc-icon-16.png +- gnuradio-grc.xml +- gnuradio-grc.desktop +- DESTINATION ${grc_freedesktop_path} +-) +- +-# Install desktop +-install(FILES gnuradio-grc.desktop DESTINATION share/applications) +- +-# Install mime +-install(FILES gnuradio-grc.xml DESTINATION share/mime/packages) +- +-# Install appstream / metainfo file +-install(FILES org.gnuradio.grc.metainfo.xml DESTINATION share/metainfo) +- +-# Install icons +-install(FILES grc-icon-256.png DESTINATION share/icons/hicolor/256x256/apps RENAME gnuradio-grc.png) +-install(FILES grc-icon-128.png DESTINATION share/icons/hicolor/128x128/apps RENAME gnuradio-grc.png) +-install(FILES grc-icon-64.png DESTINATION share/icons/hicolor/64x64/apps RENAME gnuradio-grc.png) +-install(FILES grc-icon-48.png DESTINATION share/icons/hicolor/48x48/apps RENAME gnuradio-grc.png) +-install(FILES grc-icon-32.png DESTINATION share/icons/hicolor/32x32/apps RENAME gnuradio-grc.png) +-install(FILES grc-icon-24.png DESTINATION share/icons/hicolor/24x24/apps RENAME gnuradio-grc.png) +-install(FILES grc-icon-16.png DESTINATION share/icons/hicolor/16x16/apps RENAME gnuradio-grc.png) + + find_program(HAVE_XDG_UTILS xdg-desktop-menu) + + if(UNIX AND HAVE_XDG_UTILS AND ENABLE_POSTINSTALL) +- set(SRCDIR ${CMAKE_INSTALL_PREFIX}/${grc_freedesktop_path}) + configure_file( + ${CMAKE_CURRENT_SOURCE_DIR}/grc_setup_freedesktop.in + ${CMAKE_CURRENT_BINARY_DIR}/grc_setup_freedesktop ++ FILE_PERMISSIONS OWNER_READ OWNER_WRITE OWNER_EXECUTE GROUP_READ GROUP_EXECUTE WORLD_READ WORLD_EXECUTE + @ONLY) +- install( +- PROGRAMS ${CMAKE_CURRENT_BINARY_DIR}/grc_setup_freedesktop +- DESTINATION ${GR_PKG_LIBEXEC_DIR} +- PERMISSIONS OWNER_READ OWNER_WRITE OWNER_EXECUTE GROUP_READ GROUP_EXECUTE WORLD_READ WORLD_EXECUTE +- ) + install ( +- CODE "execute_process(COMMAND ${CMAKE_INSTALL_PREFIX}/${GR_PKG_LIBEXEC_DIR}/grc_setup_freedesktop install)" ++ CODE "execute_process(COMMAND ${CMAKE_CURRENT_BINARY_DIR}/grc_setup_freedesktop install)" + ) + endif(UNIX AND HAVE_XDG_UTILS AND ENABLE_POSTINSTALL) + +diff --git a/grc/scripts/freedesktop/grc_setup_freedesktop.in b/grc/scripts/freedesktop/grc_setup_freedesktop.in +index 50e02ee16ac..5aacf5e7c54 100644 +--- a/grc/scripts/freedesktop/grc_setup_freedesktop.in ++++ b/grc/scripts/freedesktop/grc_setup_freedesktop.in +@@ -19,7 +19,7 @@ ICON_SIZES="16 24 32 48 64 128 256" + if [ -n "$2" ]; then + SRCDIR="$2" + else +- SRCDIR="@SRCDIR@" ++ SRCDIR="@CMAKE_CURRENT_SOURCE_DIR@" + fi + + case "$1" in +@@ -32,7 +32,8 @@ case "$1" in + xdg-icon-resource install --noupdate --context apps --theme gnome --size ${size} ${SRCDIR}/grc-icon-${size}.png gnuradio-grc; \ + xdg-icon-resource install --noupdate --context apps --size ${size} ${SRCDIR}/grc-icon-${size}.png gnuradio-grc; \ + done +- xdg-icon-resource forceupdate ++ xdg-icon-resource forceupdate #update for system (hicolor) theme ++ xdg-icon-resource forceupdate --theme gnome #update for gnome theme + echo "Install mime type" + xdg-mime install ${SRCDIR}/gnuradio-grc.xml + echo "Install menu items" +@@ -49,7 +50,8 @@ case "$1" in + xdg-icon-resource uninstall --noupdate --context apps --theme gnome --size ${size} gnuradio-grc; \ + xdg-icon-resource uninstall --noupdate --context apps --size ${size} gnuradio-grc; \ + done +- xdg-icon-resource forceupdate ++ xdg-icon-resource forceupdate #update for system (hicolor) theme ++ xdg-icon-resource forceupdate --theme gnome #update for gnome theme + echo "Uninstall mime type" + xdg-mime uninstall ${SRCDIR}/gnuradio-grc.xml + echo "Uninstall menu items" diff --git a/gnuradio-remove-maximum-version-for-Qwt.patch b/gnuradio-remove-maximum-version-for-Qwt.patch new file mode 100644 index 0000000..8aca855 --- /dev/null +++ b/gnuradio-remove-maximum-version-for-Qwt.patch @@ -0,0 +1,24 @@ +From ca344658756dab10a762571c51acf92c00c066c1 Mon Sep 17 00:00:00 2001 +From: Jeff Long +Date: Fri, 10 May 2024 06:21:08 -0400 +Subject: [PATCH] cmake: remove maximum version for Qwt (was < 6.3) + +Signed-off-by: Jeff Long +--- + cmake/Modules/FindQwt.cmake | 3 --- + 1 file changed, 3 deletions(-) + +diff --git a/cmake/Modules/FindQwt.cmake b/cmake/Modules/FindQwt.cmake +index 8718a6f73cc..e87c6a20a91 100644 +--- a/cmake/Modules/FindQwt.cmake ++++ b/cmake/Modules/FindQwt.cmake +@@ -32,9 +32,6 @@ if(QWT_INCLUDE_DIRS) + if(QWT_VERSION VERSION_LESS "6.1") + set(QWT_WRONG_VERSION True) + endif() +- if(NOT QWT_VERSION VERSION_LESS "6.3") +- set(QWT_WRONG_VERSION True) +- endif() + + message(STATUS "QWT Version: ${QWT_VERSION}") + if(NOT QWT_WRONG_VERSION) diff --git a/gnuradio-rpmlintrc b/gnuradio-rpmlintrc new file mode 100644 index 0000000..293a5a4 --- /dev/null +++ b/gnuradio-rpmlintrc @@ -0,0 +1,2 @@ +# Template file for gr_newmod +addFilter("devel-file-in-non-devel-package.*/usr/share/gnuradio/modtool/templates/gr-newmod/include/howto/api.h") diff --git a/gnuradio.changes b/gnuradio.changes new file mode 100644 index 0000000..483f38c --- /dev/null +++ b/gnuradio.changes @@ -0,0 +1,2097 @@ +------------------------------------------------------------------- +Thu Jul 25 12:22:27 UTC 2024 - Wojciech Kazubski + +- Update to version 3.10.11.0 +- Changed + * Project + + Const (keyword) cleanup in a large number of files. QtGUI + code uses const in many more places. + * Runtime + + Add persistent() function to gr paths module. This function + returns either the value of the XDG_CACHE_HOME environment + variable, or appdata()/.local/state. + * GRC + + Work continues on the Qt version of GRC (gnuradio-companion --qt). + While the Gtk version is still the default, we're getting + close to the point where the Qt version can be the default. + + Generated Python code now includes a startup event + (flowgraph_started) to the top level class. This was added + specifically to avoid a race in the Variable Function Probe + block, and may be useful elsewhere. + + Struct variables have not been usable since around v3.8. Fixed! + + Paths are now based on gr paths, where they were previous + hardcoded to the user's home directory. + + C++ hier block code paths fixed (so hier blocks work again). + + Block connection line shape and width are now preferences. + * gr-blocks + + New Burst To Stream block transforms a bursty tagged stream + into a continuous stream by inserting zeros in the output + between input packets whenever no packets are available at + the input. + * gr-digital + + FLL Band Edge power calculations fixed, along with thread + safety issues. + * gr-fec + + Unused RS code removed - unlikely anyone will notice. + * gr-filter + + Numpy float_ changed to float64 for Numpy 2.0 compatibility. + * gr-fft + + Vector version of FFT fft_v library function (calls fftw) + thread safety improved. + * gr-uhd + + Do not require PyQt5 for non-graphical configurations. + * modtool + + Many bug fixes and cleanups, resulting in more reliable + operation. That sounds really good, right? + + Remove dependency on the "click plugins" package. + + Appending new blocks to CMake files respects closing parens. + * Build system and packaging + + CMake minimum versions were out of sync in different places, + fixed. + + Incorrect Qwt maximum version removed. +- Last two patches gnuradio-fix-error-message-for-Qwt-version.patch + and gnuradio-remove-maximum-version-for-Qwt.patch removed as + appliedn upstream. +- Containd fix for latest spdlog (Tumbleweed). + +------------------------------------------------------------------- +Sat May 11 21:54:03 UTC 2024 - Wojciech Kazubski + +- Added a patches gnuradio-fix-error-message-for-Qwt-version.patch + and gnuradio-remove-maximum-version-for-Qwt.patch (taken from + upstream), fixing build with Qwt-6.3.0 + +------------------------------------------------------------------- +Tue Apr 30 22:25:18 UTC 2024 - Mikhail Paulyshka + +- Added python3-QtPy and python3-QDarkStyle runtime dependencies (needed for gnuradio-companion --qt) +- Update to version 3.10.10.0 +- Changed + * Runtime + + Modernize location of config files. XDG_CONFIG_HOME will be used if set + (often $HOME/.config). This change attempts to be backward compatible with + existing config file locations, but be aware that config files may show up + in the old ($HOME/.gnuradio/) and new ($XDG_CONFIG_HOME/gnuradio) locations + depending on GNU Radio version. Files are not automatically moved, since + some users run multiple versions of GNU Radio. + + Ctrlport Probe, Ctrlport Probe PSD and gr-ctrlport-monitor. Ctrlport Monitor + blocks are still broken. + * GRC + + NEW Qt-based front end! Run gnuradio-companion --qt to try it out. This + feature is still in testing, so the Gtk front end runs by default. In a + future release, Qt will become the default, removing Gtk as a manditory + dependency. Maintenance will focus on the Qt front end at that point. + + Restore property field background colors (as a View option, off by default) + for the Gtk front end. Background colors were previously replaced with textual + type string. + + The canvas can be panned using the middle mouse button + + C++ code generation improvements related to parameters and strings + + C++ code generation fixed for Add Const + * gr-audio + + Added 96 kHz and 192 kHz selections to ALSA source/sink + * gr-blocks + + Float To UChar block adds vector support, and also scale and bias params + * gr-digital + + Additive Scrambler adds soft symbol handling + + Add callback to set header format in Digital Protocol Formatter + * modtool + + Improvements to handling of Python blocks (add, rm, and rename work reliably) + + New parseable manifest format (yaml instead of md) to better support the OOT ecosystem + + Manifest and examples are installed by "make install" + * Build system and packaging + + Python byte-compiled (pyc) files are no longer installed, as they are deprecated by Python + * Testing + + Added MinGW test runner and fixed various MinGW compilation failures + + Update Fedora to test 38, 39 and 40 + +------------------------------------------------------------------- +Fri Mar 22 15:35:18 UTC 2024 - Mikhail Paulyshka + +- Added libad9361-iio-devel build dependency (fixes PlutoSDR support) + +------------------------------------------------------------------- +Tue Feb 27 11:05:06 UTC 2024 - Dominique Leuenberger + +- Use %patch -P N instead of deprecated %patchN. + +------------------------------------------------------------------- +Thu Jan 18 18:18:27 UTC 2024 - Wojciech Kazubski + +- Update to version 3.10.9.2 +- Changed + * Project + + Fix a few memory errors in various modules. + * GRC + + Fix regressions in bus connections. + +------------------------------------------------------------------- +Mon Jan 1 13:17:41 UTC 2024 - Wojciech Kazubski + +- Update to version 3.10.9.1 +- Changed + * Project + + Python minimum version is now 3.7.2, vs 3.6.5, to support type + hints. + + Add tox.ini, so that editors use the same formatting as + github CI. + + Use pointers to pass s32fc arguments to VOLK in gr-blocks, + gr-digital, and gr-dtv to avoid undefined behavior. The fix + is conditional on VOLK 3.1.0, which add a new supporting + function. + * Runtime + + Disallow None for pmt_t arguments in Python. + + Support spdlog installations with internal or external libfmt. + * GRC + + Use text labels to specify types for block parameters, + instead of background colors which were difficult to + read/remember. + + Enable setting of documentation URLs, relative or absolute in + yaml. This allows OOTs to use the documentation link in the + block parameter dialog. + + Disallow use of block ids that are Python keywords and + "gnuradio". + + Add type annotations in some places (required bump to + Python 3.7.2). + + Use C version of YAML loader (yaml.CSafeLoader) for + better performance. + + Connections may have properties for supported connection + domains. This feature was added for RFNoC connections. Standard + stream and message connections do not support this feature, + but they may in future versions. + + Check grc file version. The above feature required a + version bump to "2". Where no connection properties are + used, version "1" is still emitted. Note that previous + versions of GRC do not check for file version. RFNoC + flowgraphs with connection properties will fail to load + in previous versions as a result. + + Fix bug where an impressive number of backslashes were + added to some filenames. + * gr-dtv + + Read expected data as little-endian + * gr-fec + + Add FEC_API to CCSDS Reed-Solomon functions so they can be + used by OOTs. + * gr-qtgui + + QT GUI Msg Push Button: add a callback for Message Value to + allow it to change at runtime. + * gr-uhd + + RFNoC Rx-Streamer: Add start stream options + + Add back-edge property to RFNoC connections + * Build system and packaging + + Use utf-8 encoding when writing files in gr_python_install. + +------------------------------------------------------------------- +Fri Oct 20 21:32:35 UTC 2023 - Wojciech Kazubski + +- Update to version 3.10.8.0 + * Runtime + + Add MAP_FIXED to circular buffer implementations using + shm_open() and mmap backed by tmp files. + + PMTs can be formatted for logging (format wrapper added). + + New io_signature::make() variant replaces makev(), and + optionally specifies buffer types. + + Fix logging params to be compatible with C++20 + * GRC + + Add "Choose Editor" button to Python block properties. Use + the GTK app chooser. + + Save choice to the config file. + + Correct Python Qt imports in Hier blocks and flowgraph + templates. + * gr-blocks + + Enable building the benchmark testing executable, which runs + tests on various math functions. + + Repeat block implemented as a basic block (vs sync + interpolator) and output buffer allocation fixed. + + Add a GRC example for Throttle usage. + * gr-digital + + Add set_sps() to Symbol Sync. + + Header Format: Fix CRC and OFDM formats, add option to + header_buffer to read bits lsb first, and refactor + extract_bits functions as templates. + + Constellation Sink uses different colors for each input by + default. + + Rework Constellation Soft Decoder, Constellation Object and + LDPC Decoder Definition. + + Previously, the LDPC Decoder did not work at all. The sigma + parameter was removed from the decoder and an optional noise + power npwr parameter was added to the constellation. + * gr-network + + Better support for vectorized output from UDP source. The + payload size must still be a multiple of item size * vector + size for this to work. + * gr-qtgui + + Range widget eng_slider and eng modes can now be selected + in GRC. + + Range widget and a couple of UHD apps now accept values on + editingFinished, rather than on returnPressed. Since UIs + generated by GRC do not have OK/Apply for such values, + there is no "correct" behavior. The behavior is now + selectable on the Entry widget. + + Frequency Sink startup time improved where sample rate is low + * gr-soapy + + RTLSDR buffer size may be specified + * gr-uhd + + RFNoC NullSrcSink block added. The block may be both source + and sink. + + Add support and examples for RFNoC loopback. + + RFNoC Rx Radio adds issue_stream_cmd() and block message + handler. + * gr-zeromq + + Explicitly shutdown and close source/sinks to prevent hangs + in some cases. + + Require zmq.hpp (cppzmq) version with context_t.shutdown() + defined. + + If shutdown is not defined, the gr-zeromq is disabled. + * Modtool + + Add cmake-format support for generated modules + * Build system and packaging + + Update Read-the-docs config to include build.tools + +------------------------------------------------------------------- +Mon Jul 17 07:08:41 UTC 2023 - Wojciech Kazubski + +- Update to version 3.10.7.0 + * Runtime + + Setting the minimum buffer size should have the desired + effect now, and not be overwritten. NOTE: the value returned + by min_buffer_size() is not intended to indicate the actual + buffer size. Header Payload Demod was the only block + attempting to use this value, and was corrected. + + Use a set to store thread group (more efficient) + + Message Debug can now output via the logging system + + The field prefs.singleton is no longer externally exposed + (was unintentional) + + PMT dict can be generated more easily using pmt::dict_from_mapping() + * GRC + + Save changes under all exit conditions (a couple were + previously missed) + + Prevent silent Generate/Run failures for unsaved flowgraphs + * gr-analog + + C++ code generation for Quadrature Demod + + Add max_gain parameter for AGC + * gr-blocks + + Probe Rate adds a name parameter, for clearer logging + + Selector has a new "sync" more that consumes the same number + of items from all inputs. Default is now to consume as many + items as possible from the active input, and no more than + that many items from other inputs. The previous behavior was, + well, broken. + + Throttle reset item count on restart, to avoid long delays + * gr-digital + + Constellation Encoder and Decoder: constellation can be + changed at runtime + * gr-filter + + Filter design tool: multiple improvements in bounds checking + and exception handling + + Filter design tool: update QMessageBox to work in Qt5 + * gr-network + + Multiple memory management errors fixed in UDP Source/Sink + and TCP Sink + * gr-soapy + + Better AGC and gain behavior in RTL, AirspyHF and SDRPlay + blocks + + Support bias controls in RTL and SDRPlay blocks + * gr-uhd + + Remove possibility of infinite recursion for network + overruns + + Support fmtlib v10 + + RFNoC: bindings and block yml for Vector IIR, Replay and + Log Power blocks + + RFNoC: add S16 format to RX Streamer + * gr-vocoder + + Support additional codec2 modes + * Modtool + + Don't override user-defined CMAKE_INSTALL_PREFIX + +------------------------------------------------------------------- +Sun Apr 30 07:55:28 UTC 2023 - Martin Pluskal + +- Enable lto for arm + +------------------------------------------------------------------- +Tue Apr 25 10:00:22 UTC 2023 - Dominique Leuenberger + +- Add gobject-introspection BuildRequires: inspect the python code + to add relevant typelib() dependencies (boo#1182927). + +------------------------------------------------------------------- +Fri Apr 7 21:01:56 UTC 2023 - Jan Engelhardt + +- Remove unused build dependency on libmpir-devel (gmp-devel was + already used anyway). + +------------------------------------------------------------------- +Sat Apr 1 18:33:15 UTC 2023 - Wojciech Kazubski + +- Update to version 3.10.6.0 + * Runtime + + Add Python loggers to top_block and hier_block2 + + Change the default log level (in the config file) to INFO + instead of DEBUG + + Logging improvements in the scheduler + + Correctly determine native page size for Windows + * GRC + + Fixed: opening the source of a hierachical block using the + toolbar button produced an error + + Use the logger, instead of print statements, in generated + top blocks + + Remove libX11 load from generated Python code - this was + unncessary and produced warnings + + Choose Editor dialog stays above parent + * gr-analog + + Signal Source: option to hide the message port + * gr-blocks + + Throttle: supports max time or number of samples per work + iteration, useful for reducing latency at low sample rates + + Delay block: option to hide the message port + + File Meta Sink: fix missing Python import in template code + * gr-channels + + Default taps should be 1.0, not 1.0 + j1.0 + * gr-digital + + Async Decoder: several changes to improve performance + robustness (see the commit log for more details) + * gr-fec + + Tagged Decoder: correctly calculate the frame size for + terminated CC decoder + * gr-filter + + Fixed reverse parameters in fir_filter_with_buffer and + pfb_arb_resampler, which could cause crashes + + Fixed PFB Arbitrary Resampler was ignoring attenuation + parameter + * gr-iio + + Set gain mode as specified (was always manual) + + Use the specified gain parameter for second channel (was + same as first channel) + * gr-qtgui + + Histogram Sink: calculate range of bins correctly to + avoid strange distributions + + Save (to image) dialogs add file extensions and have a Save + button (i.e., they work now) + * gr-soapy + + Sources: add tags when the frequency changes + * gr-uhd + + Support for more RFNoC blocks + - Fosphor, which produces data to drive an on-screen OpenGL- + based renderer which is expected to be in the next release + - Moving Average + - Switchboard + - Split Stream + + FFT: add properties for direction, magnitude and scaling + + RX Stream: flush after timeout + + Fully support multi-channel TX/RX (params were available + for one one channel) + * gr-vocoder + + Add a number of new codec modes for Codec2 and FreeDV + * gr-zmq + + Selectable bind/connect to support more flexible ZMQ patterns + and NAT'd networks + + Stream sources produce when available, instead of waiting for + a buffer to fill, helping with latency + * Modtool + + Use interp and decim keywords correctly when generating blocks +- Added a patch gnuradio-not-install-freedesktop-files.patch to + revert commit 7c87800f1d7e85589678f01281b45451085c7482 + +------------------------------------------------------------------- +Wed Jan 25 17:49:24 UTC 2023 - Wojciech Kazubski + +- Update to version 3.10.5.1 + * Runtime + + Restore the ability to set a default block buffer size using + the buffer_size parameter in the config file. This was lost + during refactoring in v3.9. + * GRC + + Add Python snipped hook point at "init before blocks", right + before blocks are instantiated. + * gr-audio + + Remove support for OSX 10.3 and earlier. + * gr-digital + + Make tags visible to subclasses of OFDM Frame Equalizer. + * gr-dtv + + Correct constant in DVBS2 Modulator. + * gr-fec + + Fix errors in Channel Construction AWGN + * gr-iio + + Fix IIO blocks, which were broken due to a build-time + dependency problem. + * gr-network + + Fix crash in UDP Source when buffer overruns. + * gr-qtgui + + Remove support for QWT 6.0 and earlier. + * gr-uhd + + Add async message port to USRP Source and publish overflow + notifications. + + Add bindings and example for RFNoC AddSub block. + +------------------------------------------------------------------- +Wed Dec 28 10:04:35 UTC 2022 - Stefan Brüns + +- Sanitize _constraints, 4GByte of memory is sufficient. Also, + 2GByte memoryperjob rejects too many workers, so combine it + with %limit_build. + +------------------------------------------------------------------- +Mon Dec 19 19:00:26 UTC 2022 - Wojciech Kazubski + +- Update to version 3.10.5.0 + * Runtime + + Python block have access to the block logger, as in C++ + + Default log level changed to INFO (from OFF) + + Memory-based logger gr.dictionary_logger_backend() added for + log debugging + + API Note: The Python block gateway is now completely + implemented in the PyBind11 wrapper, in order to clean up + Python dependencies. This is technically an API change, but + should not have any external effect. + + PMT serialization of Complex32 vectors is now REAL | IMAG on + all platforms + + Python IO signature replication (multiple ports specified by + one signature) fixed + * GRC + + Continue processing block connections after a connection + error occurs + + Drawing/scaling fixes that improve user experience on HiDPI + and Windows machines + * Build system and packaging + + Many deprecation warnings fixed + + Make target link libraries PRIVATE wherever possible, removing + unnecessary downstream dependencies + * Testing + + Code formatting rules for clang format updated to v14 + + Removed all compiler warning suppression + + Enable Python block testing for Conda on macOS + + Many other improvements that make maintenance easier - thanks + again to Clayton Smith. In the process of fixing tests, a number + of latent bugs were fixed throughout the code. + * gr-analog + + AGC3 performance and bug fixes + + Python has access to control_loop parent class in PLL blocks + + CTCSS detection of standard tones improved by fixing floating + point comparison + * gr-blocks + + Probe Signal cross platform reliability improved by better + thread synchronization + * gr-digital + + CRC32 and CRC16 blocks use little-endian order regardless of + host order. This is a wire format change. The options were to + have different endian machines unable to communicate, or older + and newer versions unable to communicate. Note that there is + a more general set of blocks (CRC Append and CRC Check) that + are recommended for use wherever possible. + + Packet headers use consistent bit order across machines + + Floating point/rounding fix in constellation lookup table + * gr-fec + + LDPC G matrix n and k can be access from Python + + LDPC matrix output size calculation corrected + + CCSDS/Viterbi path metrics overflow fix + * gr-network + + Improve UDP Source/Sink efficiency by removing a layer of + buffering and using the GR circular buffer instead of the + Boost equivalent + * gr-qtgui + + Fixed Python code generation for Msg CheckBox, Digital Number + Control, Toggle Button, Toggle Switch + * gr-soapy + + Sources will generate rx_time, rx_freq and rx_rate tags, as + in UHD sources, where supported by the underlying Soapy driver + * gr-uhd + + Re-enable uhd.find_devices(), in addition to uhd.find() + + RFNoC: generate correct Python code when using clock/time source + + RFNoC: allow specification of adapter IDs for streamers + + RFNoC: enable setting of vlen and types for streamers + + RFNoC: streamers pay attention to stream args + + RFNoC: sync block controller with gr-ettus OOT + + RFNoC:set_property() and get_property() added to the C++ and + Python APIs + + RFNoC: Python binds added for rfnoc_block_generic + * gr-zeromq + + Sinks will optionally block on full queue, providing + backpressure. Previously, overflow data was dropped. +- Patch fix-build-with-fmt9.patch removed (applied upstrem) + +------------------------------------------------------------------- +Sun Oct 23 18:38:48 UTC 2022 - Martin Hauke + +- Add patch: + * fix-build-with-fmt9.patch + +------------------------------------------------------------------- +Mon Sep 19 11:58:41 UTC 2022 - pgajdos@suse.com + +- does not require python3-six + https://trello.com/c/MO53MocR/143-remove-python3-six + +------------------------------------------------------------------- +Fri Sep 16 21:15:04 UTC 2022 - Wojciech Kazubski + +- Update to version 3.10.4.0 + * Project Scope + + Replace get_initial_sptr() calls with make_block_sptr() calls. + There were a number of places the incorrect function was being used. + * Runtime + + Use correctly typed arguments to log messages to prevent build errors. + * GRC + + Add xfce4-terminal and urxvt to the list of terminal emulators + discovered during the build process. + + Suppress GUI hint errors that were being shown in the terminal window. + + Use integers for screenshot size (floats were causing Cairo errors). + * Build system and packaging + + Reformat cmake files and make cmake formatting part of the workflow. + + Allow GNU Radio to be a part of other cmake-based projects. + + Correct linking to libiio and libad9361 on macOS. + + Update method for determining Python installation directory. This + should work correctly now on (all?) distro releases. + * gr-blocks + + New Block Interleaver/Deinterleaver interleaves blocks of symbols + + Correct calculation of items_remaining in File Source, which allows + seek() to work correctly. + + Add an example for Wavefile Sink + * gr-digital + + Deprecate the CRC32 and CRC16 blocks, which will be removed in the + future. There are more general CRC blocks which do the same thing (and more). + * gr-filter + + Fix demo for PFB channelizer + * gr-iio + + FMCOMMS2 Sink assumes CS16 data is scaled to 32768, rather than 2048. + + FMCOMMS2 returns the correct samples for the second channel in 2-channel mode. + * gr-trellis + + Correct Python bindings for trellis::metrics. + * gr-qtgui + + Range widget can now output messages when value changes. + + Add C++ code generation for Time Sink + + Regenerate Python bindings for some blocks when necessary. + + Waterfall Sink correctly uses half spectrum for float input. + * gr-uhd + + Add Python bindings for the UHD find() functino. + * gr-zeromq + + Support newer get() and older/deprecated getsockopt() + functions in cppzmq depending on availability. + * Modtool + + Parse IO signatures with or without gr:: prefix. + * Documentation + + Update certain file lists to keep build paths out of documentation. + * Testing + + Update Conda recipe for Qt 5.15 and re-render CI support files. + + Add testing on Ubuntu 22.04. + + Link tests directly against spdlog with not linking to GR runtime. + + Ignore Python "missing whitespace after keywork" formatting error. + +------------------------------------------------------------------- +Fri Jul 1 16:35:32 UTC 2022 - Mikhail Paulyshka + +- added python3-SoapySDR to the runtime dependendcies (required by gr-soapy) + +------------------------------------------------------------------- +Wed Jun 22 13:08:40 UTC 2022 - Wojciech Kazubski + +- Update to version 3.10.3.0 + * Project Scope + + Continue replacement of Boost functionality with standard C++ + continues, where practical, making the code more maintainable. + + Fix more flaky CI tests that were failing unnecessarily. This helps greatly with maintenance. + * gnuradio-runtime + + Only catch Thrift transport exceptions + + Import PyQt5 before matplotlib to work around a bug + + Fix broken log format string in set_min_output_buffer + + Process system messages before others. This helps with orderly flowgraph termination. + + Custom buffers: add missing (simulated) data transfer to + input/output_blocked_callback functions in host_buffer class + + Fix Mach-kernel timebase (numer and denom were reversed) + + Fix signed integer overflows in fixed-point table generation + * GRC + + Add parentheses on arithmetic expressions to avoid operator precedence problems in templated code + + Fix create hier / missing top_block error + * Build system and packaging + + CI: Add testing for Fedora 36, remove Fedora 34. + + cmake: Use platform-specific Python install schemes + + cmake: Always prefix git hash used as version with "g" + + cmake: Allow MPIR/MPLIB package find to fail gracefully + + cmake: Remove 'REQUIRED' flag for Volk + * gr-blocks + + Fix rotator_cc scheduled phase increment updates + + Wavefile Sink: add support for Ogg Opus if libsndfile is >= 1.0.29 + + Probe Signal: synchronize access to d_level to prevent race conditions + * gr-digital + + Use memcmp for CRC comparisons to avoid alignment errors + * gr-dtv + + Use unsigned integer for CRC calculation + + Fix use of uninitialized memory + + Fix initialization of L1Post struct + * gr-filter + + Fix various bugs in Generic Filterbank + * gr-iio + + Fix grc pluto sink attenuation callback +gr-qtgui + + Several sinks produce wrong error messages, when GUI Hint is used. Reorder params in yml files to fix. + * gr-soapy + + Deactivate stream before closing. Some modules depend on this behavior. + * gr-uhd + + Implement get_gpio_attr() + + Code generation tools + + C++ generation: Fix various template errors + * Modtool + + gr_newmod: Fix copying python bindings to test dir on Windows + + gr_newmod: Make untagged conda package version less specific + + modtool: Add a conda recipe to the OOT template + + Make the pydoc_h.mako more clang compliant + * Documentation + + Add shim Sphinx config for readthedocs +- Enabled gr-iio module (requires libiio) + +------------------------------------------------------------------- +Mon Apr 11 20:26:33 UTC 2022 - Mikhail Paulyshka + +- Added python3-jsonschema to build and runtime dependencies +- Added python3-pyzmq to runtime dependencies +- Update to version 3.10.2.0 + * gnuradio-runtime + + Correct size/usage for single-mapped buffers (part of the new Custom Buffers feature). + * grc + + Improve discovery of xterm and related programs. + + Save generated hierarchical block code to the block library instead of the directory containing the current GRC flowgraph. + + New JSON Config and YAML Config blocks that load configuration variables from files at runtime. Those variables may then be used in block parameters. + + Store the GNU Radio version in flowgraph metadata when saving. + + Minor change in Python evaluation code to allow affinity, minoutbuf and maxoutbuf to be adjusted via script parameters. + * Build system and packaging + + Require C++-17 for gnuradio-runtime and code compiled against it (via cmake flags). + + Add pythonschema to build- and run-time dependencies. + * gr-blocks + + Add exponential distribution to Message Strobe Random block’s delay selection. + + Quiet down debug messages in File Sink. + + Skip alignment check in File Source when the input file is not seekable (e.g., it is a pipe). + * gr-filter + + Fix crash in Rational Resampler logging + * gr-digital + + Add generic CRC blocks: CRC Append and CRC Check. + * gr-qtgui + + Improve text/background color on Range widget. + + Digital Number Control emits message with new, instead of previous, value. + + Message Edit Box sends message only when return is pressed, rather than whenever focus is lost. + + Vector Sink allows legend to be disabled. + + Type error fixes (Python 3.10 is stricter about int casting). + * gr-trellis + + Provide Python bindings for PCCC Encoder and Viterbi Combo. + * gr-vocoder + + Add C++ generation support to gr-vocoder + * Code generation tools + + Support strongly-typed enums in Python bindings + +------------------------------------------------------------------- +Fri Mar 26 18:03:17 UTC 2022 - Mikhail Paulyshka + +- Added spdlog and thrift to dependencies +- Added python3-cairo and python3-gobject to runtime dependencies +- Removed log4cpp from dependencies +- Update to version 3.10.1.1 + * fixes an off-by-one error in output buffer allocation +- Update to version 3.10.1.0 + * Runtime + + Add ownership and locking to hier_block2 to avoid crash/freeze after disconnect. + * gr-analog + + Fix C++ code generation for random_uniform_source + * gr-blocks + + Minimal implementation of a SigMF Sink, allowing users to easily try out generation SigMF output. SigMF uses a raw data file and a separate JSON metadata file. A SigMF Source is also provided. At this time, it is a wrapper around a File Source (the data files are compatible), but metadata is not processed. + * gr-filter + + Bug fix: buses should now work with PFB channelizer and synthesizer. + * gr-iio + + Various fixes for fmcomms2/3/4. + * gr-uhd + + Bug fix: overflow count was uninitialized. + + Correct descriptor names in uhd_fpga_ddc/duc. + * GRC + + Bug fix: initialize value for "priority" parameter in Python Snippets. + + Show blocks with "deprecated" flags as deprecated. +- Update to version 3.10.0.0 + * Changed + + Moved PDU blocks from gr-blocks to gr-network and gr-pdu + - Compatibility shim included to allow access to these blocks from gr-blocks but these are deprecated from the gr-blocks namespace and the shim is scheduled for removal in 3.11. + + gr::blocks::pdu namespace has been reorganized in gr + - PDU vector types are accessible in gr::types + - PDU functions are accessible in gr::pdu + - Common msg port names are accessible in gr::ports + + Logging Infrastructure changed to use spdlog + - +dependency spdlog, -dependency Log4CPP + - New, more convenient logging methods + - Modernized Interface + - Removed iostream and cstdio from logging statements + * Project Scope + + C++17 + - requires MSVC 1914 (Microsoft VS 2017 15.7) + - replace boost::filesystem with std::filesystem + + Windows build: removed unnecessary MSVC-specific system include overrides + + Removed unused volk_benchmark + + Use Pre-Compiled Headers - speeds up compilation time + + Further replacements of boost::bind with lambda functions + + Remove more manual memory management and general c++ modernization + + PEP8 formatting applied and enforced on all Python files + + Centralized min dependency and compiler versions in one place for GR and modtool created OOTs + + Update QA tests to work with OpenEmbedded cross compilations + + Dependency versions: + - Python 3.6.5 + - numpy 1.17.4 + - VOLK 2.4.1 + - CMake 3.16.3 + - Boost 1.69 + - Mako 1.1.0 + - PyBind11 2.4.3 + - pygccxml 2.0.0 + + Compiler options: + - GCC 9.3.0 + - Clang 11.0.0 / Apple Clang 1100 + - MSVC 1916 (Microsoft VS 2017 15.9) + + Replace deprecated distutils in CMake macros + + Build targets with python dependencies conditionally on ENABLE_PYTHON + * gr-blocks + + Remove deprecated networking blocks: udp_source, udp_sink, tcp_server_sink; replaced in 3.9 with more capable blocks in gr-network + + Document the supported operations in transcendental + * gr-analog + + fastnoise_source: Use uint64_t seed API, use size_t for vector length/indices + + fastnoise_source: Use a simple bitmask if the random pool length is a power of 2 to determine indices, instead of %, which consumed considerable CPU + + sig_source: Remove deprecated freq message port of signal source block; Use cmd port instead + * gr-filter + + Remove deprecated mmse_interpolator block; Replaced previously by mmse_resampler + + Speed up filter building with moves + + Add const to temporary tap vectors + * gr-digital + + Remove deprecated simple_{correlator,framer} + + Remove deprecated cma, lms, kurtotic equalizers; replaced in 3.9 by linear_equalizer + + Un-deprecate pfb_clock_sync + + Add header payload demux example + + Remove crc32 utility and most of packet_utils + + Remove yml files for non-existent QAM mod/demod blocks + * gr-dtv + + Refactor ATSC blocks to have separate metadata stream rather than passing structs + + Add energy normalization for DVB-S2X constellations + * gr-network + + Fix segfaults when TCP and UDP are restarted + * gr-qtgui + + Remove spurious volk includes + + Fix segfaulting overflow in time_sink and waterfall + + Support for Qwt 6.2 + + Frequency/Waterfall Sinks expand range to 32k and enums in GRC + + Frequency/Waterfall Sinks force power of 2 for fft size + * gr-uhd + + Python bindings for RFNoC blocks + * gr-utils + + gr_modtool bind workaround for pygccxml incompatibility with spdlog + * gr-video-sdl + + Clean up the SDL sinks: + - Remove unused format parameter + * gnuradio-runtime + + gr::random uses xoroshiro128+ internally, takes uint64_t seed + + Remove unused misc.cc/h + + Accelerator Device Support + - Major changes to the runtime to support “custom buffers” + - Single Mapped Buffer abstraction that can be inherited out of tree + + Remove Tag Checker + + Explicitly convert path to string to fix MSVC build + + size_t for vmcircbuf constructor and buffer factories + + Reconfigurable timer value for input blocked condition (scheduler detail workaround) + * grc + + grcc –output switch for hierarchical blocks + + Clean up Bokeh server loop + + Don’t blacklist default as a flowgraph ID to prevent always starting in an error state + * Testing + + rm dependencies from disabled components in blocks/runtime tests + * Misc. + + dtools: Added run-clang-tidy-on-codebase, which does what the name suggests, then updates all bindtool hashes, and commits everything appropriately + + gr_filter_design + - update to support PyQt5 + - fix loading of previously saved .csv files + * Added + + New in-tree module gr-pdu + + New in-tree module gr-iio + +------------------------------------------------------------------- +Sun Feb 13 05:05:06 UTC 2022 - Stefan Brüns + +- Restore gr_modtool CMakeLists.txt files, protect from %cmake + mangling. +- Remove TeX build dependency, math is rendered with MathJax. +- Add pyqtgraph and scipy filter design tool runtime dependencies. + +------------------------------------------------------------------- +Wed Feb 9 07:57:53 UTC 2022 - Wojciech Kazubski + +- Patch revert-23cece0d0.patch removed - not needed now + +------------------------------------------------------------------- +Sun Jan 9 21:21:09 UTC 2022 - Wojciech Kazubski + +- Update to version 3.9.5.0: + * GRC + + Fix: dependent variables sometimes fail to evaluate + + Modify and cleanup bokeh server loop + * gr-analog + + Update python bindings for power squelch + * gr-dtv + + Add energy normalization for DVB-S2X constellations. + * gr-filter + + Remove pyqwt and qt4 from filter_design + * gr-network + + Fix: segfaults when TCP & UDP blocks are restarted + + Add throttle flag to the tcp source and sink blocks + * gr-qtgui + + Enable use of Qwt 6.2 + * gr-uhd + + Add Python bindings for rfnoc_{block, ddc, duc, rx/tx_radio} + * modtool + + Improvements in generated QA code + * Build System + + Better support for cross-compiling (OpenEmbedded) + + Find log4cpp on Ubuntu systems + + Handle optional components in find_package + + Add version check for pygccxml + * CI/QA + + Update tests to work with OpenEmbedded +- Patch 0001-gr-digital-glfsr.h-drop-boost-cstdint.hpp-and-use-cs.patch + removed (applied upstream) +- Patch 0003-enables-use-of-qwt-6_2.patch removed (applied upstream) + +------------------------------------------------------------------- +Mon Nov 1 22:15:06 UTC 2021 - Wojciech Kazubski + +- Update to version 3.9.4.0: + * Regressions Fixes + + Remove #include (C++17 feature) from one file + + Restore pyqwidget() in gr-qtgui + * GRC + + GRC now runs on Fedora 35 ... Gtk initialization checks + were too strict + + Add keyboard shortcuts for zoom + + Account for scale factor when computing drawing area size + + Use font size from config for block comments + + Change type aliasing to allow interleaved short/byte to be + connected to vectors of short/byte. Stricter type checking + was added previously and caused some blocks to be + unconnectable when using these types. + + Required params no longer default to 0 when left empty. This + caused hard-to-find errors. Older flowgraphs that have empty + required fields will need to be fixed. + + Tooltips fixed for categories and modules + * gr-runtime + + PMT uses the VOLK allocator for vectors + + get_tags_in_window() Python wrapper calls the correct function + + Add --pybind option to gnuradio-config-info to get PyBind11 version + * gr-blocks + + Add example for XMLRPC + + Add a unit test for Message Strobe + + Fix C++ support for Unpacked to Packed + * gr-channels + + RNG seeds are initialized correctly + * gr-digital + + Fix yml file for Header/Payload Demux + * gr-network + + Suppress warning in tuntap + * gr-qtgui + + Remove unusable int type in Number Sink yml + + Use no_quotes() function in several yml files + * modtool + + Hashes can be fixed using modtool using --update-hash-only + + Use tempfile() instead of /tmp in bindtool and modtool + + Use static_cast instead of reinterpret_cast in templates + + Correct broken Python general block template + * Build system + + Better check for Boost version + + Determine the Python prefix more reliably + + Use GR-specified compiler standard (C++14) in gr-soapy, + instead of the SoapySDR standard (C++11) + + GrPython.cmake is compatible with older cmake + * Documentation + + Man pages are in-tree + + Repair many examples, especially in gr-digital + + Allow UTF-8 in pydoc templates + * CI + + Execute make install during test +- Patch 0004-gnuradio-fix-boost-header.patch removed (applied upstream) + +------------------------------------------------------------------- +Thu Oct 7 12:38:52 UTC 2021 - Wojciech Kazubski + +- Update to version 3.9.3.0: + * General + + Many cleanups and some C++ modernization changes + + Replace Boost with stdc++ equivalents (ongoing effort) + + Logging cleanup and performance improvements (ongoing effort) + + Cleanup of many unused includes + + Various block yaml cleanups and repairs + + Use Soapy instead of UHD for flowgraph testing in gr-analog and gr-dtv + * GRC + + Improvements in C++ templates and code generation, more blocks are usable + + Add specification of packages to find (via cmake) for C++ templates + + Fix C++ hier block param template + + Add GUI hints for widgets in C++ code generation + + Add no_quotes() convenience function to strip quotes from strings, callable from templates + + Allow short and byte as valid types in an enum + + Fix desync when dragging block (block would not always track cursor) + + Correctly evaluate interdependent variables + + Allow error messages to be copied to clipboard + + Update disabled blocks if they depend on others + * gnuradio-runtime + + Deprecate tag_checker class (will be removed in 3.10) + + Detect and follow symbolic links for installation prefix in gr::prefix() + + Add "<" operator for comparison of tags (instead of offset_compare()) + * gr-blocks + + New Matrix Interleaver block + + Throttle and Head blocks can be input-only when no output is needed, improving performance + + Fix tag propagation in (un)pack-k-bits blocks + + Fix namespace for nco and vco in benchmarks + * gr-digital + + New Async CRC16 block + + Add NRZI option to Differential En/Decoder + + Constellation performance improvements + + Fix constellation normalization by average power + + Remove unimplemented msg output port from Chunks to Symbols block + + Make unpacking of bits optional in GMSK modulator so the blocks can accept unpacked bits + + In GFSK/GMSK hier blocks, replace M&M clock recovery with newer + and more capable Digital Symbol Sync block + * gr-fec + + Cleanups and code improvements + * gr-fft + + Add a "shift" paramenter to Log Power FFT, to place DC bin at center + * gr-filter + + Performance improvement in PFB Arbitrary Resampler when interpolating, especially at low rates + * gr-qtgui + + Fix display of tags on the last sample (would be dropped) + + Python wrapping: replace pyqwidget() with qwidget() - this is not intended + to be a visible fix, but is mentioned here in case it causes trouble for anyone + + C++ generation + - add double quotes to cpp_opts keys with colons + - position windows correctly depending on gui_hint + - use option attributes to generate enums + - use the cpp enums for wintype and trigger_type + * gr-uhd + + Fix input filename in freq hopping examples + + Make RFNoC a separately enabled component in cmake + + Python bindings for rfnoc_graph,_rx/tx_streamer + * gr-video-sdl + + U and V channels were reversed on sink blocks + * gr-soapy + + Added message support for SoapySDR 0.8 API + * modtool + + Set VERSION_PATCH to 0 instead of "git" in new modules + + Fix "rm", "bind", disable", "rename" and "makeyml" which had + unexpected side effects, or did not work as a user would expect + * Build System + + Correct minimum version checking for Mako + + Ensure that RC_*_VERSION are numeric (Windows) + + Fix finding libunwind + + Pass through extra arguments to GR_PYTHON_INSTALL to install command + + Remove absolute paths and private links from exported targets + + Add gir1.2-gtk-3.0 as deb runtime dependency + * Documentation + + Code of Conduct updates and link to Wiki + * CI + + Do not error out on deprecations, allowing testing of deprecated code +- Update to version 3.9.2.0: + * SoapySDR support (gr-soapy) + * GRC + + Parameter expressions and/or values can be displayed in blocks on + the flowgraph. Previously, only values were displayed. + + Deprecated blocks are shown in a distinct color (orange), + and the optional deprecated property has been added to block yaml + + Dark theme works better, especially for parameter fields + + Vector length is now correctly applied to all input ports + + Validation has been improved. Raw types are validated. Port + connections are checked by type rather than by item size. + + Variable names that cause name conflicts in Python code (e.g., + with package names) are rejected + + Bus logic fixes + + Blocks can no longer be dragged off the screen and lost forever + * gnuradio-runtime + + Remove pmt::pmt_* functions, which were not actually implemented. + This is technically an API change, but any use of the API would have + resulted in a link error. + + Remove Python bindings for internal buffer functions + * gr-analog + + Added an example for PLL Frequency Detector + + Better names for parameters in PLL GRC blocks + * gr-blocks + + Consistent naming for Vector Length parameter in GRC blocks + + count_bits uses VOLK popcnt for better performance (used for example in + the Correlate Access Code block) + + Rotator block phase increment parameter is controllable via a message, + and a tag can be added at the point where the increment is adjusted + * gr-digital + + MPSK example updated to use a Linear Equalizer (replacing deprecated block) + * gr-filter + + Filter Delay documentation improvement + + Interpolating FIR filter can generate C++ code + * gr-dtv + + VL-SNR bugs fixed (incorrect constants). + * gr-qtgui + + Improve autoscaling for vector sinks + + Fix floating-point resolution problems in several widgets, due to + interpretation of PMT doubles as floats + * gr-uhd + + Add policy enum to Python bindings for tune_request + + Additional time spec options on UHD blocks (PC Clock on Next PPS, GPS Time on Next PPS) + + Fix up code that was generating warnings + + Fix command handler logic to apply commands from messages to the correct channel + * gr_filter_design + + "File/Save" is disabled until the taps have been computed, and the GUI + is reset after a save, to make it clearer which data is being saved. + + Entries are hidden for parameters that do not apply to the selected filter type. + + Save window type as an integer instead of a Python enum name + * gr_modtool + + Improve validation of module and block names + * Build System and Infrastructure + + Improved messages related to dependencies MPIR and GMP. Only one of these + packages is required, and the previous error messages were confusing. + + Cleaner builds for Windows and Conda. A number of general cmake improvements + have resulted from this work. + + In-tree packaging files for DEB and RPM, used with Launchpad and COPR + + Added man pages for GNU Radio tools + + Test code generation for all in-tree GRC examples + + In GrPybind.cmake, PYBIND11_INCLUDE_DIR (incorrect) was changed to pybind11_INCLUDE_DIR +- Update to version 3.9.1.0: + * Project Scope + + (internal) Build system improvements and fixes + + (internal) Use C++14 features instead of Boost where possible + + Fewer compiler warnings (due to fixed code, not removal of warnings!) + * OOT Support + + cmake: standard FindGSL used in lieu of custom one, so OOTs + should no longer copy this module from the GNU Radio tree if needed + + modtool: better exception/error handling + + modtool: will non-interactively add blocks with no parameters + (--argument-list="") + + PyBind11 header hash hotfixer + + (gr-utils/bindtool/scripts/binding-hash-hotfixer.zsh) makes life easier + * GRC + + Block param values can be shown as expressions and/or evaluated + values. Under the View menu, see "Show parameter ..." options. + + Better handling of gui hints, avoid hiding widgets in cases + where some have GUI hints and some do not + + Ensure that strings are valid utf8 when evaluating parameters + + Save embedded python blocks/modules to hier_block_directory + + Save config and update recent file sub-menu before executing flowgraph + + Revert to previous "block id" display behavior + + Fix drag n' drop issue with Quartz (macOS) backend + + C++ generated code: remove gnuradio prefix from linked libraries + + Python generated code: prefix generated modules with flowgraph id + connect() will be called for hier blocks even if they don't have ports + + Check for PyYAML 3.11 (was checking for 3.10 even though 3.11 was required) + * gnuradio-runtime + + Default buffer size can be adjusted by setting buffer_size in the + [Default] section of the GNU Radio config file. Otherwise, the + longstanding default of 32768 is used. + * gr-blocks + + Message Debug: prints warning when a non-PDU message is + received on the Print PDU port + + File Source handles EOF properly in non-seekable files (e.g., pipes) + + Several bounds checking and boundary condition improvements + + Remove DC Spike AutoSync algorithm fixed + * gr-digital + + MSK timing error detector improvement + + Python bindings include control_loop parent class in child + class Correlation Estimator parameter threshold well documented + * gr-fft + + New window types: Nuttall, Blackman Nuttall, Nuttall CFD, Welch, Parzen, + + Exponential, Riemann, Gaussian and Tukey + * gr-filter + + Taps blocks (e.g., Low Pass Filter Taps) now propagate parameter changes + + Filter Designer: IIR/Band Pass/Bessel works + * gr-qtgui + + Add toggling label and icon on plot play/stop button + + Time Raster Sink: axis labels and ranges are configurable + + Qt Chooser: label improvements + * gr-uhd + + DEPRECATION: UHD blocks currently accept control messages (e.g. for + frequency change) as PMT pairs and tuples, in addition to the intended + PMT dict format. In v3.11, only the dict format will be accepted. + + Command note: freq messages in this version must be dicts. + Additionally, the direction key must be present and set to TX or RX. + + set_filter() adds chan parameter + + Python generated code improved for FE corrections + + Allow control of frequency and gain in both directions at the same moment + + Add command handler for mtune ("manual tune") + + Add GPIO control via messages + + Add start time param to GRC blocks + + Support streaming modes: STREAM_MODE_START_CONTINUOUS, + STREAM_MODE_STOP_CONTINUOUS, STREAM_MODE_NUM_SAMPS_AND_DONE, + STREAM_MODE_NUM_SAMPS_AND_MORE + + Documentation improvements + + Tag sink demo example + + Better logging of over/underflows, time errors and time tags + + Added Python binding for ALL_LOS (all local oscillators) + + uhd_fft application X11/Qt related cleanups + * QA + + waitFor(condition, ...) available for tests that use timeouts +- Update to version 3.9.0.0: + Changed + * Project Scope + + License headers now SPDX format + + C++14 + + use C++11 facilities in a lot of places where Boost was still used, + especially smart pointers, range loops + + lambdas where boost::bind was used + + C11 + + Dependency versions: + Python 3.6.5 + numpy 1.13.3 + VOLK 2.4.1 + CMake 3.10.2 + numpy 1.13.3 + Boost 1.65 + Mako 1.0.7 + PyBind11 2.4.3 + + Compiler options: + GCC 8.3.0 + Clang 11.0.0 / Apple Clang 1100 + MSVC 1910 (Microsoft VS 2017 15.0) + + VOLK now "regular" dependency, not in-tree submodule + + numpy now also a CMake-checked hard dependency for Python support + + Exception Handling: throw by value, catch by reference (clang-tidy check) + + C++11: Emplace in vectors where you can; brings performance boni, but not + + included in clang-tidy-checks + + Further clang-tidy based code optimizations: + + empty() instead of size() == 0 + + override where overriding virtual functions (which we do a lot) + + Logging: removed all std::cerr and fprintf(stderr,…) by GNU Radio logging + + Logging: Changed logging format for many multiline error logs + + purged snprintf, printf logging + + There were a lot of places where a malloc'ed object + was used internally, where that was inappropriate. + Using simple instance-holding fields now. + + const for members that were only set at construction + time is now desired, and implemented in most places + + const -> constexp in a lot of places. + + assert -> static_assert + + An exception-throwing block will now terminate the + flow graph process, configurable through top_block + + gr-utils cleanup, folder restructuring + + config version checks installed CMake file will accept + "at least this version" now + + PyBind11 replaces SWIG + + Full tree conversion from SWIG to Pybind11 bindings + + Doxygen now uses MathJax, full LaTeX installation no + longer required + NOTE: Most of the changes above change the generally + preferred coding style in a lot of situations. + * GRC + + start flowgraph in folder where it resides + + gnuradio-runtime + * When calculating offsets in non-integer rate FEC, lround + + default seed for gr::random now actually as documented time-dependent + + loggers moved from gr::block to gr::basic_block + * PMT serialization + + PMT dicts no longer indistinguishable from pairs + + PMT symbol hashing no longer suffers under oddball own implementations + * gr-audio + + Increased ALSA buffer nperiods + * gr-blocks + + add, add_const VOLK'ized, templated + this seems to break things in other places, even if + it proves to be mathematically identical + + wavfile infrastructure: libsndfile now dependency + * gr-digital + + transcendental block: default to 32 bit float complex, not double + + Linear equalizer: separate adaptive algorithm, allows for + using e.g. trained sequences instead of the classical LMS, CMA + + DFE: better structure for decision history + * gr-dtv + + LDPC encoder: template functions instead of #defined macros + + LDPC encoder: smaller tables through uint16_t for index tables + * gr-fec + + API uint8_t, not char + * gr-fft + + FFT blocks/functions templatized + * gr-filter + + logging format + + rational_resampler_base -> rational_resampler + * gr-uhd + + Required UHD version bumped to 3.9.7 + + logging format + Deprecated + * gr-analog + + sig_source: freq port will be removed in the future + * gr-digital + + in favor of symbol_sync, deprecate: + clock_recovery_mm + msk_timing_recovery + pfb_clock_sync + Added + * Project Scope + + C++ Generation all over the place + + PyBind bindings + generator + + Github actions + + Reproducible builds-compatible CMake TIMESTAMP + * gnuradio-runtime + + block_gateway: set_max_output_buffer + + GR_PREFS_PATH environment variable sensitivity to + configure the path to the config file + + gnuradio-config-info --print-all + * GRC + + option to toggle ID visibilities globally + + Validation check for QT GUI hints + * Python snippets + + block header parsing tool + + block header parsing tool (GSoC 2019) + * gr_modtool + + option to convert blacklisted files + * gr-analog + + sig_source: cmd port adds support for dicts, setting of frequency, + + amplitude, offset and phase parameters + * gr-blocks + + selector now has control message ports + + Rotator-based freq shift convenience wrapper + + Message-to-Variable and vice versa blocks + + DC Spike removal + + IQ Swap + + Complex to interleaved char / short: scaling option + + Delay block: control message port + + Phase Shift block with message port + + wavfile_sink, _source can now deal with a lot of audio formats: + + uncompressed WAV/AIFF, µ- and A-law compressed audio, + OGG/Vorbis, FLAC, even octave files + + Stream Demux, which demuxes streams according to lengths vector + + rotator: phase() getter + * gr-digital + + OFDM: multiple CP lengths + + ofdm_equalizer_simpledfe: enable_soft_output + + Constellation Encoder + + Constellation: normalization options + * gr-fec + + {en,de}code_rs_8, {en,de}code_rs_ccsds: Reed-Solomon en- and decoders + * gr-fft + + Windows: + Gaussian + Flat Top + Tukey + + Window build() call now with default beta + * gr-filter + + GRC: File taps loader block + + Low pass FFT filter convenience wrapper + + ichar / ishort decimator + + phase continuity for freq_xlating_fir_filter + * gr-network + + gr-network: a whole new networking blocks module! + TCP + UDP + + Much better lockup/multithreading support than 3.7-era blks2 nightmare +infrastructure :) + * gr-qtgui + + Azimuth/Elevation plot + + Autocorrelation plot + + Compass visualization + + Dial control + + Gauge: dial, level + + Distance plot + + LED-like indicator + + Message-passing check box + + Message-passing numeric control + + Message-passing push button + + Toggle Button + + Eye sink + + Vertical slider + * gr-uhd + + Filter API + + UHD 4.0 support + + Power Reference API + + Bidirectional setting messages on both sink, source + * gr-vocoder + + Codec2 dev branch support + + FreeDV: In/output rates can differ + + FreeDV: text message output + * gr-zeromq + + C++ GRC templates + + Tag filtering for tag-forwarding blocks + Removed + * Project Scope + + VOLK is no longer a submodule + + Sphinx: consolidate into doxygen, or wiki-maintained block list. + + Python 2 + + SWIG + + gru python module + * gnuradio-runtime + + circular_file.cc + + math/common_factor.hpp + * gr-blocks + + bin_statistics_f + + log2_const + * gr-digital + + PFB clock sync: set_taps + + deprecated old OFDM infrastructur + + ofdm_frame_acquisition + + ofdm_frame_sink + + ofdm_insert_preamble + + ofdm_sync_fixed + + ofdm_sync_pn + + ofdm_sync_pnac + + ofdm_sync_ml + + ofdm_receiver + + digital_voice + * gr-fft + + malloc_float, _double: rely on VOLK + + Goertzel: dtor superfluous + * gr-filter + + deprecated window function duplicates (use them from gr-fft!) + Fixed + * Project Scope + + CMake: Qwt, Log4Cpp detection + + ctrlport strings unicodified + + Freedesktop install script was not executed + + Redundant icons installed + + Path substitution on Windows was backslash-broken + + YAML definitions: more than I can count + + Cross-building: py interpreter at runtime != build time + * gnuradio-runtime + + ctrlport: unholy stored reference to stack-allocated object removed + + Sine table generation for fixed point math + + gr_unittest: floatAlmostEqual had a lot of false passes due abuse of + all() + + get_tags_in_range for delay < (end-start) + + Premature tag pruning + + release flattened flowgraph after stopping, fixes + restartability/shutdown problem + + PMT serialization portability + + latency issue caused by setting block alias on msg block + + Windows logging errors + + ctrlport: Thrift >= 0.13 broke + * GRC + + Tab widget ID visibilities + + A lot of YAML templates + + Default setting in qtgui chooser restored + + Boolean parameters no longer switch buttons + + Nested namespace handling + + Don't rely on set ordering in tests + + configparser import + + input box color theme on dark themes + + Search box typing doesn't inadvertedly interact with the rest of GRC anymore + * gr_modtool + + Empty argument lists allowed + + Boost UTF replaced CppUnit, this needed to be done here, too + * gr-analog + + wfm left/right, filters + * gr-audio + + portaudio: lock acquisition was improper + * gr-blocks + + Throttle now uses monotonic clock + + Tag debug only saved last work call's tags + + File sink flushes on stop + + gr_read_file_metadata.py used to lose rx_time precision + + File source big file handling under Windows + + file_*: fseek errors used to be ignored + * gr-digital + + map_bb: thread safety, buffer overflows + + additive_scrambler: reset was broken + + Constellation scalefactor wasn't always initialized + + long-standing qa_header_payload_demux bug addressed by + waiting for both RX and TX, not only either + + false triggers in correlate_access_code + * gr-dtv + + rate mismatch in ATSC flowgraphs + * gr-fec + + async_decoder Heap corruption + + cc_encoder: constraint length K > 8 led to wrong output + * gr-fft + + thread safety of copy assignment/ctor + + log power FFT Python + * gr-filter + + variable_band_pass_filter GRC complex taps input + + RRC filter gain for alpha = 1 + * gr-qtgui + + Remove copies of image data in returns by using move semantics + + Remove bogus overriding in drawing functions of plot_raster, _waterfall + + Edit MSG box: don't require key to be set + + + Don't check for Python2 libs + + Number Sink ignored averaging setting + * gr-uhd + + UHD apps: Py3 fixes + + USRP blocks: multichannel objects not properly populating channels + * gr-video-sdl + + YUV formats fixed + * gr-zeromq + + Don't depend on deprecated ZMQ functionality (fix warnings, + include what you use) + + Unhandled exceptions now handled, much calmer + + Avoid infinite blocking in tb.stop() by using ZMQ_LINGER + +------------------------------------------------------------------- +Mon Feb 15 12:35:29 UTC 2021 - Guillaume GARDET + +- LTO segfaults on %arm, so disable it - boo#1182440 + +------------------------------------------------------------------- +Mon Dec 14 09:24:12 UTC 2020 - Martin Hauke + +- Drop obsolete "Obsoletes: libgnuradio0" +- Add "BuildRequires: python3-pycairo", needed by the GRC +- Force GRC builds + +------------------------------------------------------------------- +Thu Sep 17 08:54:28 UTC 2020 - Martin Hauke + +- Add patches to build with boost >= 1.73.0: + * 0001-gr-digital-glfsr.h-drop-boost-cstdint.hpp-and-use-cs.patch + * 0002-boost_qualify_placeholders_with_their_full_namespace.patch + * revert-23cece0d0.patch + For details see: + * https://github.com/gnuradio/gnuradio/pull/3441 + * https://github.com/gnuradio/gnuradio/pull/3566 + +------------------------------------------------------------------- +Wed Aug 26 13:36:06 UTC 2020 - Matwey Kornilov + +- Update to version 3.8.2.0: + * Changed on project Scope: + + Call SWIG without -modern flag if new enough to make that inherent, thus + removing warnings + * GRC + + Mako templating now strict_undefined + + Show block comments by default + + dynamically updated block namespaces (execute imports from templates) + + Name-lookup detection of dark color themes, adjusted input box color + scheme + * gr-dtv + + dvb_bbscrambler: LUT 8B alignment (private, but relevant for future + usable optimization) + * Fixed + * GRC + + incorrect "clear console" and "save console" labels + + generator: flow_graph.py.mako now contains import for print_function for + compatibility in Py2 generation + + variable_config.block.yml now properly handles configparser / + ConfigParser import + + Change port types of all selected block on key-press cycling, not just + first one + + Always check for Python version in flow graph generation, not only in + specific block types + + Don't run stale flow graphs + + Prevent search keystrokes from modifying flowgraph + * gr-blocks + + file_sink flushes contents to file on stop() + + file_meta_sink block YAML: emit proper default PMT dict + + XMLRPC client/server block templates: use Py3 XMLRPC when possible + * gr-digital + + soft_dec_lut_gen now explicitly casts 2.0**prec to int + + map_bb: add missing definition of static constexpr size_t s_map_size + * gr-dtv + + Reduce send_frame_size in UHD examples (broken after UHD v3.13.0.3-rc1) + * gr-filter + + logpwrfft YAML was hiding FFT length + + FFT frequency range calculation was occasionally off due to abuse of + numpy.arange + * gr-filter + + GRC band pass filter taps block: use firdes.complex_band_pass when + complex + + firdes.root_raised_cosine gain for unity alpha + * gr-qtgui + + qtgui_chooser regained 3.7 capability to set default + + Frequency Sink hovering now respects set units + + GRC blocks had optional stream inputs + * gr-uhd + + ignore len_tag_name in USRP Source YAML generator python + + uhd_fft/uhd_siggen_gui: import order of sip and Qt + + GRC example block errors + * Added + * GRC + + OS X: Meta modifier key support (eq. Ctrl on other platforms) + + configuration setting show_block_comments + * gr-analog + + Signal source cmd port + * gr-zeromq + + Message-based ZMQ blocks take bind argument, as necessary for N:1 + patterns. Changes ABI. + +------------------------------------------------------------------- +Thu Aug 20 08:33:58 UTC 2020 - Martin Liška + +- Use memoryperjob constraint instead of %limit_build macro. + +------------------------------------------------------------------- +Thu Apr 30 17:49:56 UTC 2020 - Martin Hauke + +- Update completely changed the way their tarballs are signed + Drop signature validation for now. +- Remove file + * gnuradio-3.8.0.0.tar.xz.asc + * gnuradio.keyring + +------------------------------------------------------------------- +Mon Apr 20 16:36:21 UTC 2020 - Wojciech Kazubski + +- Update to version 3.8.1.0: + * Changed on Project Scope + + clang-tidy improvements + - throw exceptions by value, catch by reference + - emplace_back where applicable + - empty() instead of vector::size() == 0 + + use CMake to check for endianness instead of BOOST_BIG_ENDIAN + * gr-fec + + scipy becomes optional dependency (for polar channel code construction) + * gr_modtool + + use Boost.UTF instead of cppunit + * Fixed on Project Scope + + FindQwt paths + + floatAlmostEqual unittest assert function wrongly passing on + sequence types + + Only require boost unittest when testing is enabled + + FindLOG4CPP typo + + numpy.fft(pack) imports + + several scipy imports that can be done with numpy alone + * gnuradio-runtime + + block gateway shadowed system port + + Flaky message passing unit test contained timeout (not the test's job) + + ctrlport/rpcaggregator & Co: removed storage of references to + scope-lifetime objects + + Sine table generation python was wrong + + get_tags_in_range for delay < (end-start) + + premature tag pruning + + release flattened flowgraph after stopping; fixes restartability/shutdown + issues + * gr-analog + + clipping in FM receiver: remove superfluous gain + + C++ generation for multiple blocks + * gr-audio + + portaudio source: lock acquisition + * gr-blocks + + rotator VOLK workaround + * gr-digital + + map_bb buffer overflow + + map_bb thread safety + + additive_scrambler count based reset + * gr-fec + + heap corruption in async_decoder + + cc_encoder was broken for constraint lengths > 8 + * gr-fft + + restore Boost 1.53 compat + * gr-qtgui + + no longer requiring unnecessary key in edit_box_msg + * gr-uhd + + fixed examples under Py3 + + multichannel objects not populating channels + * gr_modtool + + wrong use of input -> raw_input + + allow empty argument list + + testing + + check for and deny TSB under Python + + QA addition bugs + + correct path for C++ QA tests + * GRC + + several issues with YAML files + + nested objects now properly populate namespaces + + comments now included in block bounds calculation + + Wiki documentation link removed from OOT blocks' docs tab + + Dragging connections to auto-hide ports works now + + generated and re-generated several example flowgraphs + + bokeh_layout module name + + Revert toggle buttons to text entry for bool block props, allowing GRC + + variables to be used + * Added on Project Scope + + Codec2 development branch / future compat + + Boost 1.71 compat + + CI now checks for formatting + + gnuradio-runtime + + dot graphs now contain message edges + + Python wrapping for blocks' set_affinity and {g,s}et_alias + * gr-uhd + + UHD Filter API + * GRC + + block affinity, buffer sizes available as advanced options for blocks + + testing + + Python snippets (please snippet responsibly!) + + show_id flag added to embedded python blocks, Probes + + global option to toggle showing of IDs + + Help "Keyboard Shortcut" entry + +------------------------------------------------------------------- +Tue Dec 17 09:34:53 UTC 2019 - Torsten Ohlenforst + +- Added missing dependency to package python3-pyaml. + +------------------------------------------------------------------- +Thu Sep 19 21:13:13 UTC 2019 - Stefan Brüns + +- Use correct QWT dependency, qwt6-devel refers to the Qt4 version on + Leap 15.0/15.1, qwt6-qt5-devel also works for TW. +- Avoid mangled CMakeLists.txt files in gr_modtool template. +- Update rpmlintrc (changed gr_modtool template directory). +- Move arch dependent examples to _libdir, clean rpmlintrc + +------------------------------------------------------------------- +Thu Sep 19 16:37:47 UTC 2019 - Stefan Brüns + +- Use pkgconfig(py3cairo) to specify pycairo dependency, package got + renamed between Leap 15.x and TW, and pkgconfig(py3cairo) fits both. +- Add log4cpp-devel to -devel Requires, always required by gr-runtime. + +------------------------------------------------------------------- +Wed Sep 18 20:16:50 UTC 2019 - Martin Hauke + +- Use correct shared library name + +------------------------------------------------------------------- +Thu Sep 12 16:49:33 UTC 2019 - Stefan Brüns + +- Update to version 3.8.0.0: + * Changed on Project Scope + + C++11 + + merged the wholeness of the next branch + + Dependency version bumps: CMake, GCC, MSVC, Swig, Boost + + New dependencies: MPIR/GMP, Qt5, gsm, codec2 + + Removed dependencies: libusb, Qt4, CppUnit + + Python: Python 2 & Python 3 compatible. 3.8 will be the last Py2k-compatible + + release series + + gengen was replaced by templates (if you don't know gengen, don't do any + + research; save yourself that sorrow) + + Modern CMake (as far as feasible at this point) + + VOLK version updated to v2.0.0 + + .clang-format file now dictates coding style + + clang-format'ed the whole tree. + + installed CMake files now tell about configuration + * gnuradio-runtime + + reworked fractional tag time handling, especially in the context of resamplers + * GRC + + C++ generation as option + + YAML instead of XML + + removed blks2 + + much better canvas tooling + + consistent gobject usage + + ROUNDED ARROWS + * gr-qtgui + + moving from Qt4 to Qt5 + * gr-utils + + gr_modtool now vastly improved + * gr-vocoder + + improved versatility + + removed in-tree libgsm, libcodec2, use system-wide libs + * Removed + + Project Scope: Modules gr-comedi, gr-fcd and gr-wxgui are gone + + gr-comedi: nobody could remember who used this, or for what. It has seen 0 + active code contributions in the 3.7 lifecycle + + gr-digital: python-based packet_encoder and related tools: Bugs that were + sporadic and never fixed, so after long deprecation, we're removing it + + gr-fcd: since it's currently untestable by the CI, it's being removed, as + there was no code contributions. Generally, we strive to include all + batteries with GNU Radio. Re-integration within a more general SDR interface + would be desirable. + + gr-utils: removed PyQwt (dead) based tools + + gr-wxgui: Unmaintained, breaks on increasingly many systems, always was slower than + Qtgui. We've been starting to tell people to migrate to Qt since at + least 2015. Now, we're finally removing it. +- Packaging changes: + * Use system libvolk, now packaged separately + * Cleanup spec file, mostly Qt4 and WxWidgets related + * Use Python3 + * Patches: + - rebased missing_libraries.patch + - Drop obsolete qt5-maint-0001-CMake-Update-required-minimum-version-to-2.8.12.patch + - Drop obsolete qt5-maint-0002-CMake-FindQwt-Find-the-Qt5-version-of-QWT-instead-of.patch + - Drop obsolete qt5-maint-0003-gr-qtgui-update-for-Qt5.patch + - Drop obsolete qt5-maint-0004-grc-Generate-Python-scripts-that-use-PyQt5.patch + - Drop obsolete qt5-maint-0005-gr-qtgui-Add-a-workaround-for-an-upstream-bug-of-uic.patch + - Drop obsolete qt5-maint-0006-qtgui-fixed-examples-for-Qt5-compatibility.patch + - Drop obsolete qt5-maint-0007-qtgui-Fixes-for-edit_box_msg-to-work-with-QT5.patch + - Drop obsolete qt5-maint-0008-gr-qtgui-Allow-build-with-Qt4-or-Qt5-default.patch + - Drop obsolete qt5-maint-0009-gr-qtgui-Fix-PyQt-4-5-include-in-XMLs-for-GRC.patch + - Drop obsolete qt5-maint-0010-gr-qtgui-Fix-range.py-to-work-with-both-Qt4-and-Qt5.patch + - Drop obsolete qt5-maint-0011-gr-qtgui-Re-introduce-some-Qt4-specific-code.patch + - Drop obsolete qt5-maint-0012-grc-Fix-generation-of-Python-code-for-Qt4-and-Qt5.patch + - Drop obsolete qt5-maint-0013-grc-replace-templated-xml-files-with-search-and-repl.patch + - Drop obsolete qt5-maint-0014-qtgui-replace-templated-xml-files-with-search-and-re.patch + - Drop obsolete qt5-maint-0017-qtgui-fix-stylesheet-for-qt5.patch + - Drop obsolete qt5-maint-0019-qtgui-fixed-apps-for-Qt5-compatibility.patch + - Drop obsolete qt5-maint-0021-gnuradio-runtime-ctrlport-qt5.patch + - Drop obsolete qt5-maint-0022-gr-uhd-qt5.patch + - Drop obsolete qt5-maint-0023-gr-qtgui-util.patch + - Drop obsolete qt5-maint-0024-gr-qtgui-restoreGeometry.patch + - Drop obsolete 0001-Add-the-include-path-used-by-the-openSUSE-package.patch + +------------------------------------------------------------------- +Mon Apr 29 11:35:24 UTC 2019 - Christophe Giboudeaux + +- Add some missing optional dependencies: libgsm and codec2. + +------------------------------------------------------------------- +Mon Apr 29 10:37:15 UTC 2019 - Christophe Giboudeaux + +- Add upstream patches to build gnuradio using Qt5 on openSUSE > 1500: + - qt5-maint-0001-CMake-Update-required-minimum-version-to-2.8.12.patch + - qt5-maint-0002-CMake-FindQwt-Find-the-Qt5-version-of-QWT-instead-of.patch + - qt5-maint-0003-gr-qtgui-update-for-Qt5.patch + - qt5-maint-0004-grc-Generate-Python-scripts-that-use-PyQt5.patch + - qt5-maint-0005-gr-qtgui-Add-a-workaround-for-an-upstream-bug-of-uic.patch + - qt5-maint-0006-qtgui-fixed-examples-for-Qt5-compatibility.patch + - qt5-maint-0007-qtgui-Fixes-for-edit_box_msg-to-work-with-QT5.patch + - qt5-maint-0008-gr-qtgui-Allow-build-with-Qt4-or-Qt5-default.patch + - qt5-maint-0009-gr-qtgui-Fix-PyQt-4-5-include-in-XMLs-for-GRC.patch + - qt5-maint-0010-gr-qtgui-Fix-range.py-to-work-with-both-Qt4-and-Qt5.patch + - qt5-maint-0011-gr-qtgui-Re-introduce-some-Qt4-specific-code.patch + - qt5-maint-0012-grc-Fix-generation-of-Python-code-for-Qt4-and-Qt5.patch + - qt5-maint-0013-grc-replace-templated-xml-files-with-search-and-repl.patch + - qt5-maint-0014-qtgui-replace-templated-xml-files-with-search-and-re.patch + - qt5-maint-0017-qtgui-fix-stylesheet-for-qt5.patch + - qt5-maint-0019-qtgui-fixed-apps-for-Qt5-compatibility.patch + - qt5-maint-0021-gnuradio-runtime-ctrlport-qt5.patch + - qt5-maint-0022-gr-uhd-qt5.patch + - qt5-maint-0023-gr-qtgui-util.patch + - qt5-maint-0024-gr-qtgui-restoreGeometry.patch +- Add 0001-Add-the-include-path-used-by-the-openSUSE-package.patch + for the Qt5 build. + +------------------------------------------------------------------- +Mon Apr 22 15:27:32 UTC 2019 - Wojciech Kazubski + +- Update to version 3.7.13.5 + * Project Scope - fixed PMT: in multiple places, we triggered undef. + behaviour by accessing the first element of potentially empty + uvectors + * gr-audio - fixed Windows audio for higher output multiples broken + * gr-blocks - fixed QA: udp_source_sink flakiness + * gr-dtv - fixed sveral broken optimizations + - fixed 64-APSK parti ally wrong ordering + - fixed OOB access in interleaver + - fixed uncovered worst case LDPC LUT generation + * gr-qtgui - fixed compiler Warnings + * gr-fec - fixed polar_encoder/_common: Memory leak + * gr-uhd - fixed GRC bindings: DC filter was could not be disabled + with IQ imbalance correction disabled + * gnuradio-runtime - ctrlport: added int64 for rpcbasic_inserter + * GRC - Removed generation time from generated python code + +------------------------------------------------------------------- +Sun Mar 24 07:35:00 UTC 2019 - Wojciech Kazubski + +- Fix building with Boost 1.69 + +------------------------------------------------------------------- +Tue Feb 5 17:26:14 UTC 2019 - Guillaume GARDET + +- Update _constraints to include minimal disk size + +------------------------------------------------------------------- +Thu Aug 30 18:35:50 UTC 2018 - guillaume.gardet@opensuse.org + +- Disable explictly neon on armv6 to fix build + +------------------------------------------------------------------- +Thu Aug 30 14:08:51 UTC 2018 - Guillaume GARDET + +- Add _constraints for ARM to speed-up build + +------------------------------------------------------------------- +Wed Jul 18 16:41:20 UTC 2018 - wk@ire.pw.edu.pl + +- Fixed missing space in specfile + +------------------------------------------------------------------- +Wed Jul 18 06:55:27 UTC 2018 - mpluskal@suse.com + +- Update source urls +- Use gpg to verify sources +- Modernise spec file with spec-cleaner + +------------------------------------------------------------------- +Tue Jul 17 07:41:57 UTC 2018 - wk@ire.pw.edu.pl + +- Update to version 3.7.13.4 + * Fix Boost 1.67 linking issue + * Logging - fixed issues where messages weren't properly written + to stdout/stderr due to incorrect strings + * gr-analog - `fmdet_cf`'s derivative coefficients were wrong. + * gr-blocks - `skiphead` used to incorrectly handle tags, + now properly shifts + * gr-digital - `qa_packet_format`: Unit test used to potentially + lock up due to incorrect conditionals + - `clock_recovery_cc`, `crc32_bb`: Accessing the `[0]` element + of an empty vector is UB, even if you don't use the result + afterwards. + * gr-fec - `polar_encoder`/`_common`: Fixed multiple out-of-bound + accesses due to insufficient vector length checks + * gr-filter - `fft_filter`, `filter_delay`: Accessing the `[0]` + element of an empty vector is UB, even if you don't use the + result afterwards. +- Patch missing_libraries.patch modified + +------------------------------------------------------------------- +Fri Jun 15 08:50:15 UTC 2018 - mardnh@gmx.de + +- Update to version 3.7.13.3 + * For non-C++11 compilers, the new cstdint include doesn't work + out; conditionalized it. +- Remove patch: + * boost_161.patch (not longer needed) + +------------------------------------------------------------------- +Fri Jun 1 22:10:16 UTC 2018 - mardnh@gmx.de + +- Update to version 3.7.13.2 + Fixed: + * boost::posix_time::[milli]second takes integer numbers, and we + now at least cast the floats to integers, as Boost 1.67 forced + us to realize we're (incorrectly) using floating point her + GRC: + * Fixed GRC bug which broke WX and Qt (by altering the template + code), in multiple (less than awesome) steps + gr-blocks: + * float_array_to_int: int32 limits were wrongly hardcoded. + * Fixed the undefined behaviour happening in float_to_complex when + accessing the second input_items element in the single-input case + +------------------------------------------------------------------- +Tue May 29 09:56:10 UTC 2018 - adam.majer@suse.de + +- boost_161.patch: fix compilation with Boost 1.67 (bsc#1089806) +- missing_library.patch: hack to fix linking with required + libraries. +- use memory-constraints package instead of _constraints + +------------------------------------------------------------------- +Mon Apr 2 22:28:38 UTC 2018 - mardnh@gmx.de + +- Update to version 3.7.12.0 + * see /usr/share/doc/packages/gnuradio/CHANGELOG.md +- Remove Patches (not longer needed): + * CMake-set-C++-standard-to-c++11-and-C-standard-to-C99.diff + * 0001-gr-fec-switch-possible-C-11-code-from-constexpr-to-j.patch +- Update URLs + +------------------------------------------------------------------- +Tue Dec 12 15:52:26 UTC 2017 - mpluskal@suse.com + +- Ignore openssl-1_0_0 for build as temporary workaround for + Factory unresolvable state + +------------------------------------------------------------------- +Mon May 22 20:27:27 UTC 2017 - mardnh@gmx.de + +- Add patches to fix builds on Factory + + 0001-gr-fec-switch-possible-C-11-code-from-constexpr-to-j.patch + + CMake-set-C++-standard-to-c++11-and-C-standard-to-C99.diff + +------------------------------------------------------------------- +Wed Mar 8 00:49:30 UTC 2017 - wk@ire.pw.edu.pl + +- update to version 3.7.11 + +------------------------------------------------------------------- +Mon Mar 6 12:57:37 UTC 2017 - dmitry_r@opensuse.org + +- Fix README files installation + +------------------------------------------------------------------- +Thu Oct 20 19:35:33 UTC 2016 - jengelh@inai.de + +- Rename soname macro to sover because it did not reflect the + SONAME. +- RPM group reclassification + +------------------------------------------------------------------- +Sat Sep 3 19:50:42 UTC 2016 - wk@ire.pw.edu.pl + +- update to version 3.7.10.1 + +------------------------------------------------------------------- +Sun Aug 7 19:47:23 UTC 2016 - wk@ire.pw.edu.pl + +- update to version 3.7.10 +- patch gnuradio-3.7.9.2-gcc6.patch removed + * breaks build on Leap 42.2 and Tumbleweed + +------------------------------------------------------------------- +Mon Jul 25 13:39:02 UTC 2016 - wk@ire.pw.edu.pl + +- update to version 3.7.9.3 + +------------------------------------------------------------------- +Thu Jun 23 10:43:20 UTC 2016 - i@marguerite.su + +- add patch: gnuradio-3.7.9.2-gcc6.patch + * fix 'constexpr' needed for in-class initialization of static + data member of non-integral type + +------------------------------------------------------------------- +Mon Jun 20 07:30:54 UTC 2016 - dmitry_r@opensuse.org + +- Use wxPython 3.0 for Tumbleweed + +------------------------------------------------------------------- +Fri Apr 29 09:24:43 UTC 2016 - wk@ire.pw.edu.pl + +- update to version 3.7.9.2 +- remove volk-cmake-3.5.patch not needed (applied upstream) + +------------------------------------------------------------------- +Tue Mar 22 11:40:28 UTC 2016 - dmitry_r@opensuse.org + +- Fix build with cmake 3.5 + * volk-cmake-3.5.patch + +------------------------------------------------------------------- +Sat Feb 13 22:41:52 UTC 2016 - wk@ire.pw.edu.pl + +- update to version 3.7.9.1 + +------------------------------------------------------------------- +Thu Dec 31 09:40:42 UTC 2015 - wk@ire.pw.edu.pl + +- update to version 3.7.9 + +------------------------------------------------------------------- +Sat Oct 31 21:35:29 UTC 2015 - wk@ire.pw.edu.pl + +- update to version 3.7.8.1 + +------------------------------------------------------------------- +Sun Aug 16 09:47:05 UTC 2015 - wk@ire.pw.edu.pl + +- update to version 3.7.8 + +------------------------------------------------------------------- +Sat May 16 06:16:36 UTC 2015 - wk@ire.pw.edu.pl + +- update to version 3.7.7.1 + +------------------------------------------------------------------- +Mon Dec 8 08:03:53 UTC 2014 - stefan.bruens@rwth-aachen.de + +- Return options.xml to main package [bnc#908744] + +------------------------------------------------------------------- +Thu Dec 4 12:31:11 UTC 2014 - dmitry_r@opensuse.org + +- Set libgnuradio0 as obsolete + +------------------------------------------------------------------- +Fri Nov 28 13:00:16 UTC 2014 - stefan.bruens@rwth-aachen.de + +- split out libvolk library package + +------------------------------------------------------------------- +Tue Nov 25 23:20:41 UTC 2014 - stefan.bruens@rwth-aachen.de + +- split out wxWidgets dependent parts + The wxWidgets graphics system will be deprecated with GR 3.8, + and pulls in a lot of dependencies +- adjust soname to adhere to library packaging policy + +------------------------------------------------------------------- +Wed Nov 12 10:56:37 UTC 2014 - dmitry_r@opensuse.org + +- Use -j2 for make +- Delete source url for conversion script + +------------------------------------------------------------------- +Wed Oct 22 23:25:32 UTC 2014 - wk@ire.pw.edu.pl + +- update to version 3.7.5 +- bugfix release + +------------------------------------------------------------------- +Fri Sep 19 10:26:19 UTC 2014 - wk@ire.pw.edu.pl + +- update to version 3.7.5 +- patch gnuradio-implicit-fortify-decl.patch removed (applied upstream) + +------------------------------------------------------------------- +Tue Sep 9 08:06:26 UTC 2014 - coolo@suse.com + +- disable parallal build - it's too unreliable (due to memory pressure + on OBS workers) + +------------------------------------------------------------------- +Thu Aug 28 14:20:37 UTC 2014 - dmitry_r@opensuse.org + +- Update grc_to_37.sh script to version 0.2 + +------------------------------------------------------------------- +Thu Aug 28 08:04:36 UTC 2014 - opensuse@dstoecker.de + +- add grc_to_37.sh script to package + +------------------------------------------------------------------- +Mon Aug 25 21:00:13 UTC 2014 - dmitry_r@opensuse.org + +- Add missed texlive dependencies +- Fix linking +- Re-enable UHD support + +------------------------------------------------------------------- +Wed Aug 20 09:58:03 UTC 2014 - dmitry_r@opensuse.org + +- Update to version 3.7.4 +- Remove OBS source service +- Use %cmake macros +- Enable parallel build +- Remove buildtime from documentation +- Fix implicit definitions of special functions + * gnuradio-implicit-fortify-decl.patch +- Disable UHD support +- Add _constraints to set required memory to 4Gb +- Use FFTW3 with multithreading support + +------------------------------------------------------------------- +Sun Apr 6 09:02:30 UTC 2014 - wk@ire.pw.edu.pl + +- update to version 3.7.3 + +------------------------------------------------------------------- +Thu Dec 12 11:12:29 UTC 2013 - dl8fcl@darc.de + +- update to version 3.7.2.1 + bug-fix release with no new features + +------------------------------------------------------------------- +Sun Nov 10 21:43:26 UTC 2013 - dl8fcl@darc.de + +- update to version 3.7.2 + use qwt6 for all openSUSE versions + +------------------------------------------------------------------- +Sat Sep 21 15:04:28 UTC 2013 - dl8fcl@darc.de + +- use qwt5 for openSUSE_13.1 + +------------------------------------------------------------------- +Sat Aug 31 22:37:26 UTC 2013 - dl8fcl@darc.de + +- update to version 3.7.1 + shared libraries are in a seperated rpm + changelog is in a seperated file + +------------------------------------------------------------------- +Sat Jul 6 00:00:00 UTC 2013 - wk@ire.pw.edu.pl + +- updated to release 3.6.5.1 + +------------------------------------------------------------------- +Thu May 30 00:00:00 UTC 2013 - wk@ire.pw.edu.pl + +- updated to release 3.6.5 + +------------------------------------------------------------------- +Sat Mar 29 00:00:00 UTC 2013 - wk@ire.pw.edu.pl + +- updated to release 3.6.4.1 + +------------------------------------------------------------------- +Sat Mar 16 00:00:00 UTC 2013 - wk@ire.pw.edu.pl + +- updated to release 3.6.4 + +------------------------------------------------------------------- +Sat Mar 2 00:00:00 UTC 2013 - wk@ire.pw.edu.pl + +- updated to release 3.6.3.1 + +------------------------------------------------------------------- +Sun Jan 13 00:00:00 UTC 2013 - wk@ire.pw.edu.pl + +- updated to release 3.6.3 (version number patched in source) + +------------------------------------------------------------------- +Thu Nov 1 00:00:00 UTC 2012 - wk@ire.pw.edu.pl + +- use Qwt6 if possible + +------------------------------------------------------------------- +Tue Oct 30 00:00:00 UTC 2012 - wk@ire.pw.edu.pl + +- heavily modified for actual release +- some parts taken from gnuradio package by surligas and from Fedora package + +------------------------------------------------------------------- +Sat Jun 7 00:00:00 UTC 2008 - dl9pf@gmx.de + +- Imported into Build Service diff --git a/gnuradio.spec b/gnuradio.spec new file mode 100644 index 0000000..7c47e64 --- /dev/null +++ b/gnuradio.spec @@ -0,0 +1,276 @@ +# +# spec file for package gnuradio +# +# Copyright (c) 2024 SUSE LLC +# +# All modifications and additions to the file contributed by third parties +# remain the property of their copyright owners, unless otherwise agreed +# upon. The license for this file, and modifications and additions to the +# file, is the same license as for the pristine package itself (unless the +# license for the pristine package is not an Open Source License, in which +# case the license is the MIT License). An "Open Source License" is a +# license that conforms to the Open Source Definition (Version 1.9) +# published by the Open Source Initiative. + +# Please submit bugfixes or comments via https://bugs.opensuse.org/ +# + + +%define sover 3_10_11 +%bcond_without docs +Name: gnuradio +Version: 3.10.11.0 +Release: 0 +Summary: GNU software radio +License: GPL-3.0-or-later +Group: Productivity/Hamradio/Other +URL: https://gnuradio.org +Source0: https://github.com/gnuradio/gnuradio/archive/refs/tags/v%{version}.tar.gz#/%{name}-%{version}.tar.gz +# http://www.nathanwest.us/grc_to_37.sh +Source4: grc_to_37.sh +Source99: %{name}-rpmlintrc +Patch0: missing_library.patch +Patch1: gnuradio-not-install-freedesktop-files.patch +BuildRequires: alsa-devel +BuildRequires: cmake >= 3.16.3 +BuildRequires: codec2-devel +BuildRequires: cppunit-devel +BuildRequires: cppzmq-devel +BuildRequires: fdupes +BuildRequires: fftw3-threads-devel +BuildRequires: gcc-c++ >= 9.3.0 +BuildRequires: gmp-devel +BuildRequires: gobject-introspection +BuildRequires: gsl-devel +BuildRequires: libSDL-devel +BuildRequires: libad9361-iio-devel +BuildRequires: libboost_atomic-devel >= 1.69 +BuildRequires: libboost_filesystem-devel >= 1.69 +BuildRequires: libboost_system-devel >= 1.69 +BuildRequires: libgsm-devel +BuildRequires: libiio-devel +BuildRequires: libjack-devel +BuildRequires: libsndfile-devel +BuildRequires: libthrift-devel +BuildRequires: libusb-1_0-devel +BuildRequires: libxml2-devel +BuildRequires: memory-constraints +BuildRequires: ninja +BuildRequires: orc +BuildRequires: pkgconfig +BuildRequires: portaudio-devel +BuildRequires: python-rpm-macros +BuildRequires: python3-Sphinx +BuildRequires: python3-click +BuildRequires: python3-click-plugins +BuildRequires: python3-devel >= 3.6.5 +BuildRequires: python3-gobject +BuildRequires: python3-gobject-cairo +BuildRequires: python3-jsonschema +BuildRequires: python3-mako >= 1.0.7 +BuildRequires: python3-numpy-devel >= 1.17.4 +BuildRequires: python3-pyaml >= 3.11 +BuildRequires: python3-pybind11-devel >= 2.4.3 +BuildRequires: python3-pycairo +BuildRequires: python3-qt5-devel +BuildRequires: python3-thrift +BuildRequires: qwt6-qt5-devel +BuildRequires: soapy-sdr-devel +BuildRequires: spdlog-devel +BuildRequires: thrift +BuildRequires: uhd-devel +BuildRequires: update-desktop-files +BuildRequires: volk-devel >= 2.4.1 +BuildRequires: typelib(Gtk) = 3.0 +BuildRequires: typelib(PangoCairo) = 1.0 +BuildRequires: typelib(cairo) = 1.0 +# gr_soapy dependencies +Requires: python3-SoapySDR +# gnuradio-companion dependencies +Requires: python3-cairo +Requires: python3-QDarkStyle +Requires: python3-QtPy +# gr_modtool dependencies +Requires: python3-click +Requires: python3-click-plugins +Requires: python3-gobject-Gdk +Requires: python3-jsonschema +Requires: python3-mako >= 1.1.0 +Requires: python3-numpy >= 1.17.4 +Requires: python3-pyaml >= 3.11 +Requires: python3-pyqtgraph +# gr_network dependencies +Requires: python3-pyzmq +Requires: python3-qt5 +# gr_filter dependencies +Requires: python3-scipy +Requires: typelib(Gtk) = 3.0 +%if %{with docs} +BuildRequires: doxygen +BuildRequires: mathjax +%endif + +%description +GNU Radio is a collection of software that when combined with minimal +hardware, allows the construction of radios where the actual waveforms +transmitted and received are defined by software. What this means is +that it turns the digital modulation schemes used in today's high +performance wireless devices into software problems. + +%package -n libgnuradio-%{sover} +Summary: Libraries for GNU Radio +Group: System/Libraries + +%description -n libgnuradio-%{sover} +GNU Radio is a collection of software that when combined with minimal +hardware, allows the construction of radios where the actual waveforms +transmitted and received are defined by software. What this means is +that it turns the digital modulation schemes used in today's high +performance wireless devices into software problems. + +This package contains the libraries for GNU Radio. + +%package devel +Summary: Deveopment files for GNU Radio +Group: Development/Libraries/C and C++ +Requires: %{name} = %{version} +Requires: gmp-devel +Requires: spdlog-devel + +%description devel +GNU Radio is a collection of software that when combined with minimal +hardware, allows the construction of radios where the actual waveforms +transmitted and received are defined by software. What this means is +that it turns the digital modulation schemes used in today's high +performance wireless devices into software problems. + +This package contains libraries and header files for developing +applications that use GNU Radio. + +%package doc +Summary: GNU Radio documentation +Group: Documentation/HTML +Requires: %{name} = %{version} +BuildArch: noarch + +%description doc +GNU Radio is a collection of software that when combined with minimal +hardware, allows the construction of radios where the actual waveforms +transmitted and received are defined by software. What this means is +that it turns the digital modulation schemes used in today's high +performance wireless devices into software problems. + +This package contains documentation for GNU Radio. + +%package examples +Summary: GNU Radio examples +Group: Productivity/Hamradio/Other +Requires: %{name} = %{version} + +%description examples +GNU Radio is a collection of software that when combined with minimal +hardware, allows the construction of radios where the actual waveforms +transmitted and received are defined by software. What this means is +that it turns the digital modulation schemes used in today's high +performance wireless devices into software problems. + +This package contains some examples of using GNU Radio. + +%prep +%setup -q +%patch -P 0 -p1 +%patch -P 1 -p1 -R + +# protect the template files from %%cmake macro magic / mangling +find gr-utils/modtool/templates/gr-newmod -name CMakeLists.txt -ls -exec mv '{}' '{}.tmpl' \; + +%build +%limit_build -m 1500 + +%define __builder ninja +%cmake \ + -DENABLE_GRC=ON \ +%ifarch armv6l armv6hl + -Dhave_mfpu_neon=0 \ +%endif + -DGR_PYTHON_DIR=%{python3_sitearch} \ + -DENABLE_INTERNAL_VOLK:BOOL=OFF +%cmake_build + +%install +# move the template files back +find gr-utils/modtool/templates/gr-newmod -name CMakeLists.txt.tmpl -execdir mv '{}' 'CMakeLists.txt' \; + +%cmake_install + +install -d %{buildroot}%{_docdir}/%{name} +mv %{buildroot}/%{_datadir}/doc/%{name}-*/* %{buildroot}%{_docdir}/%{name}/ + +%suse_update_desktop_file -r %{buildroot}%{_datadir}/applications/gnuradio-grc.desktop Network HamRadio + +install -Dpm 0755 %{SOURCE4} %{buildroot}/%{_bindir} + +# Compiled examples are installed as "data", but are arch dependent +install -dm 0755 %{buildroot}%{_libdir}/gnuradio +mv %{buildroot}%{_datadir}/gnuradio/examples %{buildroot}%{_libdir}/gnuradio/ + +# remove duplicate icons (just keep hicolor) +rm -rf %{buildroot}%{_datadir}/%{name}/grc/freedesktop +rm -rf %{buildroot}%{_datadir}/icons/gnome + +%fdupes %{buildroot}%{_docdir} +%fdupes %{buildroot}%{_includedir} +%fdupes %{buildroot}%{_libdir} + +%post -n libgnuradio-%{sover} -p /sbin/ldconfig +%postun -n libgnuradio-%{sover} -p /sbin/ldconfig + +%files +%license COPYING +%{_bindir}/* +%dir %{_datadir}/gnuradio +%{_datadir}/gnuradio/grc/ +%{_datadir}/gnuradio/modtool/ +%{_datadir}/gnuradio/themes/ +%{_datadir}/gnuradio/fec/ +%{_datadir}/gnuradio/clang-format.conf +%{_datadir}/gnuradio/.cmake-format.py +%{_datadir}/icons/hicolor/*/apps/gnuradio-grc.png +%{_datadir}/applications/gnuradio-grc.desktop +%{_datadir}/mime/packages/gnuradio-grc.xml +%{_datadir}/metainfo/org.gnuradio.grc.metainfo.xml +%{python3_sitearch}/* +%dir %{_sysconfdir}/gnuradio +%dir %{_sysconfdir}/gnuradio/conf.d +%config(noreplace) %{_sysconfdir}/gnuradio/conf.d/*.conf +%{_mandir}/man1/*.1%{?ext_man} +%dir %{_docdir}/%{name}/ +%{_docdir}/%{name}/README* +%{_docdir}/%{name}/CHANGELOG* +%{_docdir}/%{name}/CONTRIBUTING.md +%dir %{_docdir}/%{name}/config/ +%{_docdir}/%{name}/config/* +# doc package +%exclude %{_docdir}/%{name}/html/ +%exclude %{_docdir}/%{name}/xml/ + +%files -n libgnuradio-%{sover} +%{_libdir}/libgnuradio*.so.* + +%files devel +%{_includedir}/%{name}/ +%{_includedir}/pmt/ +%{_libdir}/lib*.so +%{_libdir}/pkgconfig/*.pc +%{_libdir}/cmake/gnuradio/ + +%files doc +%dir %{_docdir}/%{name} +%{_docdir}/%{name}/html/ +%{_docdir}/%{name}/xml/ + +%files examples +%dir %{_libdir}/gnuradio +%{_libdir}/gnuradio/examples/ + +%changelog diff --git a/grc_to_37.sh b/grc_to_37.sh new file mode 100644 index 0000000..960acc9 --- /dev/null +++ b/grc_to_37.sh @@ -0,0 +1,156 @@ +#!/bin/bash +# Version 0.2 +# run ./grc_to_37 .grc +# this will create a backup copy and attempt to convert the api calls to 3.7 +GRCFILE=$1 +cp $GRCFILE $GRCFILE.pre3.7upgrade_backup # I refuse to take responsibility for breaking your flowgraphs +# set up a list of partial regexps to change modules +list_of_block_changes=( +"gr_peak_detector2_fb/blocks_peak_detector2_fb" +"gr_short_to_float/blocks_short_to_float" +"gr_diff_phasor_cc/digital_diff_phasor_cc" +"blks2_logpwrfft_x/logpwrfft_x" +"gr_rms_xx/blocks_rms_xx" +"gr_probe_density_b/digital_probe_density_b" +"gr_mute_xx/blocks_mute_xx" +"gr_agc_xx/analog_agc_xx" +"gr_ctcss_squelch_ff/analog_ctcss_squelch_ff" +"gr_diff_encoder_bb/digital_diff_encoder_bb" +"gr_pll_refout_cc/analog_pll_refout_cc" +"gr_uchar_to_float/blocks_uchar_to_float" +"gr_interp_fir_filter_xxx/interp_fir_filter_xxx" +"gr_udp_sink/blocks_udp_sink" +"gr_and_xx/blocks_and_xx" +"gr_keep_one_in_n/blocks_keep_one_in_n" +"gr_vector_sink_x/blocks_vector_sink_x" +"gr_freq_xlating_fir_filter_xxx/freq_xlating_fir_filter_xxx" +"gr_float_to_int/blocks_float_to_int" +"gr_file_source/blocks_file_source" +"gr_float_to_short/blocks_float_to_short" +"gr_fft_vxx/fft_vxx" +"gr_quadrature_demod_cf/analog_quadrature_demod_cf" +"gr_file_sink/blocks_file_sink" +"gr_pfb_clock_sync_xxx/digital_pfb_clock_sync_xxx" +"gr_multiply_const_vxx/blocks_multiply_const_vxx" +"gr_peak_detector_xb/blocks_peak_detector_xb" +"gr_noise_source_x/analog_noise_source_x" +"gr_simple_framer/digital_simple_framer" +"gr_delay/blocks_delay" +"gr_pfb_synthesizer_ccf/pfb_synthesizer_ccf" +"gr_short_to_char/blocks_short_to_char" +"gr_chunks_to_symbols_xx/digital_chunks_to_symbols_xx" +"gr_interleaved_short_to_complex/blocks_interleaved_short_to_complex" +"gr_frequency_modulator_fc/analog_frequency_modulator_fc" +"gr_xor_xx/blocks_xor_xx" +"gr_dpll_bb/analog_dpll_bb" +"gr_threshold_ff/blocks_threshold_ff" +"gr_nop/blocks_nop" +"gr_unpack_k_bits_bb/blocks_unpack_k_bits_bb" +"gr_max_xx/blocks_max_xx" +"gr_int_to_float/blocks_int_to_float" +"gr_stream_to_streams/blocks_stream_to_streams" +"blks2_wfm_rcv/analog_wfm_rcv" +"gr_fractional_interpolator_xx/fractional_interpolator_xx" +"gr_conjugate_cc/blocks_conjugate_cc" +"blks2_fm_demod_cf/analog_fm_demod_cf" +"gr_fir_filter_xxx/fir_filter_xxx" +"gr_null_source/blocks_null_source" +"gr_complex_to_arg/blocks_complex_to_arg" +"gr_pwr_squelch_xx/analog_pwr_squelch_xx" +"gr_descrambler_bb/digital_descrambler_bb" +"gr_copy/blocks_copy" +"gr_complex_to_mag/blocks_complex_to_mag" +"gr_throttle/blocks_throttle" +"gr_additive_scrambler_bb/digital_additive_scrambler_bb" +"gr_wavfile_sink/blocks_wavfile_sink" +"gr_vector_source_x/blocks_vector_source_x" +"gr_moving_average_xx/blocks_moving_average_xx" +"gr_char_to_short/blocks_char_to_short" +"blks2_fm_deemph/analog_fm_deemph" +"gr_pll_freqdet_cf/analog_pll_freqdet_cf" +"gr_or_xx/blocks_or_xx" +"blks2_fm_preemph/analog_fm_preemph" +"blks2_wfm_tx/analog_wfm_tx" +"gr_stream_to_vector/blocks_stream_to_vector" +"gr_glfsr_source_x/digital_glfsr_source_x" +"gr_map_bb/digital_map_bb" +"gr_sig_source_x/analog_sig_source_x" +"gr_transcendental/blocks_transcendental" +"gr_skiphead/blocks_skiphead" +"gr_hilbert_fc/hilbert_fc" +"blks2_nbfm_rx/analog_nbfm_rx" +"random_source_x/analog_random_source_x" +"gr_complex_to_real/blocks_complex_to_real" +"gr_null_sink/blocks_null_sink" +"gr_float_to_complex/blocks_float_to_complex" +"gr_multiply_xx/blocks_multiply_xx" +"gr_simple_correlator/digital_simple_correlator" +"gr_sample_and_hold_xx/blocks_sample_and_hold_xx" +"blks2_pfb_channelizer_ccf/pfb_channelizer_ccf" +"gr_goertzel_fc/goertzel_fc" +"gr_complex_to_mag_squared/blocks_complex_to_mag_squared" +"gr_packed_to_unpacked_xx/blocks_packed_to_unpacked_xx" +"blks2_standard_squelch/analog_standard_squelch" +"blks2_am_demod_cf/analog_am_demod_cf" +"gr_and_const_xx/blocks_and_const_xx" +"gr_unpacked_to_packed_xx/blocks_unpacked_to_packed_xx" +"gr_probe_avg_mag_sqrd_x/analog_probe_avg_mag_sqrd_x" +"gr_channel_model/channels_channel_model" +"gr_divide_xx/blocks_divide_xx" +"gr_simple_squelch_cc/analog_simple_squelch_cc" +"gr_message_source/blocks_message_source" +"gr_sub_xx/blocks_sub_xx" +"gr_stream_mux/blocks_stream_mux" +"gr_burst_tagger/blocks_burst_tagger" +"gr_float_to_uchar/blocks_float_to_uchar" +"gr_scrambler_bb/digital_scrambler_bb" +"gr_streams_to_vector/blocks_streams_to_vector" +"gr_add_xx/blocks_add_xx" +"gr_feedforward_agc_cc/analog_feedforward_agc_cc" +"gr_iir_filter_ffd/iir_filter_ffd" +"blks2_stream_to_vector_decimator/blocks_stream_to_vector_decimator" +"gr_pn_correlator_cc/digital_pn_correlator_cc" +"gr_streams_to_stream/blocks_streams_to_stream" +"gr_rational_resampler_base_xxx/rational_resampler_base_xxx" +"gr_vector_to_streams/blocks_vector_to_streams" +"gr_interleave/blocks_interleave" +"gr_add_const_vxx/blocks_add_const_vxx" +"gr_message_sink/blocks_message_sink" +"gr_complex_to_imag/blocks_complex_to_imag" +"gr_vco_f/blocks_vco_f" +"gr_deinterleave/blocks_deinterleave" +"gr_argmax_xx/blocks_argmax_xx" +"gr_not_xx/blocks_not_xx" +"gr_udp_source/blocks_udp_source" +"gr_nlog10_ff/blocks_nlog10_ff" +"gr_diff_decoder_bb/digital_diff_decoder_bb" +"gr_phase_modulator_fc/analog_phase_modulator_fc" +"gr_complex_to_interleaved_short/blocks_complex_to_interleaved_short" +"gr_float_to_char/blocks_float_to_char" +"gr_head/blocks_head" +"gr_fft_filter_xxx/fft_filter_xxx" +"gr_cpfsk_bc/analog_cpfsk_bc" +"gr_vector_to_stream/blocks_vector_to_stream" +"gr_agc2_xx/analog_agc2_xx" +"gr_pll_carriertracking_cc/analog_pll_carriertracking_cc" +"gr_repeat/blocks_repeat" +"gr_filter_delay_fc/filter_delay_fc" +"blks2_rational_resampler_xxx/rational_resampler_xxx" +"gr_char_to_float/blocks_char_to_float" +"gr_integrate_xx/blocks_integrate_xx" +"gr_wavfile_source/blocks_wavfile_source" +"gr_complex_to_float/blocks_complex_to_float" +"gr_single_pole_iir_filter_xx/single_pole_iir_filter_xx" +"blks2_nbfm_tx/analog_nbfm_tx" +"blks2_wfm_rcv_pll/analog_wfm_rcv_pll" +"const_source_x/analog_const_source_x" +"blks2_pfb_arb_resampler_ccf/pfb_arb_resampler_xxx" +) + +for block in "${list_of_block_changes[@]}" +do + sed --in-place "/