| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
| |
Signed-off-by: Josh Morman <jmorman@gnuradio.org>
|
|
|
|
|
|
|
|
|
| |
Regardless of how spdlog was built (with/without SPDLOG_FMT_EXTERNAL),
this ensures that the proper fmt headers are included. This makes it so
that fmt is not a required dependency when spdlog is built with
SPDLOG_FMT_EXTERNAL=OFF.
Signed-off-by: Ryan Volz <ryan.volz@gmail.com>
|
|
|
|
| |
Signed-off-by: Josh Morman <jmorman@gnuradio.org>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* When cross compiling gnuradio, change how the test files are built.
Normally, the gnuradio QA code expects to run in the build tree. For the
cross compilng case, we cannot run the QA code during the build process.
The changes here allow the creation of an additional package that can be
installed on a target that will run the QA code against the installed
libraries.
Major changes are not using full paths to test files (since they include
paths that only exist on the build machine) and not setting environment
variables in the shell files to force the QA code to use code in the
build tree.
This patch disables the C++ only tests, these need some work and then they
can be added back for the cross compile case.
Signed-off-by: Philip Balister <philip@balister.org>
|
|
|
|
| |
Signed-off-by: Marcus Müller <mmueller@gnuradio.org>
|
|
|
|
| |
Signed-off-by: Josh Morman <jmorman@gnuradio.org>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* modtool: move OOTs equal to components for 3.10
Signed-off-by: Josh Morman <jmorman@gnuradio.org>
* pybind: update some python dir references
Signed-off-by: Josh Morman <jmorman@gnuradio.org>
* cmake: have pybind address the correct header
Signed-off-by: Josh Morman <jmorman@gnuradio.org>
* runtime: extend the python search path
allow OOT modules to be installed in other places in PYTHONPATH that
have a gnuradio directory
Signed-off-by: Josh Morman <jmorman@gnuradio.org>
* modtool: update python paths for rm
Signed-off-by: Josh Morman <jmorman@gnuradio.org>
* modtool: minor fixes for new dir structure
Signed-off-by: Josh Morman <jmorman@gnuradio.org>
* modtool: update the installed cmake targets
Signed-off-by: Josh Morman <jmorman@gnuradio.org>
* modtool: add include(CMakePackageConfigHelpers)
Signed-off-by: Josh Morman <jmorman@gnuradio.org>
* modtool: test_modules dir under gnuradio
Signed-off-by: Josh Morman <jmorman@gnuradio.org>
|
|
|
|
| |
Signed-off-by: Josh Morman <jmorman@gnuradio.org>
|
|
|
|
| |
Signed-off-by: Marcus Müller <mmueller@gnuradio.org>
|
|
|
|
|
|
|
|
| |
also: enable formerly disabled qa_logger tests
This replaces log4cpp with spdlog.
Signed-off-by: Marcus Müller <mmueller@gnuradio.org>
|
|
|
|
|
|
| |
this necessitates including it whenever it's used in-tree
Signed-off-by: Marcus Müller <mmueller@gnuradio.org>
|
|
|
|
| |
Signed-off-by: Josh Morman <jmorman@gnuradio.org>
|
|
|
|
| |
Signed-off-by: Josh Morman <jmorman@gnuradio.org>
|
|
|
|
|
|
|
| |
exception
gnuradio-runtime: hier_block2.py __getattr__ recursive loop bug fix #5072
Signed-off-by: Matt Mills <mmills@2bn.net>
|
|
|
|
|
|
|
| |
some advanced template magic; also a few minor type corrections for
consistency
Signed-off-by: David Sorber <david.sorber@blacklynx.tech>
|
|
|
|
|
|
|
|
| |
MAKE_CUSTOM_BUFFER_TYPE macro function to DEFINE_CUSTOM_BUFFER_TYPE;
mark unused parameters from virtual functions with the
[[maybe_unused]] C++ attribute
Signed-off-by: David Sorber <david.sorber@blacklynx.tech>
|
|
|
|
| |
Signed-off-by: David Sorber <david.sorber@blacklynx.tech>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Completion of custom buffer/accelerator device support changes:
* Improved custom buffer interface by removing awkward memory
allocation functions from the block class
* Increased flexibility for creating custom buffers by allowing
creation of buffer_single_mapped subclasses
* Fully incorporated data movement abstraction into the custom
buffer interface and the runtime itself; accelerated blocks are no
longer directly responsible for their own data movement
* Zero copy back-to-back accelerated blocks are now supported (data
no longer needs to be moved back to the host between each block)
Signed-off-by: David Sorber <david.sorber@blacklynx.tech>
Signed-off-by: Mike Mason <mike.mason@blacklynx.tech>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Custom Buffer/Accelerator Device Support - Milestone 1 changes:
* Refactored existing single mapped buffer code and created single
mapped buffer abstraction; wrapping within single mapped buffers
is handled explicitly by input blocked and output blocked
callbacks that are called from block_executor
* Added simple custom buffer allocation interface (NOTE: this
interface will change for milestone 2)
* Accelerated blocks are still responsible for data transfer but the
custom buffer interface eliminates the double copy problem
Signed-off-by: David Sorber <david.sorber@blacklynx.tech>
|
|
|
|
|
|
|
| |
This commit replaces many uses of std::c{out,err} and printf with the
appropriate GR_LOG_* directives.
Signed-off-by: David Winter <david.winter@analog.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* runtime: fix pybind of get_tags_in_window
Fix issue where get_tags_in_window was bound to and consequently had the
same behavior as get_tags_in_range
Fixes #5005
Test recommended by ryanvolz fails to validate tag offset not just when
nitems_read is 0
Signed-off-by: Josh Morman <jmorman@peratonlabs.com>
|
|
|
|
|
|
|
| |
This was omitted accidentally, but is necessary in general for
correct processing of PDU data
Signed-off-by: Jacob Gilbert <jacob.gilbert@protonmail.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Previously, two versions of the `qtwidget` functions existed,
`qwidget()` and `pyqwidget()`, with the only difference being that
`qwidget()` returned a pointer to the `QWidget` object managed by the
corresponding block, while `pyqwidget()` returned that same pointer, but as
an integer (Or `PyLong` in this case).
While `qwidget()` is used by C++ code accessing the widgets,
`pyqwidget()` is only used for the python interface. This makes these
two methods redundant, thus this commit entirely removes `pyqwidget()`,
and modifies the `qwidget()` python wrapper to behave like
`pyqwidget()`. Note that we can be fairly confident that this change
will not effect potential users of `qwidget()`, because any invocation
on the objects previously returned by `qwidget()` would cause a
segmentation fault.
This commit also fixes a memory leak:
Internally, the `pyqwidget()` functions were returning a PyLong `PyObject *`,
which was then upwrapped in a pybind trampoline without decrementing
the reference count of that python object.
Signed-off-by: David Winter <david.winter@analog.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Deprecated on 3.9:
`tag_checker` used to be meant for cases where you've gotten an unsorted
tag vector (mostly, from `get_tags_in_range`), which you then had to go
through in parallel to your samples, to check which tag applies at what
sample.
For that it sorts the tags; the tags coming from the `get_tags*` functions
are sorted already
The checking pattern (which `chunks_to_symbols` is the last consumer of)
is inefficient: instead of taking the index of the first unprocessed tag
and processing all samples up to that index, a check is performed on
every sample, which includes calls and multiple indirections.
So, since very likely nobody uses this, and because it's a design
anti-pattern, deprecating this on 3.9 and removing it with 3.10.
Signed-off-by: Marcus Müller <mmueller@gnuradio.org>
|
|
|
|
| |
Signed-off-by: Jacob Gilbert <jacob.gilbert@protonmail.com>
|
|
|
|
| |
Signed-off-by: Jacob Gilbert <jacob.gilbert@protonmail.com>
|
|
|
|
|
|
| |
Added take_skip_to_pdu block and pdu lambda blocks, needs examples still
Signed-off-by: Jacob Gilbert <jacob.gilbert@protonmail.com>
|
|
|
|
|
|
|
|
| |
A helper method is added to gr/lib/logger.cc to facilitate the
allocation of loggers which are automatically configured according to the
local GNURadio configuration.
Signed-off-by: David Winter <david.winter@analog.com>
|
|
|
|
|
|
|
| |
Since the introduction of the comparison operator obsoletes the
comparison class, remove it.
Signed-off-by: Marcus Müller <mmueller@gnuradio.org>
|
|
|
|
| |
Signed-off-by: Marcus Müller <mmueller@gnuradio.org>
|
|
|
|
| |
Signed-off-by: Marcus Müller <mmueller@gnuradio.org>
|
|
|
|
|
|
|
|
| |
used command:
sed -i '/^#include.*boost.*$/d' $(ag -L '(boost::|BOOST)' $(ag --cpp -l '#include <boost'))
Signed-off-by: Marcus Müller <mmueller@gnuradio.org>
|
|
|
|
|
|
|
|
|
| |
This included shifting of the PDU test from runtime to gr-pdu, and
making the tests that actually require blocks conditional on whether
there's going to be gr-blocks. Also, don't use gr-analog just because
you need data.
Signed-off-by: Marcus Müller <mmueller@gnuradio.org>
|
|
|
|
|
|
|
|
|
|
| |
used command:
sed -i '/^#include.*cstdio.*$/d' $(ag -L
'\b(fscanf|sscanf|printf|sprintf|ftell|fgetpos|fseek|fsetpos|rewind|fopen|freopen|fclose|fflush|setbuf|setvbuf|fread|fwrite|fprintf|feof|ferror|perror|clearerror|rename|tmpfile|tmpnam)\b'
$(ag -l 'include.*<cstdio>' gnuradio-runtime))
Signed-off-by: Marcus Müller <mmueller@gnuradio.org>
|
|
|
|
| |
Signed-off-by: Marcus Müller <mmueller@gnuradio.org>
|
|
|
|
| |
Signed-off-by: Marcus Müller <mmueller@gnuradio.org>
|
|
|
|
| |
Signed-off-by: Marcus Müller <mmueller@gnuradio.org>
|
|
|
|
|
|
| |
Co-authored-by: Edward Kigwana <ekigwana@scires.com>
Co-authored-by: Travis Collins <travis.collins@analog.com>
Signed-off-by: Adam Horden <adam.horden@horden.engineering>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
First, this moves find_package(THRIFT) up to the gnuradio-runtime
CMakeLists.txt so that cache variables no longer have to be used to mark
the found components. This fixes an issue where the thrift-specific
headers were not installed even when thrift was enabled, because on
first run the detection was occurring AFTER the runtime include
CMakeLists.txt was evaluated. See further discussion in #2734, which
solved one issue related to this setup.
Further, even with thrift enabled, the thrift headers are not required
for OOTs to build against gnuradio-runtime. OOTs would need to take
special action to use those headers, in which case they should
detect/enable thrift on their own. Thus, this makes the change to not
add thrift as an extra dependency for OOTs and switches linking of
Thrift::thrift from PUBLIC to PRIVATE.
Signed-off-by: Ryan Volz <ryan.volz@gmail.com>
|
|
|
|
|
|
|
|
| |
Without a target, the Python bindings are not built (i.e. the custom
command is not run) until they are needed, during install. By adding a
target, they will be generated during the build step.
Signed-off-by: Ryan Volz <ryan.volz@gmail.com>
|
|
|
|
|
|
|
| |
* Fixed gr-soapy Python import
* Partially addresses https://github.com/gnuradio/gnuradio/issues/4571
Signed-off-by: Nicholas Corgan <n.corgan@gmail.com>
|
|
|
|
| |
Signed-off-by: Thomas Habets <thomas@habets.se>
|
|
|
|
| |
Signed-off-by: Thomas Habets <thomas@habets.se>
|
|
|
|
| |
Signed-off-by: Thomas Habets <thomas@habets.se>
|
|
|
|
| |
Signed-off-by: Josh Morman <jmorman@perspectalabs.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Seeding being inconsistent between gr::random and things like fastnoise
source is an outstanding issue (#1559).
Fix that by fixing the API, and pivoting to our built-in XOROSHIRO128+,
which is also substantially faster than MT19937.
For that purpose, introduce, and python-bind, a wrapper class that can
be used with STL distribution shapers.
Add a unit test for the (P)RNG.
Signed-off-by: Marcus Müller <mmueller@gnuradio.org>
|
|
|
|
|
|
| |
5197311dd22744b784ff9ae2cd965a26ef04f4a4 removed the blocking wait, which utilized this. Time for this to go.
Signed-off-by: Marcus Müller <mmueller@gnuradio.org>
|
|
|
|
| |
Signed-off-by: Josh Morman <jmorman@perspectalabs.com>
|
|
|
|
| |
Signed-off-by: Marcus Müller <mmueller@gnuradio.org>
|
|
|
|
| |
Signed-off-by: Marcus Müller <mmueller@gnuradio.org>
|