2021-04-05 09:02:52 +02:00
|
|
|
# $NetBSD: Makefile.common,v 1.31 2021/04/05 07:02:52 nia Exp $
|
2014-10-13 14:46:33 +02:00
|
|
|
# This Makefile fragment is included in the package Makefiles for
|
|
|
|
# GNU Radio distributed packages (they all share common configure and build
|
|
|
|
# settings).
|
gnuradio-core: update to 3.8.1.0
Here is a very high level list of changes:
## Changed
### 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.
2020-08-30 22:43:46 +02:00
|
|
|
|
2014-10-13 14:46:33 +02:00
|
|
|
# used by ham/gnuradio-channels/Makefile
|
|
|
|
# used by ham/gnuradio-companion/Makefile
|
|
|
|
# used by ham/gnuradio-core/Makefile
|
|
|
|
# used by ham/gnuradio-ctrlport/Makefile
|
|
|
|
# used by ham/gnuradio-digital/Makefile
|
|
|
|
# used by ham/gnuradio-doxygen/Makefile
|
|
|
|
# used by ham/gnuradio-dtv/Makefile
|
gnuradio-core: update to 3.8.1.0
Here is a very high level list of changes:
## Changed
### 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.
2020-08-30 22:43:46 +02:00
|
|
|
# used by ham/gnuradio-fec/Makefile
|
2014-10-13 14:46:33 +02:00
|
|
|
# used by ham/gnuradio-qtgui/Makefile
|
|
|
|
# used by ham/gnuradio-trellis/Makefile
|
|
|
|
# used by ham/gnuradio-uhd/Makefile
|
|
|
|
# used by ham/gnuradio-utils/Makefile
|
|
|
|
# used by ham/gnuradio-video-sdl/Makefile
|
|
|
|
# used by ham/gnuradio-vocoder/Makefile
|
|
|
|
# used by ham/gnuradio-wavelet/Makefile
|
|
|
|
# used by ham/gnuradio-zeromq/Makefile
|
|
|
|
|
gnuradio-core: update to 3.8.1.0
Here is a very high level list of changes:
## Changed
### 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.
2020-08-30 22:43:46 +02:00
|
|
|
.include "../../ham/gnuradio-core/version.mk"
|
2014-10-13 14:46:33 +02:00
|
|
|
|
|
|
|
DISTNAME?= gnuradio-${VERSION}
|
|
|
|
CATEGORIES+= ham
|
gnuradio-core: update to 3.8.1.0
Here is a very high level list of changes:
## Changed
### 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.
2020-08-30 22:43:46 +02:00
|
|
|
#MASTER_SITES= http://s3-dist.gnuradio.org/
|
|
|
|
#MASTER_SITES+= http://gnuradio.org/releases/gnuradio/
|
|
|
|
MASTER_SITES= ${MASTER_SITE_GITHUB:=gnuradio/}
|
|
|
|
GITHUB_PROJECT= gnuradio
|
|
|
|
GITHUB_RELEASE= v${VERSION}
|
2014-10-13 14:46:33 +02:00
|
|
|
|
|
|
|
MAINTAINER?= pkgsrc-users@NetBSD.org
|
2020-01-19 00:30:43 +01:00
|
|
|
HOMEPAGE?= https://www.gnu.org/software/gnuradio/
|
2014-10-13 14:46:33 +02:00
|
|
|
LICENSE= gnu-gpl-v3
|
|
|
|
|
2019-11-03 20:32:06 +01:00
|
|
|
USE_LANGUAGES= c c++
|
|
|
|
USE_TOOLS= perl gmake cmake pkg-config
|
|
|
|
USE_CMAKE= yes
|
|
|
|
LDFLAGS.NetBSD+= -lrt
|
2019-10-14 14:40:27 +02:00
|
|
|
|
gnuradio-core: update to 3.8.1.0
Here is a very high level list of changes:
## Changed
### 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.
2020-08-30 22:43:46 +02:00
|
|
|
DEPENDS+= ${PYPKGPREFIX}-cheetah-[0-9]*:../../devel/py-cheetah3
|
Update ham/gnuradio-* from 3.7.11 to 3.7.13.3
## [3.7.13.3] - 2018-06-13
### Fixed
#### Project Scope
- For non-C++11 compilers, the new cstdint include doesn't work out; conditionalized it.
## [3.7.13.2] - 2018-05-31
### Fixed
#### Project Scope
- Actually bumped version in CMakeLists.txt to 3.7.13.2; the 3.7.13.1 tag was tagged off-branch; maintainer failure to simultaneously push a commit that raises the internal version number to 3.7.14.0: this had to be reverted ASAP.
## [3.7.13.1] - 2018-05-31
### Fixed
#### Project Scope
- Actually bumped version in CMakeLists.txt
## [3.7.13.0] - 2018-05-31
### Fixed
#### Project Scope
- `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
- CMake: using regex to match compiler against "Clang" now enables correct build on OS X
#### 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
## [3.7.12.0] - 2018-04-01
### Software Engineering
- Changed Changelog format
- Introducing Semantic Versioning
- Change of development model: Rather than merging bugfixes to maint, merging maint to master, and next, if applicable, we'll be moving forward more in a typical management model: Development happens on master, and bugfixes are cherrypicked onto the maint-${RELEASE} branch. More info: http://lists.gnu.org/archive/html/discuss-gnuradio/2018-02/msg00133.html
- First attempt at having a .clang-format file to improve code contribution style quality. This is Work In Progress.
### Fixed
#### Project Scope
- Buildability on systems where custom CMake command would try to find "" (empty string) as executable
- Buildable with C++11 compilers (though deprecation warning-rich, due to `unique_ptr`)
- several previously improperly handled include directories now actually included in individual lib/CMakeLists
- Unit test/QA now parallelizable
- Logger works with log4cpp <= 1.1.2 both in and out of tree
- Python linkage under MinGW64
- Documentation Directory now uniformly "docs/" (instead of sometimes "doc/")
- `log` vs `logf` performance bugs
- on-time `pmt::mp("string")` calls (instead of cached PMTs) performance bug
- Doxygen build now reproducible
#### GRC
- Dialogs' parent windows
- Embedded Python Blocks now work in hierarchical GRC flow graphs
#### gnuradio-runtime
- `random.h`: Uniform integer Generation depended on Boost version > min version
- `random.h`: time-dependency when seeding with `0` replaced with actual standard seed
- block startup now synchronized via barrier
- New tag propagation policy "custom" for own implementation
- `get_tags_in_range` used `v.resize(0)` to clear vectors, which lead to unnecessary memory reallocations
- `logger_ptr` now always a pointer, no matter whether logging is enabled; fixes heap corruption bug
- `buffer[_reader]_sptr` superfluous grab/release performance bug
- BSD threading and shared mem compatibility
- PMT: `equal()` comparison
#### gr-utils
- Sorted files in `gr_modtool` makexml processing, leading to improved reproducibility of builds
#### gr-audio
- OS X: memcpy bug
- OS X: debug mode
- Non-Linux ALSA compatibibilty
#### gr-analog
- `fmdet_cf` now has GRC file
- `fastnoise_source`: non-threadsafe `libc` `rand()` replaced by XOROSHIRO128+
#### gr-blocks
- `simple_copy` Ctrlport example
- Metadata sink/source not closing file on `close()`
- `multiply_matrix` formerly used "magic int" value where its API expected enum (and that int wasn't covered)
- TCP connection ASIO bug
- `tags_strobe`: superfluous tags addition
- `vector_sink`: multithreading hazards on `data` access
- `tuntap_pdu`: MTU-sized IP packet reception
- `socket_pdu`: Garbage Collect closed TCP connections
#### gr-channels
- IQ imbalance block formula now mathematically correct now mathematically correct
- `selective_fading_model`: proper scaling of path length
#### gr-digital
- `additive_scrambler_bb`: tag triggered reset
- `stream_to_tagged_stream`: tag offset after `unlock()`
- `blks2/packet.py`: Flushing for small packets
- `interpolating_resampler`: GCC 4.0 compile error
- `constellation`: 16QAM demapper was wrong for one constellation point
- `chunks_to_symbols`: mutex-guard LUT against modification during use
- MSVC compatibility throug `and` -> `&&` etc
- `crc32_bb`: handle unpacked bytes correctly
- `ofdm_carrier_allocator`: catching wrong allocations instead of crashing
#### gr-dtv
- All examples now are installed
- DVB-T2: Removed L1 post scrambling in spec v1.1.1 mode
#### gr-fcd
- Building on non-Linux systems
- Extended symbol bug in Reed-Solomon encoder
- DVB-T Cell identifier
#### gr-fcd
- Building on non-Linux systems
#### gr-fec
- `channel_construction.py`: return int frozen bit output
- `GSL_LDFLAGS` propagation
- `polar_decoder` used to be flaky
#### gr-fft
- locking of fftw wisdom
- `window.cc`: removed NaN due to FP math
- compilation under MinGW
- `logpwrfft.py` reference scaling integer division bug
#### gr-filter
- Simpson's rule code removed in favor of GSL call
#### gr-qtgui
- Time sink: Segfault with tag trigger
#### gr-uhd
- Antenna selection in UHD apps
- `uhd_fft` scalar gain-capability
- Device selection for multi-device operations in UHD apps
- TX streamer creation
#### gr-zeromq
- Multi-part messages reception
### Added
#### Project Scope
- Ninja (https://ninja-build.org) now a supported build system
#### gnuradio-runtime
- Python can now get `gr.WORK_CALLED_PRODUCE` and `gr.DONE`
#### gr-utils
- `gr_modtool`: Autocompletion, line editing
- `gr_modtool`: `copyrightholder` option
#### GRC
- "Create Duplicate"
- "Save a copy"
- BokehGUI
#### gr-blocks
- New `tag_share` block: take tags from one two input streams to one output stream
- `tag_gate`: tag filtering
- `file_source`: configurable `file_begin` stream tag
- `moving_average`: Vector mode (with element-wise MA)
- `plateau_detector`: threshold get/set
#### gr-digital
- `costas_loop_cc`: Optional loop variable outputs
- New `correlate_access_code_tag` block
- `glfsr` exposed through Python
#### gr-dtv
- 256QAM mode for ITU-T J.83B transmitter
#### gr-fec
- negative Polynomials in `cc_encoder`
#### gr-filter
- `symbol_sync_{cc|ff}`
#### gr-uhd
- `uhd_app.py`: selectable time/clock sources
- make `recv()` call's timeout parameterizable
- message-based RX tuning through sink, TX through source
### Changed
#### Project Scope
- VOLK version requirement: 1.4.0
- Minimal required SWIG version now 2.0.4
- GSL optional dependency
- Threw out completely unused `gr_??int` types
- Doxygen build no longer contains timestamps
- Doxygen build now reproducible
- Though factually before, now officially include ZeroMQ and Sphinx as optional dependencies in docs
#### gnuradio-runtime
- Python gateway allows variable number of ports
#### gr-utils
- `gr_modtool`: Block template now uses `numpy.float32` instead of float. 32bit float is actually the default GNU Radio type.e.
#### gr-blocks
- `vector_sink` can preallocate memory for desired amount of items
#### gr-digital
- `header_format_default` now sps>1-capable
- `correlate_acces_code` uses `GR_LOG`
#### gr-uhd
- `uhd_fft`: respect `lo_offset` in `set_bandwidth`
- `usrp_source`: freq tag now actually reflects last set frequency, even on multiple channels
#### gr-qtgui
- Labels: now with 98.121212388% improved floating point formatting
- Time Sink: Stem plot option exposed
### Deprecated
#### gnuradio-runtime
- `gr::sys_pri`
2018-07-16 09:55:22 +02:00
|
|
|
DEPENDS+= ${PYPKGPREFIX}-six-[0-9]*:../../lang/py-six
|
2014-10-13 14:46:33 +02:00
|
|
|
# gr_filter_design in gnuradio-core ask for:
|
gnuradio-core: update to 3.8.1.0
Here is a very high level list of changes:
## Changed
### 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.
2020-08-30 22:43:46 +02:00
|
|
|
DEPENDS+= ${PYPKGPREFIX}-qwt-qt5-[0-9]*:../../x11/py-qwt-qt5
|
|
|
|
DEPENDS+= ${PYPKGPREFIX}-mako-[0-9]*:../../devel/py-mako
|
|
|
|
DEPENDS+= ${PYPKGPREFIX}-cairo-[0-9]*:../../graphics/py-cairo
|
|
|
|
DEPENDS+= ${PYPKGPREFIX}-yaml-[0-9]*:../../textproc/py-yaml
|
|
|
|
DEPENDS+= ${PYPKGPREFIX}-numpy-[0-9]*:../../math/py-numpy
|
|
|
|
DEPENDS+= ${PYPKGPREFIX}-gobject3-[0-9]*:../../devel/py-gobject3
|
2014-10-13 14:46:33 +02:00
|
|
|
|
|
|
|
DISTINFO_FILE= ${.CURDIR}/../../ham/gnuradio-core/distinfo
|
|
|
|
PATCHDIR= ${.CURDIR}/../../ham/gnuradio-core/patches
|
|
|
|
|
2020-12-30 10:26:52 +01:00
|
|
|
# see CMakeLists.txt GR_PYTHON_MIN_VERSION
|
|
|
|
PYTHON_VERSIONS_INCOMPATIBLE= 27
|
|
|
|
|
2014-10-13 14:46:33 +02:00
|
|
|
PLIST_SUBST+= PYVERSSUFFIX=${PYVERSSUFFIX}
|
|
|
|
PLIST_SUBST+= PYSITELIB=${PYSITELIB}
|
|
|
|
PY_PATCHPLIST= yes
|
|
|
|
|
|
|
|
CONFIGURE_DIRS= build
|
|
|
|
|
2015-12-06 16:34:15 +01:00
|
|
|
EGDIR= share/gnuradio/examples
|
2014-10-13 14:46:33 +02:00
|
|
|
PKG_SYSCONFSUBDIR= gnuradio/conf.d
|
|
|
|
|
2017-01-13 23:03:35 +01:00
|
|
|
CXXFLAGS+= -pthread
|
gnuradio-core: update to 3.8.1.0
Here is a very high level list of changes:
## Changed
### 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.
2020-08-30 22:43:46 +02:00
|
|
|
CFLAGS+= -pthread
|
2014-10-13 14:46:33 +02:00
|
|
|
LDFLAGS.DragonFly+= -lboost_system
|
|
|
|
LDFLAGS.SunOS+= -lboost_system
|
2014-10-24 09:57:50 +02:00
|
|
|
CXXFLAGS.SunOS+= -pthreads
|
2014-10-13 14:46:33 +02:00
|
|
|
|
|
|
|
INSTALLATION_DIRS+= ${EGDIR}
|
|
|
|
|
|
|
|
# -------- R E S E T CMAKE_ARGS H E R E -------------
|
|
|
|
CMAKE_ARGS=
|
|
|
|
|
|
|
|
# set default as minimum
|
|
|
|
# See http://gnuradio.org/redmine/projects/gnuradio/wiki/BuildGuide
|
|
|
|
# http://gnuradio.org/redmine/projects/gnuradio/wiki/CygwinInstallMain
|
|
|
|
|
|
|
|
CMAKE_ARGS+= -DENABLE_GNURADIO_RUNTIME=ON
|
|
|
|
CMAKE_ARGS+= -DENABLE_GR_ANALOG=ON
|
|
|
|
CMAKE_ARGS+= -DENABLE_GR_AUDIO=ON
|
|
|
|
CMAKE_ARGS+= -DENABLE_GR_BLOCKS=ON
|
|
|
|
CMAKE_ARGS+= -DENABLE_GR_FFT=ON
|
|
|
|
CMAKE_ARGS+= -DENABLE_GR_FILTER=ON
|
|
|
|
CMAKE_ARGS+= -DENABLE_PYTHON=ON
|
2020-08-01 09:49:26 +02:00
|
|
|
CMAKE_ARGS+= -DENABLE_VOLK=ON -DENABLE_INTERNAL_VOLK=OFF
|
Update ham/gnuradio-* from 3.7.11 to 3.7.13.3
## [3.7.13.3] - 2018-06-13
### Fixed
#### Project Scope
- For non-C++11 compilers, the new cstdint include doesn't work out; conditionalized it.
## [3.7.13.2] - 2018-05-31
### Fixed
#### Project Scope
- Actually bumped version in CMakeLists.txt to 3.7.13.2; the 3.7.13.1 tag was tagged off-branch; maintainer failure to simultaneously push a commit that raises the internal version number to 3.7.14.0: this had to be reverted ASAP.
## [3.7.13.1] - 2018-05-31
### Fixed
#### Project Scope
- Actually bumped version in CMakeLists.txt
## [3.7.13.0] - 2018-05-31
### Fixed
#### Project Scope
- `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
- CMake: using regex to match compiler against "Clang" now enables correct build on OS X
#### 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
## [3.7.12.0] - 2018-04-01
### Software Engineering
- Changed Changelog format
- Introducing Semantic Versioning
- Change of development model: Rather than merging bugfixes to maint, merging maint to master, and next, if applicable, we'll be moving forward more in a typical management model: Development happens on master, and bugfixes are cherrypicked onto the maint-${RELEASE} branch. More info: http://lists.gnu.org/archive/html/discuss-gnuradio/2018-02/msg00133.html
- First attempt at having a .clang-format file to improve code contribution style quality. This is Work In Progress.
### Fixed
#### Project Scope
- Buildability on systems where custom CMake command would try to find "" (empty string) as executable
- Buildable with C++11 compilers (though deprecation warning-rich, due to `unique_ptr`)
- several previously improperly handled include directories now actually included in individual lib/CMakeLists
- Unit test/QA now parallelizable
- Logger works with log4cpp <= 1.1.2 both in and out of tree
- Python linkage under MinGW64
- Documentation Directory now uniformly "docs/" (instead of sometimes "doc/")
- `log` vs `logf` performance bugs
- on-time `pmt::mp("string")` calls (instead of cached PMTs) performance bug
- Doxygen build now reproducible
#### GRC
- Dialogs' parent windows
- Embedded Python Blocks now work in hierarchical GRC flow graphs
#### gnuradio-runtime
- `random.h`: Uniform integer Generation depended on Boost version > min version
- `random.h`: time-dependency when seeding with `0` replaced with actual standard seed
- block startup now synchronized via barrier
- New tag propagation policy "custom" for own implementation
- `get_tags_in_range` used `v.resize(0)` to clear vectors, which lead to unnecessary memory reallocations
- `logger_ptr` now always a pointer, no matter whether logging is enabled; fixes heap corruption bug
- `buffer[_reader]_sptr` superfluous grab/release performance bug
- BSD threading and shared mem compatibility
- PMT: `equal()` comparison
#### gr-utils
- Sorted files in `gr_modtool` makexml processing, leading to improved reproducibility of builds
#### gr-audio
- OS X: memcpy bug
- OS X: debug mode
- Non-Linux ALSA compatibibilty
#### gr-analog
- `fmdet_cf` now has GRC file
- `fastnoise_source`: non-threadsafe `libc` `rand()` replaced by XOROSHIRO128+
#### gr-blocks
- `simple_copy` Ctrlport example
- Metadata sink/source not closing file on `close()`
- `multiply_matrix` formerly used "magic int" value where its API expected enum (and that int wasn't covered)
- TCP connection ASIO bug
- `tags_strobe`: superfluous tags addition
- `vector_sink`: multithreading hazards on `data` access
- `tuntap_pdu`: MTU-sized IP packet reception
- `socket_pdu`: Garbage Collect closed TCP connections
#### gr-channels
- IQ imbalance block formula now mathematically correct now mathematically correct
- `selective_fading_model`: proper scaling of path length
#### gr-digital
- `additive_scrambler_bb`: tag triggered reset
- `stream_to_tagged_stream`: tag offset after `unlock()`
- `blks2/packet.py`: Flushing for small packets
- `interpolating_resampler`: GCC 4.0 compile error
- `constellation`: 16QAM demapper was wrong for one constellation point
- `chunks_to_symbols`: mutex-guard LUT against modification during use
- MSVC compatibility throug `and` -> `&&` etc
- `crc32_bb`: handle unpacked bytes correctly
- `ofdm_carrier_allocator`: catching wrong allocations instead of crashing
#### gr-dtv
- All examples now are installed
- DVB-T2: Removed L1 post scrambling in spec v1.1.1 mode
#### gr-fcd
- Building on non-Linux systems
- Extended symbol bug in Reed-Solomon encoder
- DVB-T Cell identifier
#### gr-fcd
- Building on non-Linux systems
#### gr-fec
- `channel_construction.py`: return int frozen bit output
- `GSL_LDFLAGS` propagation
- `polar_decoder` used to be flaky
#### gr-fft
- locking of fftw wisdom
- `window.cc`: removed NaN due to FP math
- compilation under MinGW
- `logpwrfft.py` reference scaling integer division bug
#### gr-filter
- Simpson's rule code removed in favor of GSL call
#### gr-qtgui
- Time sink: Segfault with tag trigger
#### gr-uhd
- Antenna selection in UHD apps
- `uhd_fft` scalar gain-capability
- Device selection for multi-device operations in UHD apps
- TX streamer creation
#### gr-zeromq
- Multi-part messages reception
### Added
#### Project Scope
- Ninja (https://ninja-build.org) now a supported build system
#### gnuradio-runtime
- Python can now get `gr.WORK_CALLED_PRODUCE` and `gr.DONE`
#### gr-utils
- `gr_modtool`: Autocompletion, line editing
- `gr_modtool`: `copyrightholder` option
#### GRC
- "Create Duplicate"
- "Save a copy"
- BokehGUI
#### gr-blocks
- New `tag_share` block: take tags from one two input streams to one output stream
- `tag_gate`: tag filtering
- `file_source`: configurable `file_begin` stream tag
- `moving_average`: Vector mode (with element-wise MA)
- `plateau_detector`: threshold get/set
#### gr-digital
- `costas_loop_cc`: Optional loop variable outputs
- New `correlate_access_code_tag` block
- `glfsr` exposed through Python
#### gr-dtv
- 256QAM mode for ITU-T J.83B transmitter
#### gr-fec
- negative Polynomials in `cc_encoder`
#### gr-filter
- `symbol_sync_{cc|ff}`
#### gr-uhd
- `uhd_app.py`: selectable time/clock sources
- make `recv()` call's timeout parameterizable
- message-based RX tuning through sink, TX through source
### Changed
#### Project Scope
- VOLK version requirement: 1.4.0
- Minimal required SWIG version now 2.0.4
- GSL optional dependency
- Threw out completely unused `gr_??int` types
- Doxygen build no longer contains timestamps
- Doxygen build now reproducible
- Though factually before, now officially include ZeroMQ and Sphinx as optional dependencies in docs
#### gnuradio-runtime
- Python gateway allows variable number of ports
#### gr-utils
- `gr_modtool`: Block template now uses `numpy.float32` instead of float. 32bit float is actually the default GNU Radio type.e.
#### gr-blocks
- `vector_sink` can preallocate memory for desired amount of items
#### gr-digital
- `header_format_default` now sps>1-capable
- `correlate_acces_code` uses `GR_LOG`
#### gr-uhd
- `uhd_fft`: respect `lo_offset` in `set_bandwidth`
- `usrp_source`: freq tag now actually reflects last set frequency, even on multiple channels
#### gr-qtgui
- Labels: now with 98.121212388% improved floating point formatting
- Time Sink: Stem plot option exposed
### Deprecated
#### gnuradio-runtime
- `gr::sys_pri`
2018-07-16 09:55:22 +02:00
|
|
|
CMAKE_ARGS+= -DCMAKE_HAVE_PTHREADS_CREATE=OFF
|
2014-10-13 14:46:33 +02:00
|
|
|
|
|
|
|
# Default setting (for pkgsrc)
|
|
|
|
CMAKE_ARGS+= -Wno-dev
|
|
|
|
CMAKE_ARGS+= -DCMAKE_BUILD_WITH_INSTALL_RPATH=TRUE
|
|
|
|
CMAKE_ARGS+= -DCMAKE_INCLUDE_PATH=${PREFIX}/include/portaudio2
|
|
|
|
CMAKE_ARGS+= -DCMAKE_LIBRARY_PATH=${PREFIX}/lib/portaudio2
|
|
|
|
CMAKE_ARGS+= -DCMAKE_INSTALL_RPATH=${PREFIX}/lib:${PREFIX}/lib/portaudio2
|
|
|
|
CMAKE_ARGS+= -DCMAKE_INSTALL_RPATH_USE_LINK_PATH=TRUE
|
|
|
|
CMAKE_ARGS+= -DLIBUSB_INCLUDE_DIR=${PREFIX}/include/libusb-1.0
|
|
|
|
|
2021-04-05 09:02:52 +02:00
|
|
|
CMAKE_ARGS+= -DGR_LIBRARY_DIR=${PREFIX}/lib
|
2015-11-26 21:53:52 +01:00
|
|
|
CMAKE_ARGS+= -DGR_PREFSDIR=${PREFIX}/share/gnuradio/examples/
|
2014-10-13 14:46:33 +02:00
|
|
|
|
Update ham/gnuradio-* from 3.7.11 to 3.7.13.3
## [3.7.13.3] - 2018-06-13
### Fixed
#### Project Scope
- For non-C++11 compilers, the new cstdint include doesn't work out; conditionalized it.
## [3.7.13.2] - 2018-05-31
### Fixed
#### Project Scope
- Actually bumped version in CMakeLists.txt to 3.7.13.2; the 3.7.13.1 tag was tagged off-branch; maintainer failure to simultaneously push a commit that raises the internal version number to 3.7.14.0: this had to be reverted ASAP.
## [3.7.13.1] - 2018-05-31
### Fixed
#### Project Scope
- Actually bumped version in CMakeLists.txt
## [3.7.13.0] - 2018-05-31
### Fixed
#### Project Scope
- `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
- CMake: using regex to match compiler against "Clang" now enables correct build on OS X
#### 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
## [3.7.12.0] - 2018-04-01
### Software Engineering
- Changed Changelog format
- Introducing Semantic Versioning
- Change of development model: Rather than merging bugfixes to maint, merging maint to master, and next, if applicable, we'll be moving forward more in a typical management model: Development happens on master, and bugfixes are cherrypicked onto the maint-${RELEASE} branch. More info: http://lists.gnu.org/archive/html/discuss-gnuradio/2018-02/msg00133.html
- First attempt at having a .clang-format file to improve code contribution style quality. This is Work In Progress.
### Fixed
#### Project Scope
- Buildability on systems where custom CMake command would try to find "" (empty string) as executable
- Buildable with C++11 compilers (though deprecation warning-rich, due to `unique_ptr`)
- several previously improperly handled include directories now actually included in individual lib/CMakeLists
- Unit test/QA now parallelizable
- Logger works with log4cpp <= 1.1.2 both in and out of tree
- Python linkage under MinGW64
- Documentation Directory now uniformly "docs/" (instead of sometimes "doc/")
- `log` vs `logf` performance bugs
- on-time `pmt::mp("string")` calls (instead of cached PMTs) performance bug
- Doxygen build now reproducible
#### GRC
- Dialogs' parent windows
- Embedded Python Blocks now work in hierarchical GRC flow graphs
#### gnuradio-runtime
- `random.h`: Uniform integer Generation depended on Boost version > min version
- `random.h`: time-dependency when seeding with `0` replaced with actual standard seed
- block startup now synchronized via barrier
- New tag propagation policy "custom" for own implementation
- `get_tags_in_range` used `v.resize(0)` to clear vectors, which lead to unnecessary memory reallocations
- `logger_ptr` now always a pointer, no matter whether logging is enabled; fixes heap corruption bug
- `buffer[_reader]_sptr` superfluous grab/release performance bug
- BSD threading and shared mem compatibility
- PMT: `equal()` comparison
#### gr-utils
- Sorted files in `gr_modtool` makexml processing, leading to improved reproducibility of builds
#### gr-audio
- OS X: memcpy bug
- OS X: debug mode
- Non-Linux ALSA compatibibilty
#### gr-analog
- `fmdet_cf` now has GRC file
- `fastnoise_source`: non-threadsafe `libc` `rand()` replaced by XOROSHIRO128+
#### gr-blocks
- `simple_copy` Ctrlport example
- Metadata sink/source not closing file on `close()`
- `multiply_matrix` formerly used "magic int" value where its API expected enum (and that int wasn't covered)
- TCP connection ASIO bug
- `tags_strobe`: superfluous tags addition
- `vector_sink`: multithreading hazards on `data` access
- `tuntap_pdu`: MTU-sized IP packet reception
- `socket_pdu`: Garbage Collect closed TCP connections
#### gr-channels
- IQ imbalance block formula now mathematically correct now mathematically correct
- `selective_fading_model`: proper scaling of path length
#### gr-digital
- `additive_scrambler_bb`: tag triggered reset
- `stream_to_tagged_stream`: tag offset after `unlock()`
- `blks2/packet.py`: Flushing for small packets
- `interpolating_resampler`: GCC 4.0 compile error
- `constellation`: 16QAM demapper was wrong for one constellation point
- `chunks_to_symbols`: mutex-guard LUT against modification during use
- MSVC compatibility throug `and` -> `&&` etc
- `crc32_bb`: handle unpacked bytes correctly
- `ofdm_carrier_allocator`: catching wrong allocations instead of crashing
#### gr-dtv
- All examples now are installed
- DVB-T2: Removed L1 post scrambling in spec v1.1.1 mode
#### gr-fcd
- Building on non-Linux systems
- Extended symbol bug in Reed-Solomon encoder
- DVB-T Cell identifier
#### gr-fcd
- Building on non-Linux systems
#### gr-fec
- `channel_construction.py`: return int frozen bit output
- `GSL_LDFLAGS` propagation
- `polar_decoder` used to be flaky
#### gr-fft
- locking of fftw wisdom
- `window.cc`: removed NaN due to FP math
- compilation under MinGW
- `logpwrfft.py` reference scaling integer division bug
#### gr-filter
- Simpson's rule code removed in favor of GSL call
#### gr-qtgui
- Time sink: Segfault with tag trigger
#### gr-uhd
- Antenna selection in UHD apps
- `uhd_fft` scalar gain-capability
- Device selection for multi-device operations in UHD apps
- TX streamer creation
#### gr-zeromq
- Multi-part messages reception
### Added
#### Project Scope
- Ninja (https://ninja-build.org) now a supported build system
#### gnuradio-runtime
- Python can now get `gr.WORK_CALLED_PRODUCE` and `gr.DONE`
#### gr-utils
- `gr_modtool`: Autocompletion, line editing
- `gr_modtool`: `copyrightholder` option
#### GRC
- "Create Duplicate"
- "Save a copy"
- BokehGUI
#### gr-blocks
- New `tag_share` block: take tags from one two input streams to one output stream
- `tag_gate`: tag filtering
- `file_source`: configurable `file_begin` stream tag
- `moving_average`: Vector mode (with element-wise MA)
- `plateau_detector`: threshold get/set
#### gr-digital
- `costas_loop_cc`: Optional loop variable outputs
- New `correlate_access_code_tag` block
- `glfsr` exposed through Python
#### gr-dtv
- 256QAM mode for ITU-T J.83B transmitter
#### gr-fec
- negative Polynomials in `cc_encoder`
#### gr-filter
- `symbol_sync_{cc|ff}`
#### gr-uhd
- `uhd_app.py`: selectable time/clock sources
- make `recv()` call's timeout parameterizable
- message-based RX tuning through sink, TX through source
### Changed
#### Project Scope
- VOLK version requirement: 1.4.0
- Minimal required SWIG version now 2.0.4
- GSL optional dependency
- Threw out completely unused `gr_??int` types
- Doxygen build no longer contains timestamps
- Doxygen build now reproducible
- Though factually before, now officially include ZeroMQ and Sphinx as optional dependencies in docs
#### gnuradio-runtime
- Python gateway allows variable number of ports
#### gr-utils
- `gr_modtool`: Block template now uses `numpy.float32` instead of float. 32bit float is actually the default GNU Radio type.e.
#### gr-blocks
- `vector_sink` can preallocate memory for desired amount of items
#### gr-digital
- `header_format_default` now sps>1-capable
- `correlate_acces_code` uses `GR_LOG`
#### gr-uhd
- `uhd_fft`: respect `lo_offset` in `set_bandwidth`
- `usrp_source`: freq tag now actually reflects last set frequency, even on multiple channels
#### gr-qtgui
- Labels: now with 98.121212388% improved floating point formatting
- Time Sink: Stem plot option exposed
### Deprecated
#### gnuradio-runtime
- `gr::sys_pri`
2018-07-16 09:55:22 +02:00
|
|
|
# adhoc setup not to pick non default version (say python3.6)
|
|
|
|
# at configure
|
gnuradio-core: update to 3.8.1.0
Here is a very high level list of changes:
## Changed
### 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.
2020-08-30 22:43:46 +02:00
|
|
|
#MAKE_ARGS+= -DPYTHON_EXECUTABLE=${PREFIX}/bin/python${PYVERSSUFFIX}
|
Update ham/gnuradio-* from 3.7.11 to 3.7.13.3
## [3.7.13.3] - 2018-06-13
### Fixed
#### Project Scope
- For non-C++11 compilers, the new cstdint include doesn't work out; conditionalized it.
## [3.7.13.2] - 2018-05-31
### Fixed
#### Project Scope
- Actually bumped version in CMakeLists.txt to 3.7.13.2; the 3.7.13.1 tag was tagged off-branch; maintainer failure to simultaneously push a commit that raises the internal version number to 3.7.14.0: this had to be reverted ASAP.
## [3.7.13.1] - 2018-05-31
### Fixed
#### Project Scope
- Actually bumped version in CMakeLists.txt
## [3.7.13.0] - 2018-05-31
### Fixed
#### Project Scope
- `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
- CMake: using regex to match compiler against "Clang" now enables correct build on OS X
#### 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
## [3.7.12.0] - 2018-04-01
### Software Engineering
- Changed Changelog format
- Introducing Semantic Versioning
- Change of development model: Rather than merging bugfixes to maint, merging maint to master, and next, if applicable, we'll be moving forward more in a typical management model: Development happens on master, and bugfixes are cherrypicked onto the maint-${RELEASE} branch. More info: http://lists.gnu.org/archive/html/discuss-gnuradio/2018-02/msg00133.html
- First attempt at having a .clang-format file to improve code contribution style quality. This is Work In Progress.
### Fixed
#### Project Scope
- Buildability on systems where custom CMake command would try to find "" (empty string) as executable
- Buildable with C++11 compilers (though deprecation warning-rich, due to `unique_ptr`)
- several previously improperly handled include directories now actually included in individual lib/CMakeLists
- Unit test/QA now parallelizable
- Logger works with log4cpp <= 1.1.2 both in and out of tree
- Python linkage under MinGW64
- Documentation Directory now uniformly "docs/" (instead of sometimes "doc/")
- `log` vs `logf` performance bugs
- on-time `pmt::mp("string")` calls (instead of cached PMTs) performance bug
- Doxygen build now reproducible
#### GRC
- Dialogs' parent windows
- Embedded Python Blocks now work in hierarchical GRC flow graphs
#### gnuradio-runtime
- `random.h`: Uniform integer Generation depended on Boost version > min version
- `random.h`: time-dependency when seeding with `0` replaced with actual standard seed
- block startup now synchronized via barrier
- New tag propagation policy "custom" for own implementation
- `get_tags_in_range` used `v.resize(0)` to clear vectors, which lead to unnecessary memory reallocations
- `logger_ptr` now always a pointer, no matter whether logging is enabled; fixes heap corruption bug
- `buffer[_reader]_sptr` superfluous grab/release performance bug
- BSD threading and shared mem compatibility
- PMT: `equal()` comparison
#### gr-utils
- Sorted files in `gr_modtool` makexml processing, leading to improved reproducibility of builds
#### gr-audio
- OS X: memcpy bug
- OS X: debug mode
- Non-Linux ALSA compatibibilty
#### gr-analog
- `fmdet_cf` now has GRC file
- `fastnoise_source`: non-threadsafe `libc` `rand()` replaced by XOROSHIRO128+
#### gr-blocks
- `simple_copy` Ctrlport example
- Metadata sink/source not closing file on `close()`
- `multiply_matrix` formerly used "magic int" value where its API expected enum (and that int wasn't covered)
- TCP connection ASIO bug
- `tags_strobe`: superfluous tags addition
- `vector_sink`: multithreading hazards on `data` access
- `tuntap_pdu`: MTU-sized IP packet reception
- `socket_pdu`: Garbage Collect closed TCP connections
#### gr-channels
- IQ imbalance block formula now mathematically correct now mathematically correct
- `selective_fading_model`: proper scaling of path length
#### gr-digital
- `additive_scrambler_bb`: tag triggered reset
- `stream_to_tagged_stream`: tag offset after `unlock()`
- `blks2/packet.py`: Flushing for small packets
- `interpolating_resampler`: GCC 4.0 compile error
- `constellation`: 16QAM demapper was wrong for one constellation point
- `chunks_to_symbols`: mutex-guard LUT against modification during use
- MSVC compatibility throug `and` -> `&&` etc
- `crc32_bb`: handle unpacked bytes correctly
- `ofdm_carrier_allocator`: catching wrong allocations instead of crashing
#### gr-dtv
- All examples now are installed
- DVB-T2: Removed L1 post scrambling in spec v1.1.1 mode
#### gr-fcd
- Building on non-Linux systems
- Extended symbol bug in Reed-Solomon encoder
- DVB-T Cell identifier
#### gr-fcd
- Building on non-Linux systems
#### gr-fec
- `channel_construction.py`: return int frozen bit output
- `GSL_LDFLAGS` propagation
- `polar_decoder` used to be flaky
#### gr-fft
- locking of fftw wisdom
- `window.cc`: removed NaN due to FP math
- compilation under MinGW
- `logpwrfft.py` reference scaling integer division bug
#### gr-filter
- Simpson's rule code removed in favor of GSL call
#### gr-qtgui
- Time sink: Segfault with tag trigger
#### gr-uhd
- Antenna selection in UHD apps
- `uhd_fft` scalar gain-capability
- Device selection for multi-device operations in UHD apps
- TX streamer creation
#### gr-zeromq
- Multi-part messages reception
### Added
#### Project Scope
- Ninja (https://ninja-build.org) now a supported build system
#### gnuradio-runtime
- Python can now get `gr.WORK_CALLED_PRODUCE` and `gr.DONE`
#### gr-utils
- `gr_modtool`: Autocompletion, line editing
- `gr_modtool`: `copyrightholder` option
#### GRC
- "Create Duplicate"
- "Save a copy"
- BokehGUI
#### gr-blocks
- New `tag_share` block: take tags from one two input streams to one output stream
- `tag_gate`: tag filtering
- `file_source`: configurable `file_begin` stream tag
- `moving_average`: Vector mode (with element-wise MA)
- `plateau_detector`: threshold get/set
#### gr-digital
- `costas_loop_cc`: Optional loop variable outputs
- New `correlate_access_code_tag` block
- `glfsr` exposed through Python
#### gr-dtv
- 256QAM mode for ITU-T J.83B transmitter
#### gr-fec
- negative Polynomials in `cc_encoder`
#### gr-filter
- `symbol_sync_{cc|ff}`
#### gr-uhd
- `uhd_app.py`: selectable time/clock sources
- make `recv()` call's timeout parameterizable
- message-based RX tuning through sink, TX through source
### Changed
#### Project Scope
- VOLK version requirement: 1.4.0
- Minimal required SWIG version now 2.0.4
- GSL optional dependency
- Threw out completely unused `gr_??int` types
- Doxygen build no longer contains timestamps
- Doxygen build now reproducible
- Though factually before, now officially include ZeroMQ and Sphinx as optional dependencies in docs
#### gnuradio-runtime
- Python gateway allows variable number of ports
#### gr-utils
- `gr_modtool`: Block template now uses `numpy.float32` instead of float. 32bit float is actually the default GNU Radio type.e.
#### gr-blocks
- `vector_sink` can preallocate memory for desired amount of items
#### gr-digital
- `header_format_default` now sps>1-capable
- `correlate_acces_code` uses `GR_LOG`
#### gr-uhd
- `uhd_fft`: respect `lo_offset` in `set_bandwidth`
- `usrp_source`: freq tag now actually reflects last set frequency, even on multiple channels
#### gr-qtgui
- Labels: now with 98.121212388% improved floating point formatting
- Time Sink: Stem plot option exposed
### Deprecated
#### gnuradio-runtime
- `gr::sys_pri`
2018-07-16 09:55:22 +02:00
|
|
|
|
2014-10-13 14:46:33 +02:00
|
|
|
CMAKE_ARGS+= -DZEROMQ_INCLUDE_DIRS=${PREFIX}/include
|
|
|
|
CMAKE_ARG_PATH= ../
|
|
|
|
|
|
|
|
.include "options.mk"
|
|
|
|
|
gnuradio-core: update to 3.8.1.0
Here is a very high level list of changes:
## Changed
### 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.
2020-08-30 22:43:46 +02:00
|
|
|
# Fixes build errors w/ clang
|
|
|
|
SUBST_CLASSES+= boost
|
|
|
|
SUBST_MESSAGE.boost= prepend boost placeholders with namespace
|
|
|
|
SUBST_FILES.boost= */lib/*.cc
|
|
|
|
SUBST_SED.boost= -e 's, _1), boost::placeholders::_1),'
|
|
|
|
SUBST_STAGE.boost= pre-configure
|
|
|
|
|
2014-10-17 11:51:56 +02:00
|
|
|
# disable/enable ALSA, see also patches/patch-gr-audio_lib_CMakeLists.txt
|
|
|
|
SUBST_CLASSES+= alsa
|
|
|
|
SUBST_MESSAGE.alsa= Arrange the patched line depepending on alsa is in PKG_OPTIONS or not
|
|
|
|
SUBST_FILES.alsa+= gr-audio/lib/CMakeLists.txt
|
|
|
|
## The value of ${ALSA_ENABLED} is either '#' or '' by options.mk.
|
|
|
|
SUBST_SED.alsa= -e 's,@@ALSA@@,${ALSA_ENABLED},'
|
2018-07-04 15:40:07 +02:00
|
|
|
SUBST_STAGE.alsa= pre-configure
|
2014-10-17 11:51:56 +02:00
|
|
|
|
2015-03-07 06:10:45 +01:00
|
|
|
SUBST_CLASSES+= pyvers
|
|
|
|
SUBST_FILES.pyvers= cmake/Modules/FindSphinx.cmake
|
|
|
|
SUBST_MESSAGE.pyvers= Fix SPHINX_EXECUTABLE NAMES(sphinx-build)
|
|
|
|
SUBST_VARS.pyvers+= PYVERSSUFFIX
|
|
|
|
SUBST_STAGE.pyvers= pre-configure
|
|
|
|
|
gnuradio-core: update to 3.8.1.0
Here is a very high level list of changes:
## Changed
### 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.
2020-08-30 22:43:46 +02:00
|
|
|
REPLACE_PYTHON= */*.py */*/*.py */*/*/*.py */*/*/*/*.py */*/*/*/*/*.py \
|
2020-05-19 15:58:24 +02:00
|
|
|
*/*/*/*/*/*/*.py */*/*/*/*/*/*/*.py */*/*/*/*/*/*/*/*.py
|
2014-10-13 14:46:33 +02:00
|
|
|
|
|
|
|
pre-configure:
|
2020-05-19 15:58:24 +02:00
|
|
|
${MKDIR} ${WRKSRC}/build
|
2014-10-13 14:46:33 +02:00
|
|
|
|
|
|
|
do-install:
|
2020-05-19 15:58:24 +02:00
|
|
|
cd ${WRKSRC}/${BUILD_DIRS} && ${GMAKE} DESTDIR=${DESTDIR} install
|
2014-10-13 14:46:33 +02:00
|
|
|
|
|
|
|
.include "../../audio/gsm/buildlink3.mk"
|
|
|
|
.include "../../audio/jack/buildlink3.mk"
|
2019-10-20 13:10:47 +02:00
|
|
|
.include "../../audio/portaudio/buildlink3.mk"
|
2014-10-13 14:46:33 +02:00
|
|
|
|
|
|
|
.include "../../devel/boost-headers/buildlink3.mk"
|
|
|
|
.include "../../devel/boost-libs/buildlink3.mk"
|
2017-01-13 23:03:35 +01:00
|
|
|
.include "../../devel/cppunit/buildlink3.mk"
|
gnuradio-core: update to 3.8.1.0
Here is a very high level list of changes:
## Changed
### 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.
2020-08-30 22:43:46 +02:00
|
|
|
.include "../../devel/gmp/buildlink3.mk"
|
|
|
|
.include "../../devel/swig3/buildlink3.mk"
|
2014-10-13 14:46:33 +02:00
|
|
|
|
|
|
|
.include "../../lang/python/application.mk"
|
|
|
|
.include "../../math/fftwf/buildlink3.mk"
|
2017-01-13 23:03:35 +01:00
|
|
|
.include "../../math/gsl/buildlink3.mk"
|
2020-08-01 09:49:26 +02:00
|
|
|
.include "../../math/volk/buildlink3.mk"
|
gnuradio-core: update to 3.8.1.0
Here is a very high level list of changes:
## Changed
### 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.
2020-08-30 22:43:46 +02:00
|
|
|
.include "../../textproc/log4cpp/buildlink3.mk"
|
|
|
|
.include "../../textproc/icu/buildlink3.mk"
|
|
|
|
.include "../../graphics/cairo/buildlink3.mk"
|
|
|
|
.include "../../graphics/cairo-gobject/buildlink3.mk"
|
|
|
|
.include "../../x11/gtk3/buildlink3.mk"
|