~/talk

Removing SWIG from GNU Radio

Talkat GRCon 2020 · 2020-09-14..09-18· [python, software-architecture]
links:none on file
links:none on file
slides:none on file

GNU Radio removes SWIG in 3.9 and replaces it with pybind11 2.4.3 or later, cutting incremental compile time and eliminating SWIG-generated build churn by moving per-block C++ binding units into each module’s python directory. gr-modtool gains a bind generator that uses optional pygccxml to auto-create bindings and injects docstrings via a header-file MD5 sync so cmake detects stale bindings. Templated blocks and some external-library headers still require manual binding work; runtime Python-only blocks keep similar performance but embedding and maintenance become far simpler.

AI-written summary · about

  1. 0:00Introduction
  2. 7:48New dependencies
  3. 9:06Directory structure
  4. 11:37C bindings
  5. 15:13Python bindings
  6. 19:16Getting to 39
  7. 21:42Python only flow graphs
  8. 22:57Things to improve
~/search
type to search 6,249 conferences, 138,987 speakers and 185,172 talks
~/help
cmdctrl k
search every conference, speaker and series
/
focus the filter search
h
home
c
conferences
s
speakers
e
series
t
light / dark — the status bar button does the same
?
this help
esc
close this, then clear every filter — or just the search, while you are typing in it

Ignored while you are typing. Pages without a filter rail have no search to focus.