| ################################################################################ |
| # |
| # gnuradio |
| # |
| ################################################################################ |
| |
| GNURADIO_VERSION = 3.10.7.0 |
| GNURADIO_SITE = $(call github,gnuradio,gnuradio,v$(GNURADIO_VERSION)) |
| GNURADIO_LICENSE = GPL-3.0+ |
| GNURADIO_LICENSE_FILES = COPYING |
| |
| GNURADIO_SUPPORTS_IN_SOURCE_BUILD = NO |
| |
| GNURADIO_DEPENDENCIES = \ |
| host-python3 \ |
| boost \ |
| log4cpp \ |
| gmp \ |
| spdlog \ |
| volk |
| |
| GNURADIO_CONF_OPTS = \ |
| -DPYTHON_EXECUTABLE=$(HOST_DIR)/bin/python3 \ |
| -DENABLE_DEFAULT=OFF \ |
| -DENABLE_EXAMPLES=OFF \ |
| -DENABLE_GNURADIO_RUNTIME=ON \ |
| -DENABLE_TESTING=OFF \ |
| -DXMLTO_EXECUTABLE=NOTFOUND |
| |
| # For third-party blocks, the gnuradio libraries are mandatory at |
| # compile time. |
| GNURADIO_INSTALL_STAGING = YES |
| |
| ifeq ($(BR2_TOOLCHAIN_HAS_LIBATOMIC),y) |
| GNURADIO_CONF_OPTS += -DCMAKE_EXE_LINKER_FLAGS=-latomic |
| endif |
| |
| ifeq ($(BR2_PACKAGE_GNURADIO_ANALOG),y) |
| GNURADIO_CONF_OPTS += -DENABLE_GR_ANALOG=ON |
| else |
| GNURADIO_CONF_OPTS += -DENABLE_GR_ANALOG=OFF |
| endif |
| |
| ifeq ($(BR2_PACKAGE_GNURADIO_AUDIO),y) |
| ifeq ($(BR2_PACKAGE_ALSA_LIB),y) |
| GNURADIO_DEPENDENCIES += alsa-lib |
| endif |
| ifeq ($(BR2_PACKAGE_PORTAUDIO),y) |
| GNURADIO_DEPENDENCIES += portaudio |
| endif |
| GNURADIO_CONF_OPTS += -DENABLE_GR_AUDIO=ON |
| else |
| GNURADIO_CONF_OPTS += -DENABLE_GR_AUDIO=OFF |
| endif |
| |
| ifeq ($(BR2_PACKAGE_GNURADIO_BLOCKS),y) |
| GNURADIO_CONF_OPTS += -DENABLE_GR_BLOCKS=ON |
| ifeq ($(BR2_PACKAGE_LIBSNDFILE),y) |
| GNURADIO_DEPENDENCIES += libsndfile |
| endif |
| else |
| GNURADIO_CONF_OPTS += -DENABLE_GR_BLOCKS=OFF |
| endif |
| |
| ifeq ($(BR2_PACKAGE_GNURADIO_CHANNELS),y) |
| GNURADIO_CONF_OPTS += -DENABLE_GR_CHANNELS=ON |
| else |
| GNURADIO_CONF_OPTS += -DENABLE_GR_CHANNELS=OFF |
| endif |
| |
| ifeq ($(BR2_PACKAGE_GNURADIO_CTRLPORT),y) |
| GNURADIO_CONF_OPTS += -DENABLE_GR_CTRLPORT=ON |
| else |
| GNURADIO_CONF_OPTS += -DENABLE_GR_CTRLPORT=OFF |
| endif |
| |
| ifeq ($(BR2_PACKAGE_GNURADIO_DIGITAL),y) |
| GNURADIO_CONF_OPTS += -DENABLE_GR_DIGITAL=ON |
| else |
| GNURADIO_CONF_OPTS += -DENABLE_GR_DIGITAL=OFF |
| endif |
| |
| ifeq ($(BR2_PACKAGE_GNURADIO_DTV),y) |
| GNURADIO_CONF_OPTS += -DENABLE_GR_DTV=ON |
| else |
| GNURADIO_CONF_OPTS += -DENABLE_GR_DTV=OFF |
| endif |
| |
| ifeq ($(BR2_PACKAGE_GNURADIO_FEC),y) |
| GNURADIO_DEPENDENCIES += gsl |
| GNURADIO_CONF_OPTS += -DENABLE_GR_FEC=ON |
| else |
| GNURADIO_CONF_OPTS += -DENABLE_GR_FEC=OFF |
| endif |
| |
| ifeq ($(BR2_PACKAGE_GNURADIO_FFT),y) |
| GNURADIO_DEPENDENCIES += fftw-single |
| GNURADIO_CONF_OPTS += -DENABLE_GR_FFT=ON |
| else |
| GNURADIO_CONF_OPTS += -DENABLE_GR_FFT=OFF |
| endif |
| |
| ifeq ($(BR2_PACKAGE_GNURADIO_FILTER),y) |
| GNURADIO_CONF_OPTS += -DENABLE_GR_FILTER=ON |
| else |
| GNURADIO_CONF_OPTS += -DENABLE_GR_FILTER=OFF |
| endif |
| |
| ifeq ($(BR2_PACKAGE_GNURADIO_NETWORK),y) |
| GNURADIO_CONF_OPTS += -DENABLE_GR_NETWORK=ON |
| else |
| GNURADIO_CONF_OPTS += -DENABLE_GR_NETWORK=OFF |
| endif |
| |
| ifeq ($(BR2_PACKAGE_GNURADIO_PYTHON),y) |
| GNURADIO_DEPENDENCIES += python3 python-pybind \ |
| host-python-numpy host-python-packaging |
| GNURADIO_CONF_OPTS += -DENABLE_PYTHON=ON |
| # mandatory to avoid pybind11 to overwrite variables provided |
| # by gnuradio and buildroot |
| GNURADIO_CONF_OPTS += -DPYBIND11_PYTHONLIBS_OVERWRITE=OFF |
| # mandatory to avoid pybind11 to force libraries extensions |
| # with a name based on host architecture |
| GNURADIO_CONF_ENV += _PYTHON_SYSCONFIGDATA_NAME="$(PKG_PYTHON_SYSCONFIGDATA_NAME)" \ |
| PYTHONPATH=$(PYTHON3_PATH) |
| # mandatory to install python modules in site-packages and to use |
| # correct path for python libraries |
| GNURADIO_CONF_OPTS += -DGR_PYTHON_RELATIVE=ON \ |
| -DGR_PYTHON_DIR=lib/python$(PYTHON3_VERSION_MAJOR)/site-packages |
| else |
| GNURADIO_CONF_OPTS += -DENABLE_PYTHON=OFF |
| endif |
| |
| ifeq ($(BR2_PACKAGE_GNURADIO_QTGUI),y) |
| GNURADIO_DEPENDENCIES += qt5base python-pyqt5 qwt |
| GNURADIO_CONF_OPTS += -DENABLE_GR_QTGUI=ON |
| else |
| GNURADIO_CONF_OPTS += -DENABLE_GR_QTGUI=OFF |
| endif |
| |
| ifeq ($(BR2_PACKAGE_GNURADIO_TRELLIS),y) |
| GNURADIO_CONF_OPTS += -DENABLE_GR_TRELLIS=ON |
| else |
| GNURADIO_CONF_OPTS += -DENABLE_GR_TRELLIS=OFF |
| endif |
| |
| ifeq ($(BR2_PACKAGE_GNURADIO_UHD),y) |
| GNURADIO_DEPENDENCIES += uhd |
| GNURADIO_CONF_OPTS += -DENABLE_GR_UHD=ON |
| else |
| GNURADIO_CONF_OPTS += -DENABLE_GR_UHD=OFF |
| endif |
| |
| ifeq ($(BR2_PACKAGE_GNURADIO_UTILS),y) |
| GNURADIO_CONF_OPTS += -DENABLE_GR_UTILS=ON |
| else |
| GNURADIO_CONF_OPTS += -DENABLE_GR_UTILS=OFF |
| endif |
| |
| ifeq ($(BR2_PACKAGE_GNURADIO_ZEROMQ),y) |
| GNURADIO_DEPENDENCIES += cppzmq |
| ifeq ($(BR2_PACKAGE_GNURADIO_PYTHON),y) |
| GNURADIO_DEPENDENCIES += python-pyzmq |
| endif |
| GNURADIO_CONF_OPTS += -DENABLE_GR_ZEROMQ=ON |
| else |
| GNURADIO_CONF_OPTS += -DENABLE_GR_ZEROMQ=OFF |
| endif |
| |
| $(eval $(cmake-package)) |