Accepting request 951729 from home:wkazubski:test:science

Update GNU Radio to 3.9 branch

OBS-URL: https://build.opensuse.org/request/show/951729
OBS-URL: https://build.opensuse.org/package/show/hardware:sdr/gnuradio?expand=0&rev=102
This commit is contained in:
Martin Hauke 2022-02-05 17:07:02 +00:00 committed by Git OBS Bridge
parent a3d803a0c1
commit 418ed6910a
6 changed files with 579 additions and 206 deletions

View File

@ -1,39 +0,0 @@
From f643bc12100c67288adda3699a9e61d6a66fb529 Mon Sep 17 00:00:00 2001
From: Gwenhael Goavec-Merou <gwenhael.goavec-merou@trabucayre.com>
Date: Fri, 7 Feb 2020 16:49:30 +0100
Subject: [PATCH] gr-digital:glfsr.h: drop boost/cstdint.hpp and use cstdint
gr-digital/glfsr.h include boost/cstdint.hpp to have uintxx_t.
These types are in boost namespace but nor using namespace xxx, nor boost:: are used.
The result is :
In file included from /home/buildroot/autobuild/instance-0/output-1/build/gnuradio-3.8.0.0/gr-digital/lib/glfsr.cc:23:
/home/buildroot/autobuild/instance-0/output-1/build/gnuradio-3.8.0.0/gr-digital/lib/../include/gnuradio/digital/glfsr.h:42:5: error: 'uint32_t' does not name a type; did you mean 'u_int32_t'?
uint32_t d_shift_register;
^~~~~~~~
u_int32_t
Since Gnuradio policy is Less boost == better and C++11 is used, use cstdint
instead of boost/cstdint.hpp.
[backported from 475e4a156b516c089175afb998acdc80b740b437]
Signed-off-by: Gwenhael Goavec-Merou <gwenhael.goavec-merou@trabucayre.com>
---
gr-digital/include/gnuradio/digital/glfsr.h | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/gr-digital/include/gnuradio/digital/glfsr.h b/gr-digital/include/gnuradio/digital/glfsr.h
index 0b5141f1f..1003bcd01 100644
--- a/gr-digital/include/gnuradio/digital/glfsr.h
+++ b/gr-digital/include/gnuradio/digital/glfsr.h
@@ -24,7 +24,7 @@
#define INCLUDED_DIGITAL_GLFSR_H
#include <gnuradio/digital/api.h>
-#include <boost/cstdint.hpp>
+#include <cstdint>
namespace gr {
namespace digital {
--
2.24.1

View File

@ -2,7 +2,7 @@
<constraints> <constraints>
<hardware> <hardware>
<disk> <disk>
<size unit="G">8</size> <size unit="G">12</size>
</disk> </disk>
<memoryperjob> <memoryperjob>
<size unit="M">2000</size> <size unit="M">2000</size>

View File

@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:492fe7d84fbd7a5106465326dc9fef5935288ea8f749d6038461a21eda649d13
size 3399660

3
gnuradio-3.9.5.0.tar.gz Normal file
View File

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:066c88fcf05046593e534416a3526ee433c3b90a7faa40fca914add23989ef3e
size 4245820

View File

@ -1,175 +1,592 @@
------------------------------------------------------------------- -------------------------------------------------------------------
Sun Jan 9 21:44:48 UTC 2022 - Wojciech Kazubski <wk@ire.pw.edu.pl> Sun Jan 9 21:21:09 UTC 2022 - Wojciech Kazubski <wk@ire.pw.edu.pl>
- Update to version 3.8.5.0 - Update to version 3.9.5.0:
* GRC * GRC
+ GRC now runs on Fedora 35 ... Gtk initialization checks were
too strict
+ Fix: dependent variables sometimes fail to evaluate + Fix: dependent variables sometimes fail to evaluate
+ Change type aliasing to allow interleaved short/byte to be + Modify and cleanup bokeh server loop
connected to vectors of short/byte. Stricter type checking * gr-analog
was added previously and caused some blocks to be unconnectable + Update python bindings for power squelch
when using these types.
+ Account for scale factor when computing drawing area size
+ Tooltips fixed for categories and modules
* gr-digital
+ Fix yml file for Header/Payload Demux
* gr-dtv * gr-dtv
+ Add energy normalization for DVB-S2X constellations. + Add energy normalization for DVB-S2X constellations.
* gr-filter * gr-filter
+ Remove pyqwt and qt4 from filter_design + 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 * gr-qtgui
+ Enable use of Qwt 6.2 + Enable use of Qwt 6.2
+ Remove unusable int type in Number Sink yml * gr-uhd
+ RangeWidget - implement Eng & EngSlider + Add Python bindings for rfnoc_{block, ddc, duc, rx/tx_radio}
- Patch 0003-enables-use-of-qwt-6_2.patch removed (applied upstream). * 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 0003-enables-use-of-qwt-6_2.patch removed (applied upstream)
------------------------------------------------------------------- -------------------------------------------------------------------
Tue Oct 19 09:55:51 UTC 2021 - Guillaume GARDET <guillaume.gardet@opensuse.org> Mon Nov 1 22:15:06 UTC 2021 - Wojciech Kazubski <wk@ire.pw.edu.pl>
- Enable again LTO on %{arm} as it builds properly now - Update to version 3.9.4.0:
* Regressions Fixes
------------------------------------------------------------------- + Remove #include <filesystem> (C++17 feature) from one file
Tue Oct 5 23:10:14 UTC 2021 - Wojciech Kazubski <wk@ire.pw.edu.pl> + Restore pyqwidget() in gr-qtgui
- Update to version 3.8.4.0
* Changed
GRC
+ Fix drag and drop issue with Quartz
+ Fix desync when dragging block
+ Update disabled blocks if they depend on others
+ Allow short and byte as valid types in an enum
+ Fix evaluation of interdependent variables
modtool
+ Set VERSION_PATH to 0 in new modules, instead of using GIT rev
+ For Python3, return correct exeption ModuleNotFoundError
instead of ImportError
gr-blocks
+ trix Interleaver block
gr-channels
+ Fix "hide" expressions in yml files
gr-digital
+ Remove unused msg output port from Chunks To Symbols block yml
gr-fft
+ Add "shift" parameter to Log Power FFT
gr-qtgui
+ Fix: tags on the last sample were not shown
gr-video-sdl
+ Fix: U and V channels were reversed on sink blocks
-------------------------------------------------------------------
Tue Aug 31 12:57:53 UTC 2021 - Wojciech Kazubski <wk@ire.pw.edu.pl>
- added a patch 0003-enables-use-of-qwt-6_2.patch to build with
Qwt-6.2.0. The patch was backported from pull request #5034.
- fixed build for Tumbleweed and Factory
-------------------------------------------------------------------
Fri Jun 11 19:00:29 UTC 2021 - Wojciech Kazubski <wk@ire.pw.edu.pl>
- Update to version 3.8.3.1
* This is a PATCH level revision. The API is compatible with C++
code written for previous v3.8 releases. ABI (shared library
signature) is intended to be compatible, so code linked
against v3.8.3.0 should not require recompilation.
* Build system
+ Improved messages related to dependencies MPIR and GMP. Only
one of these packages is required, and the previous error
messages were confusing.
* GRC * GRC
+ Parameter expressions and/or values can be displayed in blocks + GRC now runs on Fedora 35 ... Gtk initialization checks
on the flowgraph. Previously, only values were displayed. were too strict
+ Vector length is now correctly applied to all input ports. + 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 <wk@ire.pw.edu.pl>
- 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 + Validation has been improved. Raw types are validated. Port
connections are checked by type rather than by item size. connections are checked by type rather than by item size.
+ Variable names that cause conflicts in Python code (e.g., + Variable names that cause name conflicts in Python code (e.g.,
package names) are rejected. with package names) are rejected
+ Bus logic fixes. + Bus logic fixes
+ Blocks can no longer be dragged off the screen and lost + Blocks can no longer be dragged off the screen and lost forever
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 * gr-dtv
+ VL-SNR bugs fixed (incorrect constants). + VL-SNR bugs fixed (incorrect constants).
* gr-qtgui * gr-qtgui
+ Improve autoscaling for vector sinks. + 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 * gr_filter_design
+ "File/Save" is disabled until the taps have been computed, + "File/Save" is disabled until the taps have been computed, and the GUI
and the GUI is reset after a save, to make it clearer which is reset after a save, to make it clearer which data is being saved.
data is being saved. + Entries are hidden for parameters that do not apply to the selected filter type.
+ Entries are hidden for parameters that do not apply to the + Save window type as an integer instead of a Python enum name
selected filter type. * gr_modtool
+ Improve validation of module and block names
------------------------------------------------------------------- * Build System and Infrastructure
Mon Apr 12 07:05:36 UTC 2021 - Martin Pluskal <mpluskal@suse.com> + Improved messages related to dependencies MPIR and GMP. Only one of these
packages is required, and the previous error messages were confusing.
- Fix source url + Cleaner builds for Windows and Conda. A number of general cmake improvements
- Use ninja for building 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
Mon Mar 22 23:32:03 UTC 2021 - Wojciech Kazubski <wk@ire.pw.edu.pl> + 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.8.3.0: - Update to version 3.9.1.0:
* Changed on project Scope * Project Scope
+ Preference file path may be set using the GR_PREFS_PATH
environment variable
+ Lower message latency, previously slow when block aliases
were used
+ PMT: is_dict() no longer returns True for PMT pairs, only
for PMT dicts
+ Util gnuradio-config-info gets --print-all for those that
want it all
+ Allow Thrift versions up thorugh 0.13
+ (internal) Build system improvements and fixes + (internal) Build system improvements and fixes
+ (internal) Reduce Boost usage by replacing bind() with lambdas + (internal) Use C++14 features instead of Boost where possible
supported in C++11 + Fewer compiler warnings (due to fixed code, not removal of warnings!)
* OOT Support * OOT Support
+ Allow override of gr python dir by setting -DGR_PYTHON_DIR + cmake: standard FindGSL used in lieu of custom one, so OOTs
+ Modtool will not try to add duplicate block names in a module should no longer copy this module from the GNU Radio tree if needed
+ Modtool can non-interactively add blocks with no parameters + modtool: better exception/error handling
+ modtool: will non-interactively add blocks with no parameters
(--argument-list="") (--argument-list="")
+ Modtool will use current installation prefix instead of + PyBind11 header hash hotfixer
/usr/local as source of templates + (gr-utils/bindtool/scripts/binding-hash-hotfixer.zsh) makes life easier
* GRC * 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 + Better handling of gui hints, avoid hiding widgets in cases
where some have GUI hints and some do not where some have GUI hints and some do not
+ Dark theme detection fix + Ensure that strings are valid utf8 when evaluating parameters
+ Add window size option for bokeh gui + Save embedded python blocks/modules to hier_block_directory
* gr-audio + Save config and update recent file sub-menu before executing flowgraph
+ ALSA nperiods default increased to 32 frames to reduce drops + Revert to previous "block id" display behavior
(can be set in conf file under the audio_alsa section) + 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 * gr-blocks
+ File Source handles EOF properly in non-seekable files + Message Debug: prints warning when a non-PDU message is
(e.g., pipes) received on the Print PDU port
+ File Source handles large files on Windows + File Source handles EOF properly in non-seekable files (e.g., pipes)
+ Several bounds checking and boundary condition improvements + Several bounds checking and boundary condition improvements
+ Remove DC Spike AutoSync algorithm fixed
* gr-digital * gr-digital
+ MSK timing error detector improvement + MSK timing error detector improvement
+ Improvements to correlation estimator example + Python bindings include control_loop parent class in child
+ Correlate Access Code will not trigger until it receives class Correlation Estimator parameter threshold well documented
enough bits to compare to the access code * gr-fft
* gr-dtv + New window types: Nuttall, Blackman Nuttall, Nuttall CFD, Welch, Parzen,
+ Performance improvements + Exponential, Riemann, Gaussian and Tukey
* gr-filter * gr-filter
+ Filter designer works with Qt5 and Python3 + Taps blocks (e.g., Low Pass Filter Taps) now propagate parameter changes
+ Taps blocks (e.g., Low Pass Filter Taps) now propagate + Filter Designer: IIR/Band Pass/Bessel works
parameter changes
* gr-qtgui * gr-qtgui
+ Chooser label defaults now correct + Add toggling label and icon on plot play/stop button
+ Frequency Sink max hold plot for half spectrum width option + Time Raster Sink: axis labels and ranges are configurable
shows correctly + Qt Chooser: label improvements
+ Number Sink honors setting of 'avg' more consistently
* gr-uhd * gr-uhd
+ Add start time parameter to GRC blocks + DEPRECATION: UHD blocks currently accept control messages (e.g. for
+ Add message handler for GPIO control messages frequency change) as PMT pairs and tuples, in addition to the intended
+ Additional master clock rates in GRC blocks PMT dict format. In v3.11, only the dict format will be accepted.
+ UHD source sends tags on center frequency change + Command note: freq messages in this version must be dicts.
* gr-video-sdl Additionally, the direction key must be present and set to TX or RX.
+ Correct YUV format options + 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 * gr-zeromq
+ Connections no longer hang when flowgraph stops and other + C++ GRC templates
end is still connected (ZMQ_LINGER now set) + Tag filtering for tag-forwarding blocks
+ Receipt of bad PMTs logged (instead of exception) Removed
- Patch 0002-boost_qualify_placeholders_with_their_full_namespace.patch * Project Scope
removed (applied upstream). + 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 <guillaume.gardet@opensuse.org> Mon Feb 15 12:35:29 UTC 2021 - Guillaume GARDET <guillaume.gardet@opensuse.org>

View File

@ -16,10 +16,14 @@
# #
%define sover 3_8_5 %define sover 3_9_5
%ifarch %{arm}
# boo#1182440
%define _lto_cflags %{nil}
%endif
%bcond_without docs %bcond_without docs
Name: gnuradio Name: gnuradio
Version: 3.8.5.0 Version: 3.9.5.0
Release: 0 Release: 0
Summary: GNU software radio Summary: GNU software radio
License: GPL-3.0-or-later License: GPL-3.0-or-later
@ -30,10 +34,8 @@ Source0: https://github.com/gnuradio/gnuradio/archive/refs/tags/v%{versio
Source4: grc_to_37.sh Source4: grc_to_37.sh
Source99: %{name}-rpmlintrc Source99: %{name}-rpmlintrc
Patch0: missing_library.patch Patch0: missing_library.patch
Patch1: revert-23cece0d0.patch
Patch2: 0001-gr-digital-glfsr.h-drop-boost-cstdint.hpp-and-use-cs.patch
BuildRequires: alsa-devel BuildRequires: alsa-devel
BuildRequires: cmake >= 3.8 BuildRequires: cmake >= 3.10.2
BuildRequires: cppunit-devel BuildRequires: cppunit-devel
BuildRequires: cppzmq-devel BuildRequires: cppzmq-devel
BuildRequires: fdupes BuildRequires: fdupes
@ -42,13 +44,15 @@ BuildRequires: gcc-c++
BuildRequires: gmp-devel BuildRequires: gmp-devel
BuildRequires: gsl-devel BuildRequires: gsl-devel
BuildRequires: libSDL-devel BuildRequires: libSDL-devel
BuildRequires: libboost_atomic-devel >= 1.53 BuildRequires: libboost_atomic-devel >= 1.65
BuildRequires: libboost_filesystem-devel >= 1.53 BuildRequires: libboost_filesystem-devel >= 1.65
BuildRequires: libboost_system-devel BuildRequires: libboost_system-devel
BuildRequires: libgsm-devel BuildRequires: libgsm-devel
BuildRequires: libjack-devel BuildRequires: libjack-devel
BuildRequires: libmpir-devel BuildRequires: libmpir-devel
BuildRequires: libsndfile-devel
BuildRequires: log4cpp-devel BuildRequires: log4cpp-devel
BuildRequires: mathjax
BuildRequires: ninja BuildRequires: ninja
BuildRequires: orc BuildRequires: orc
BuildRequires: pkgconfig BuildRequires: pkgconfig
@ -59,14 +63,15 @@ BuildRequires: python3-click
BuildRequires: python3-click-plugins BuildRequires: python3-click-plugins
BuildRequires: python3-gobject BuildRequires: python3-gobject
BuildRequires: python3-gobject-cairo BuildRequires: python3-gobject-cairo
BuildRequires: python3-mako >= 0.9.1 BuildRequires: python3-mako >= 1.0.7
BuildRequires: python3-numpy BuildRequires: python3-numpy-devel >= 1.13.3
BuildRequires: python3-pyaml >= 3.11 BuildRequires: python3-pyaml >= 3.11
BuildRequires: python3-pybind11-devel >= 2.4.3
BuildRequires: python3-pycairo BuildRequires: python3-pycairo
BuildRequires: python3-qt5-devel BuildRequires: python3-qt5-devel
BuildRequires: python3-six BuildRequires: python3-six
BuildRequires: qwt6-qt5-devel BuildRequires: qwt6-qt5-devel
BuildRequires: swig >= 3.0.8 BuildRequires: soapy-sdr-devel
BuildRequires: typelib(Gtk) = 3.0 BuildRequires: typelib(Gtk) = 3.0
BuildRequires: typelib(PangoCairo) = 1.0 BuildRequires: typelib(PangoCairo) = 1.0
BuildRequires: typelib(cairo) = 1.0 BuildRequires: typelib(cairo) = 1.0
@ -76,7 +81,7 @@ BuildRequires: pkgconfig(codec2)
BuildRequires: pkgconfig(libusb-1.0) BuildRequires: pkgconfig(libusb-1.0)
BuildRequires: pkgconfig(libxml-2.0) BuildRequires: pkgconfig(libxml-2.0)
BuildRequires: pkgconfig(py3cairo) BuildRequires: pkgconfig(py3cairo)
BuildRequires: pkgconfig(volk) >= 2.0 BuildRequires: volk-devel >= 2.4.1
# gr_modtool dependencies # gr_modtool dependencies
Requires: python3-click Requires: python3-click
Requires: python3-click-plugins Requires: python3-click-plugins
@ -161,13 +166,6 @@ This package contains some examples of using GNU Radio.
%prep %prep
%autosetup -p1 %autosetup -p1
# remove buildtime from documentation
sed -i 's|^HTML_TIMESTAMP = YES|HTML_TIMESTAMP = NO|' docs/doxygen/Doxyfile.in
sed -i 's|^HTML_TIMESTAMP = YES|HTML_TIMESTAMP = NO|' docs/doxygen/Doxyfile.swig_doc.in
# protect the template files from %%cmake macro magic / mangling
find gr-utils/python/modtool/templates/gr-newmod -name CMakeLists.txt -exec mv '{}' '{}.tmpl' \;
%build %build
%define __builder ninja %define __builder ninja
%cmake \ %cmake \
@ -180,9 +178,6 @@ find gr-utils/python/modtool/templates/gr-newmod -name CMakeLists.txt -exec mv
%cmake_build %cmake_build
%install %install
# move the template files back
find gr-utils/python/modtool/templates/gr-newmod -name CMakeLists.txt.tmpl -execdir mv '{}' 'CMakeLists.txt' \;
%cmake_install %cmake_install
install -d %{buildroot}%{_docdir}/%{name} install -d %{buildroot}%{_docdir}/%{name}
@ -215,21 +210,23 @@ rm -rf %{buildroot}%{_datadir}/icons/gnome
%{_datadir}/gnuradio/modtool/ %{_datadir}/gnuradio/modtool/
%{_datadir}/gnuradio/themes/ %{_datadir}/gnuradio/themes/
%{_datadir}/gnuradio/fec/ %{_datadir}/gnuradio/fec/
%{_datadir}/gnuradio/clang-format.conf
%{_datadir}/icons/hicolor/*/apps/gnuradio-grc.png %{_datadir}/icons/hicolor/*/apps/gnuradio-grc.png
%{_datadir}/applications/gnuradio-grc.desktop %{_datadir}/applications/gnuradio-grc.desktop
%{_datadir}/mime/packages/gnuradio-grc.xml %{_datadir}/mime/packages/gnuradio-grc.xml
%{_datadir}/metainfo/org.gnuradio.grc.metainfo.xml
%{python3_sitearch}/* %{python3_sitearch}/*
%dir %{_sysconfdir}/gnuradio %dir %{_sysconfdir}/gnuradio
%dir %{_sysconfdir}/gnuradio/conf.d %dir %{_sysconfdir}/gnuradio/conf.d
%config(noreplace) %{_sysconfdir}/gnuradio/conf.d/*.conf %config(noreplace) %{_sysconfdir}/gnuradio/conf.d/*.conf
%{_mandir}/man1/*.1%{?ext_man}
%dir %{_docdir}/%{name}/ %dir %{_docdir}/%{name}/
%{_docdir}/%{name}/README* %{_docdir}/%{name}/README*
%{_docdir}/%{name}/CHANGELOG* %{_docdir}/%{name}/CHANGELOG*
%{_docdir}/%{name}/CONTRIBUTING.md
# doc package # doc package
%exclude %{_docdir}/%{name}/html/ %exclude %{_docdir}/%{name}/html/
%exclude %{_docdir}/%{name}/xml/ %exclude %{_docdir}/%{name}/xml/
%exclude %{_docdir}/%{name}/*.py
%exclude %{_docdir}/%{name}/*.grc
%files -n libgnuradio-%{sover} %files -n libgnuradio-%{sover}
%{_libdir}/libgnuradio*.so.* %{_libdir}/libgnuradio*.so.*
@ -245,8 +242,6 @@ rm -rf %{buildroot}%{_datadir}/icons/gnome
%dir %{_docdir}/%{name} %dir %{_docdir}/%{name}
%{_docdir}/%{name}/html/ %{_docdir}/%{name}/html/
%{_docdir}/%{name}/xml/ %{_docdir}/%{name}/xml/
%{_docdir}/%{name}/*.py
%{_docdir}/%{name}/*.grc
%files examples %files examples
%dir %{_libdir}/gnuradio %dir %{_libdir}/gnuradio