summaryrefslogtreecommitdiff
path: root/gnuradio-runtime
Commit message (Collapse)AuthorAgeFilesLines
...
* CMake: remove unused compile/header checksMarcus Müller2021-02-181-38/+0
| | | | Signed-off-by: Marcus Müller <mmueller@gnuradio.org>
* gnuradio-runtime: configurable buffer sizekarel2021-02-182-1/+4
| | | | Signed-off-by: karel <5636152+karel@users.noreply.github.com>
* runtime: Fix missing % in pagesize log statementMartin Braun2021-02-151-1/+1
| | | | Signed-off-by: Martin Braun <martin@gnuradio.org>
* Fix typosluz paz2021-02-081-1/+1
| | | | | | | | Found via `codespell v2.1.dev0` `codespell -q 3 -L ans,fo,hist,inout,ist,ith,nd,sinc,uint -S ./volk` Signed-off-by: luz paz <luzpaz@users.noreply.github.com> Signed-off-by: Josh Morman <jmorman@perspectalabs.com>
* Removing unused <cerrno> (and includes found on the way)Marcus Müller2021-01-281-2/+0
| | | | Signed-off-by: Marcus Müller <mmueller@gnuradio.org>
* Removed unused <cassert>Marcus Müller2021-01-285-5/+0
| | | | Signed-off-by: Marcus Müller <mmueller@gnuradio.org>
* ctrlport: apply same clang-tidy rules as to rest of codebaseMarcus Müller2021-01-282-4/+5
| | | | Signed-off-by: Marcus Müller <mmueller@gnuradio.org>
* python: add the dll runtime path in __init__.pyJosh Blum2021-01-271-0/+13
| | | | | | | | | | | python3.8 and up need to have the dll search path set explicitly before importing. More details can be found here: https://docs.python.org/3/whatsnew/3.8.html#bpo-36085-whatsnew Without the fix, python libraries will fail to import regardless of how PATH is configured. The solution searches for the runtime path for gnuradio dlls and calls add_dll_directory() before imports. As a precedent, a similar behaviour is implemented in the gi/__init__.py module used with pygtk. Signed-off-by: Josh Blum <josh@joshknows.com>
* runtime: replace /dev/stdin in sine table generatorJosh Blum2021-01-271-1/+2
| | | | | | | /dev/stdin does not exist and was replaced by directing stdout to the file rather than piping stdout to the stdin of an install command Signed-off-by: Josh Blum <josh@joshknows.com>
* runtime: replace use of std::unary_functionJosh Blum2021-01-271-6/+7
| | | | | | | | std::unary_function is deprecated of as c++11 and removed in c++17 https://en.cppreference.com/w/cpp/utility/functional/unary_function The solution was to replace unary_function with std::function. Signed-off-by: Josh Blum <josh@joshknows.com>
* Bring man pages in-tree from project gnuradio/pkg_gnuradioDavid Pi2021-01-241-1/+0
| | | | | | | | | | | | | | - Move BUILD_DATE to top CMakeLists so it's available in other modules. Add Z suffix to indicate UTC. - Add a BUILD_DATE_SHORT with just yyy-mm-dd more appropriate for man pages - Put man pages in man/docs and give them a .in extension - Replace version and date placeholders at cmake configure time - Improve gnuradio-companion man page, expanding description and updating options - Remove help2man generated man pages, and man pages for non-existent commands Signed-off-by: David Pi <david.pinho@gmail.com>
* runtime: lib: Don't use hard-coded absolute path constants.Ryan Volz2021-01-212-17/+16
| | | | | | | | | | | | | | | | This replaces the path constants for the prefix, system configuration, and preferences directories with a runtime prefix lookup based on the gnuradio-runtime library location and relative paths from that. Boost >= 1.61 is required, but this is now compatible with the minimum version required by GNU Radio overall. Also use cmake-style paths instead of native paths for substitution to avoid unescaped character problems. Windows is able to use the forward-slash paths just fine, and this also has external benefits (e.g. conda will do path replacement during installation and it substitutes forward-slash paths, so this avoids mixed-slash paths). Signed-off-by: Ryan Volz <ryan.volz@gmail.com>
* lib: Clang-format constants.cc.inMartin Braun2021-01-201-83/+43
| | | | | | | Because we always used globs to find the files we re-format, this slipped under the clang-format-radar. Signed-off-by: Martin Braun <martin@gnuradio.org>
* clang-tidy: run full .clang-tidy on C++17 codebaseMarcus Müller2021-01-1938-67/+67
| | | | | | | | | | | | | | | | | | | | run /usr/share/clang/run-clang-tidy.py -checks=file '-header-filter=.*' -fix .. from build directory. Then, clang-format -i $(git diff --name-only origin/master) to clang-format changed files. Then, refresh all header hashes in pybind bindings (*/python/bindings/*.cc) Signed-off-by: Marcus Müller <mmueller@gnuradio.org>
* runtime: simplify math fxpt sine/cosine calculationArtem Pisarenko2021-01-173-21/+10
| | | | | | | | | Algorithm improved in order to eliminate getting output values outside of range [-1.0, 1.0) Fixes #2993 Signed-off-by: Artem Pisarenko <artem.k.pisarenko@gmail.com>
* runtime: integrate generation of math sine_table.h into build processArtem Pisarenko2021-01-173-1026/+13
| | | | | | | File sine_table.h is generated artifact and shouldn't be part of sources in order to properly be in sync with changes to gen_sine_table.py Signed-off-by: Artem Pisarenko <artem.k.pisarenko@gmail.com>
* cmake: Fixup BUILD_DATE commit.Ron Economos2021-01-141-4/+1
| | | | Signed-off-by: Ron Economos <w6rz@comcast.net>
* cmake: python: Fix linking when runtime py interpreter != build time.Ryan Volz2021-01-141-2/+7
| | | | | | | | | | | | | | | | | | | | | | | This fixes a segmentation fault with the Pybind11 bindings when trying to load any Python module on OSX with a different interpreter than was used at build time (relevant to at least conda and homebrew). This fix was already in place for the prior Swig bindings, but the Pybind11 changes do not incorporate it since they link with ${PYTHON_LIBRARIES} instead of the (fixed) Python::Python target. For clearer separation and to adopt the approach used by the new-ish (3.12) builtin CMake FindPython module, this commit creates a separate Python::Module target to be used when creating a Python extension module (which includes "-undefined" and "dynamic_lookup" for macOS instead of linking directly to the Python library). The Python::Python target that does link to the Python library is still necessary for use as a PRIVATE target (e.g. for runtime and qtgui). For future reference and a general description of best practices for linking Python extension modules, see https://blog.tim-smith.us/2015/09/python-extension-modules-os-x. Signed-off-by: Ryan Volz <ryan.volz@gmail.com>
* cmake: use TIMESTAMP function for build date and generate constants onceAndrej Rode2021-01-141-6/+7
| | | | | | | | | | | | | Previously a a custom python command was used to generate the build date but this can be done with native CMake functions for all supported CMake versions. Additionally it's compatible with reproducible builds since CMake 3.8 as it honors SOURCE_DATE_EPOCH set in the environment varibales. Thanks to Sebastian Koslowski for pointing out the right way in CMake. Signed-off-by: Marcus Müller <mmueller@gnuradio.org>
* runtime: added missing algorithm headerJosh Blum2021-01-112-1/+2
| | | | | | tag_checker.h uses std::sort Signed-off-by: Josh Blum <josh@joshknows.com>
* runtime: lib: Put #include <cxxabi.h> behind HAVE_LIBINUWIND.Ryan Volz2021-01-091-2/+1
| | | | | | | It's only needed when libunwind is used, and always including it fails on Windows because the header doesn't exist for MSVC. Signed-off-by: Ryan Volz <ryan.volz@gmail.com>
* runtime: lib: Fix GR_RUNTIME_API declaration in terminate_handler.h.Ryan Volz2021-01-091-1/+1
| | | | Signed-off-by: Ryan Volz <ryan.volz@gmail.com>
* C++14: Use std::make_unique instead of boost::make_uniqueMarcus Müller2021-01-046-10/+8
| | | | | | Also, clean up includes Signed-off-by: Marcus Müller <mmueller@gnuradio.org>
* pmt: use to_string for char string_refsmormj2020-12-191-2/+2
|
* runtime: Add terminate handlingPaul Wicks2020-12-195-4/+181
| | | | | | | | | | | | | | | | | | | | | | | | This consists of the following changes: 1. Add a top_block parameter to control exception handling This restores past behavior where the scheduler catches exceptions raised in block threads, allowing flowgraphs to continue running after the failure of an individual block. It also adds optional new behavior, selected by setting catch_exceptions=False to the top block, which causes exceptions to not be caught. In this mode of operation, a std::terminate handler can be installed to print a stack trace before the flowgraph exits. 2. Add terminate_handler to top_block_impl This adds a terminate_handler function that prints information about any uncaught exceptions and also attempts to print a backtrace for said exception after which it calls std::abort. The backtrace is printed via libunwind, which is a new optional dependency. If libunwind is not found/installed, then the terminate handler will still print information about the exception and then exit. Co-Authored-By: Scott Torborg <storborg@gmail.com>
* RPC fixes to allow using Thrift-0.13A. Maitland Bottoms2020-12-193-13/+27
| | | | | | | Adds ability for master to build with newer Thrift versions by checking availability of thrift include files. (Also spelling fix: Thift -> Thrift) And fix up logging for rpcserver_thrift class.
* add import fft to python files that reference fft.windowJosh Morman2020-12-181-1/+1
| | | | Signed-off-by: Josh Morman <jmorman@perspectalabs.com>
* global replace of filter.firdes.WIN_ with fft.window.WIN_Josh Morman2020-12-181-2/+2
| | | | Signed-off-by: Josh Morman <jmorman@perspectalabs.com>
* runtime: abolish the gru python moduleMarcus Müller2020-12-174-46/+0
| | | | Signed-off-by: Marcus Müller <mmueller@gnuradio.org>
* move msgq_runner out of runtime into gr-uhd/apps, its single consumerMarcus Müller2020-12-173-72/+0
| | | | Signed-off-by: Marcus Müller <mmueller@gnuradio.org>
* gnuradio-runtime: Fix qa_fast_atan2f test code.Ron Economos2020-11-141-3/+3
|
* modernization: `override` instead of virtual in all compilation unitsMarcus Müller2020-11-0340-210/+219
|
* Add `override` for common virtual function overridesThomas Habets2020-11-031-2/+2
| | | | | | | | | | Mostly done with: ``` find -name "*_impl.h" | xargs sed -i -r '/(void forecast|int work|int general_work|bool check_topology)\(/{:back /\)/b nxt;N;b back;:nxt s/\)$|\)(;)/) override\1/g}' ``` Then I removed an incorrect `work` that this found.
* Remove unused gru importsClayton Smith2020-11-021-1/+1
| | | | | Neither of these files use the gru module anymore. I've tested that they work correctly after removing the unused imports.
* qa: run autopep8 formatting on qa python filesmormj2020-10-308-40/+55
| | | | | | find ./ -iname qa*.py | xargs autopep8 --in-place -a -a mostly formats whitespace and gets rid of trailing semicolons
* qa: remove xml file parameter causing deprecation warningsmormj2020-10-306-6/+6
|
* Remove gru.daemonize and dial_tone_daemon exampleClayton Smith2020-10-303-94/+0
| | | | | | | These were added in GNU Radio 3.1.3, but a Google search finds no mention of gru.daemonize outside of the changelog. Modern Python programs could use the python-daemon library, which implements the daemon specification of PEP 3143.
* Fix examples that use wavfile_sinkClayton Smith2020-10-301-1/+2
| | | | | The recent libsndfile transition changed the API of the wavfile_sink block, so the two examples that use it need to be updated.
* Remove freqz and gnuplot_freqz from gru moduleClayton Smith2020-10-304-426/+0
|
* Remove hexint and hexshort from gru moduleClayton Smith2020-10-303-34/+0
|
* utils: Added print-all to gnuradio-config-infoDerek Kozel2020-10-291-10/+16
| | | | Signed-off-by: Derek Kozel <derek@bitstovolts.com>
* Fix typos throughout the codeluzpaz2020-10-295-7/+7
| | | | | | | * Fix various typos Found via `codespell v2.0.dev` `codespell -q 3 -L ans,fo,hist,inout,ist,ith,nd,sinc,uint -S ./volk`
* Remove gcd, lcm, and log2 from gru moduleClayton Smith2020-10-293-23/+0
|
* Make hash table a little larger to reduce expensive iteration. The memory ↵Jacob Gilbert2020-10-281-1/+1
| | | | impact is very small, on the order of 10's of kB.
* Replace custom undocumented string hashing algorithm with std::hash. The std ↵Jacob Gilbert2020-10-281-17/+2
| | | | implmentation is slightly faster and has been tested to have similar distribution with arbitrary input data
* runtime: fix Windows loggingjapm482020-10-201-1/+1
| | | | | This removes a few compilation errors in Windows related to logging functions (see PR #3339).
* gru: remove unused filesClayton Smith2020-10-206-164/+0
|
* audio: fix lcm calculationClayton Smith2020-10-201-1/+1
|
* runtime: remove unused HAVE_SNPRINTF macroClayton Smith2020-10-201-8/+0
| | | | | | The last reference to HAVE_SNPRINTF was removed in a75f0c40fe0912535fe102792f27c13d01df8e3e so it should now be safe to remove it.
* runtime: remove snprintfClayton Smith2020-10-202-6/+13
|