initial buildroot for linux 5.15

This commit is contained in:
Huan.Feng
2021-12-06 14:12:13 +08:00
parent d7767d594e
commit 7b6fc358fa
12736 changed files with 508822 additions and 0 deletions
@@ -0,0 +1,39 @@
From f643bc12100c67288adda3699a9e61d6a66fb529 Mon Sep 17 00:00:00 2001
From: Gwenhael Goavec-Merou <gwenhael.goavec-merou@trabucayre.com>
Date: Fri, 7 Feb 2020 16:49:30 +0100
Subject: [PATCH] gr-digital:glfsr.h: drop boost/cstdint.hpp and use cstdint
gr-digital/glfsr.h include boost/cstdint.hpp to have uintxx_t.
These types are in boost namespace but nor using namespace xxx, nor boost:: are used.
The result is :
In file included from /home/buildroot/autobuild/instance-0/output-1/build/gnuradio-3.8.0.0/gr-digital/lib/glfsr.cc:23:
/home/buildroot/autobuild/instance-0/output-1/build/gnuradio-3.8.0.0/gr-digital/lib/../include/gnuradio/digital/glfsr.h:42:5: error: 'uint32_t' does not name a type; did you mean 'u_int32_t'?
uint32_t d_shift_register;
^~~~~~~~
u_int32_t
Since Gnuradio policy is Less boost == better and C++11 is used, use cstdint
instead of boost/cstdint.hpp.
[backported from 475e4a156b516c089175afb998acdc80b740b437]
Signed-off-by: Gwenhael Goavec-Merou <gwenhael.goavec-merou@trabucayre.com>
---
gr-digital/include/gnuradio/digital/glfsr.h | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/gr-digital/include/gnuradio/digital/glfsr.h b/gr-digital/include/gnuradio/digital/glfsr.h
index 0b5141f1f..1003bcd01 100644
--- a/gr-digital/include/gnuradio/digital/glfsr.h
+++ b/gr-digital/include/gnuradio/digital/glfsr.h
@@ -24,7 +24,7 @@
#define INCLUDED_DIGITAL_GLFSR_H
#include <gnuradio/digital/api.h>
-#include <boost/cstdint.hpp>
+#include <cstdint>
namespace gr {
namespace digital {
--
2.24.1
File diff suppressed because it is too large Load Diff
@@ -0,0 +1,57 @@
From 84dea8284c521f08508bb2dcbc99db3b5d3438fd Mon Sep 17 00:00:00 2001
From: Gwenhael Goavec-Merou <gwenhael.goavec-merou@trabucayre.com>
Date: Thu, 27 Aug 2020 17:32:09 +0200
Subject: [PATCH] gnuradio-runtime_pmt: dont hardcode
INTERFACE_INCLUDE_DIRECTORIES
gnuradio-runtimeTargets.cmake and gnuradio-pmtTargets.cmake are filled
using CMAKE_INSTALL_PREFIX for INSTALL_INTERFACE.
Since CMAKE_INSTALL_PREFIX, in buildroot, is set to /usr, these files contains
path to host system.
With BR2_COMPILER_PARANOID_UNSAFE_PATH package using gnuradio fails with:
arm-linux-gnueabihf-g++: ERROR: unsafe header/library path used in cross-compilation: '-isystem' '/usr/include'
By simply providing 'include', produced .cmake contains:
INTERFACE_INCLUDE_DIRECTORIES "${_IMPORT_PREFIX}/include"
instead of
INTERFACE_INCLUDE_DIRECTORIES "/usr/include"
[Upstream status: https://github.com/gnuradio/gnuradio/pull/3737]
Signed-off-by: Gwenhael Goavec-Merou <gwenhael.goavec-merou@trabucayre.com>
---
gnuradio-runtime/lib/CMakeLists.txt | 2 +-
gnuradio-runtime/lib/pmt/CMakeLists.txt | 2 +-
2 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/gnuradio-runtime/lib/CMakeLists.txt b/gnuradio-runtime/lib/CMakeLists.txt
index 5aa90a5e1..fc32f473b 100644
--- a/gnuradio-runtime/lib/CMakeLists.txt
+++ b/gnuradio-runtime/lib/CMakeLists.txt
@@ -214,7 +214,7 @@ target_link_libraries(gnuradio-runtime PUBLIC
target_include_directories(gnuradio-runtime
PUBLIC
- $<INSTALL_INTERFACE:${CMAKE_INSTALL_PREFIX}/include>
+ $<INSTALL_INTERFACE:include>
$<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/../include>
$<BUILD_INTERFACE:${CMAKE_CURRENT_BINARY_DIR}/../include>
PRIVATE
diff --git a/gnuradio-runtime/lib/pmt/CMakeLists.txt b/gnuradio-runtime/lib/pmt/CMakeLists.txt
index 9fb98d0fc..6dfcd945c 100644
--- a/gnuradio-runtime/lib/pmt/CMakeLists.txt
+++ b/gnuradio-runtime/lib/pmt/CMakeLists.txt
@@ -33,7 +33,7 @@ target_link_libraries(gnuradio-pmt
target_include_directories(gnuradio-pmt
PUBLIC
- $<INSTALL_INTERFACE:${CMAKE_INSTALL_PREFIX}/include>
+ $<INSTALL_INTERFACE:include>
$<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/../../include>
PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/
)
--
2.26.2
@@ -0,0 +1,55 @@
From 268b1a599304f58bd56c86ff09041b5912c24a0c Mon Sep 17 00:00:00 2001
From: Gwenhael Goavec-Merou <gwenhael.goavec-merou@trabucayre.com>
Date: Sun, 1 Nov 2020 17:24:36 +0100
Subject: [PATCH] gr-qtgui: dont't add examples/c++ subdirectory when gr-analog
is disabled
gr-qtgui examples needs to have gr-analog enabled, without this dependency
compile crash with:
In file included from
/x/output/build/gnuradio-3.8.1.0/gr-qtgui/examples/c++/display_qt.cc:22:
/x/output/build/gnuradio-3.8.1.0/gr-qtgui/examples/c++/display_qt.h:24:10:
fatal error: gnuradio/analog/noise_source.h: No such file or directory
24 | #include <gnuradio/analog/noise_source.h>
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
compilation terminated.
make[3]: *** [gr-qtgui/examples/c++/CMakeFiles/display_qt.dir/build.make:67:
gr-qtgui/examples/c++/CMakeFiles/display_qt.dir/display_qt.cc.o] Error 1
make[3]: *** Waiting for unfinished jobs....
In file included from
/somewhere/gnuradio/build/gr-qtgui/examples/c++/moc_display_qt.cpp:10:
/somewhere/gnuradio/build/gr-qtgui/examples/c++/../../../../gr-qtgui/examples/c++/display_qt.h:24:10:
fatal error: gnuradio/analog/noise_source.h: No such file or directory
24 | #include <gnuradio/analog/noise_source.h>
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
compilation terminated.
GR_ANALOG is not an explicit dependency of GR_QTGUI, so disable c++ examples if
user has not selected this option.
[backported from 7470a7a3771dd90defb826b464dfe62977cb1eb6]
Signed-off-by: Gwenhael Goavec-Merou <gwenhael.goavec-merou@trabucayre.com>
---
gr-qtgui/CMakeLists.txt | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)
diff --git a/gr-qtgui/CMakeLists.txt b/gr-qtgui/CMakeLists.txt
index 8831f3ad9..561186fbd 100644
--- a/gr-qtgui/CMakeLists.txt
+++ b/gr-qtgui/CMakeLists.txt
@@ -68,7 +68,9 @@ if(ENABLE_GR_QTGUI)
add_subdirectory(include/gnuradio/qtgui)
add_subdirectory(lib)
add_subdirectory(docs)
-add_subdirectory(examples/c++)
+if (ENABLE_GR_ANALOG)
+ add_subdirectory(examples/c++)
+endif(ENABLE_GR_ANALOG)
if(ENABLE_PYTHON)
add_subdirectory(swig)
add_subdirectory(python/qtgui)
--
2.26.2
@@ -0,0 +1,165 @@
From 2c767bb260a25b415e8c9c4b3ea37280b2127cec Mon Sep 17 00:00:00 2001
From: japm48 <japm48@users.noreply.github.com>
Date: Fri, 10 Apr 2020 23:35:30 +0200
Subject: [PATCH] boost: remove deprecated math/common_factor.hpp
Remove deprecation warning and prefer using std::{lcm,gcd} to Boost.
Fixes #2712.
[Retrieved from:
https://github.com/gnuradio/gnuradio/commit/2c767bb260a25b415e8c9c4b3ea37280b2127cec]
Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
---
.../include/gnuradio/CMakeLists.txt | 1 +
.../include/gnuradio/integer_math.h | 35 +++++++++++++++++++
gnuradio-runtime/lib/buffer.cc | 19 ++--------
gr-digital/lib/symbol_sync_cc_impl.cc | 4 +--
gr-digital/lib/symbol_sync_ff_impl.cc | 4 +--
5 files changed, 43 insertions(+), 20 deletions(-)
create mode 100644 gnuradio-runtime/include/gnuradio/integer_math.h
diff --git a/gnuradio-runtime/include/gnuradio/CMakeLists.txt b/gnuradio-runtime/include/gnuradio/CMakeLists.txt
index 8d718e87b5b..056af5d6f48 100644
--- a/gnuradio-runtime/include/gnuradio/CMakeLists.txt
+++ b/gnuradio-runtime/include/gnuradio/CMakeLists.txt
@@ -31,6 +31,7 @@ install(FILES
gr_complex.h
hier_block2.h
high_res_timer.h
+ integer_math.h
io_signature.h
logger.h
math.h
diff --git a/gnuradio-runtime/include/gnuradio/integer_math.h b/gnuradio-runtime/include/gnuradio/integer_math.h
new file mode 100644
index 00000000000..15141049fa4
--- /dev/null
+++ b/gnuradio-runtime/include/gnuradio/integer_math.h
@@ -0,0 +1,35 @@
+/* -*- c++ -*- */
+/*
+ * Copyright 2020 Free Software Foundation, Inc.
+ *
+ * This file is part of GNU Radio
+ *
+ * SPDX-License-Identifier: GPL-3.0-or-later
+ *
+ */
+#ifndef INCLUDED_GR_INTEGER_MATH_H
+#define INCLUDED_GR_INTEGER_MATH_H
+
+#if (__cplusplus >= 201703L)
+
+// Prefer C++17 goodness.
+#include <numeric>
+#define GR_GCD std::gcd
+#define GR_LCM std::lcm
+
+#elif (BOOST_VERSION >= 105800)
+
+// Fallback: newer boost API (introduced in Boost 1.58.0).
+#include <boost/integer/common_factor_rt.hpp>
+#define GR_GCD boost::integer::gcd
+#define GR_LCM boost::integer::lcm
+
+#else
+
+// Last resort: old deprecated boost API.
+#include <boost/math/common_factor_rt.hpp>
+#define GR_GCD boost::math::gcd
+#define GR_LCM boost::math::lcm
+
+#endif /* __cplusplus >= 201703L */
+#endif /* INCLUDED_GR_INTEGER_MATH_H */
diff --git a/gnuradio-runtime/lib/buffer.cc b/gnuradio-runtime/lib/buffer.cc
index 720c72c4ee8..46d704542b1 100644
--- a/gnuradio-runtime/lib/buffer.cc
+++ b/gnuradio-runtime/lib/buffer.cc
@@ -13,22 +13,13 @@
#endif
#include "vmcircbuf.h"
#include <gnuradio/buffer.h>
+#include <gnuradio/integer_math.h>
#include <gnuradio/math.h>
#include <assert.h>
#include <algorithm>
#include <iostream>
#include <stdexcept>
-// the following header is deprecated as of Boost 1.66.0, and the
-// other API was introduced in Boost 1.58.0. Since we still support
-// Boost back to 1.54.0, use the older API if pre-1.5.80 and otherwise
-// use the newer API.
-#if (BOOST_VERSION < 105800)
-#include <boost/math/common_factor_rt.hpp>
-#else
-#include <boost/integer/common_factor_rt.hpp>
-#endif
-
namespace gr {
static long s_buffer_count = 0; // counts for debugging storage mgmt
@@ -68,13 +59,9 @@ static long s_buffer_reader_count = 0;
*
* type_size * nitems == k * page_size
*/
-static long minimum_buffer_items(long type_size, long page_size)
+static inline long minimum_buffer_items(long type_size, long page_size)
{
-#if (BOOST_VERSION < 105800)
- return page_size / boost::math::gcd(type_size, page_size);
-#else
- return page_size / boost::integer::gcd(type_size, page_size);
-#endif
+ return page_size / GR_GCD(type_size, page_size);
}
diff --git a/gr-digital/lib/symbol_sync_cc_impl.cc b/gr-digital/lib/symbol_sync_cc_impl.cc
index 55f85e7c6a7..55f162dc727 100644
--- a/gr-digital/lib/symbol_sync_cc_impl.cc
+++ b/gr-digital/lib/symbol_sync_cc_impl.cc
@@ -13,9 +13,9 @@
#endif
#include "symbol_sync_cc_impl.h"
+#include <gnuradio/integer_math.h>
#include <gnuradio/io_signature.h>
#include <gnuradio/math.h>
-#include <boost/math/common_factor.hpp>
#include <stdexcept>
namespace gr {
@@ -95,7 +95,7 @@ symbol_sync_cc_impl::symbol_sync_cc_impl(enum ted_type detector_type,
throw std::runtime_error("unable to create interpolating_resampler_ccf");
// Block Internal Clocks
- d_interps_per_symbol_n = boost::math::lcm(d_ted->inputs_per_symbol(), d_osps_n);
+ d_interps_per_symbol_n = GR_LCM(d_ted->inputs_per_symbol(), d_osps_n);
d_interps_per_ted_input_n = d_interps_per_symbol_n / d_ted->inputs_per_symbol();
d_interps_per_output_sample_n = d_interps_per_symbol_n / d_osps_n;
diff --git a/gr-digital/lib/symbol_sync_ff_impl.cc b/gr-digital/lib/symbol_sync_ff_impl.cc
index d0ec32ab192..1172c1b4f8a 100644
--- a/gr-digital/lib/symbol_sync_ff_impl.cc
+++ b/gr-digital/lib/symbol_sync_ff_impl.cc
@@ -13,9 +13,9 @@
#endif
#include "symbol_sync_ff_impl.h"
+#include <gnuradio/integer_math.h>
#include <gnuradio/io_signature.h>
#include <gnuradio/math.h>
-#include <boost/math/common_factor.hpp>
#include <stdexcept>
namespace gr {
@@ -97,7 +97,7 @@ symbol_sync_ff_impl::symbol_sync_ff_impl(enum ted_type detector_type,
throw std::runtime_error("unable to create interpolating_resampler_fff");
// Block Internal Clocks
- d_interps_per_symbol_n = boost::math::lcm(d_ted->inputs_per_symbol(), d_osps_n);
+ d_interps_per_symbol_n = GR_LCM(d_ted->inputs_per_symbol(), d_osps_n);
d_interps_per_ted_input_n = d_interps_per_symbol_n / d_ted->inputs_per_symbol();
d_interps_per_output_sample_n = d_interps_per_symbol_n / d_osps_n;
+164
View File
@@ -0,0 +1,164 @@
comment "gnuradio needs a toolchain w/ C++, NPTL, wchar, dynamic library"
depends on BR2_USE_MMU
depends on BR2_TOOLCHAIN_SUPPORTS_ALWAYS_LOCKFREE_ATOMIC_INTS
depends on !BR2_INSTALL_LIBSTDCPP || !BR2_USE_WCHAR || \
!BR2_TOOLCHAIN_HAS_THREADS_NPTL || BR2_STATIC_LIBS
comment "gnuradio needs a toolchain not affected by GCC bug 43744 and 64735"
depends on BR2_TOOLCHAIN_HAS_GCC_BUG_43744
depends on BR2_TOOLCHAIN_HAS_GCC_BUG_64735
config BR2_PACKAGE_GNURADIO
bool "gnuradio"
depends on BR2_INSTALL_LIBSTDCPP
depends on !BR2_STATIC_LIBS
depends on BR2_TOOLCHAIN_HAS_THREADS_NPTL
depends on BR2_USE_MMU # use fork()
depends on BR2_USE_WCHAR # boost
depends on BR2_TOOLCHAIN_SUPPORTS_ALWAYS_LOCKFREE_ATOMIC_INTS # boost-atomic, boost-filesystem
depends on !BR2_TOOLCHAIN_HAS_GCC_BUG_43744
depends on !BR2_TOOLCHAIN_HAS_GCC_BUG_64735 # boost-thread
select BR2_PACKAGE_BOOST
select BR2_PACKAGE_BOOST_ATOMIC
select BR2_PACKAGE_BOOST_DATE_TIME
select BR2_PACKAGE_BOOST_FILESYSTEM
select BR2_PACKAGE_BOOST_PROGRAM_OPTIONS
select BR2_PACKAGE_BOOST_REGEX
select BR2_PACKAGE_BOOST_SYSTEM
select BR2_PACKAGE_BOOST_THREAD
select BR2_PACKAGE_LOG4CPP
select BR2_PACKAGE_GMP
help
GNU Radio is a free & open-source software development
toolkit that provides signal processing blocks to implement
software radios. It can be used with readily-available
low-cost external RF hardware to create software-defined
radios, or without hardware in a simulation-like
environment. It is widely used in hobbyist, academic and
commercial environments to support both wireless
communications research and real-world radio systems.
http://gnuradio.org/
if BR2_PACKAGE_GNURADIO
config BR2_PACKAGE_GNURADIO_AUDIO
bool "gr-audio"
select BR2_PACKAGE_ALSA_LIB if !BR2_PACKAGE_PORTAUDIO
help
Add audio source/sink to GNU Radio
config BR2_PACKAGE_GNURADIO_BLOCKS
bool "blocks support"
help
GNU Radio basic block library
config BR2_PACKAGE_GNURADIO_CTRLPORT
bool "ctrlport support"
help
GNU Radio ctrlport block
config BR2_PACKAGE_GNURADIO_DTV
bool "gr-dtv support"
select BR2_PACKAGE_GNURADIO_ANALOG
select BR2_PACKAGE_GNURADIO_FEC
select BR2_PACKAGE_GNURADIO_FILTER
help
various digital television standards blocks
config BR2_PACKAGE_GNURADIO_FEC
bool "gr-fec support"
select BR2_PACKAGE_GNURADIO_BLOCKS
select BR2_PACKAGE_GSL
help
FEC signal processing blocks
config BR2_PACKAGE_GNURADIO_PYTHON
bool "python support"
depends on BR2_PACKAGE_PYTHON3
depends on BR2_PACKAGE_PYTHON_NUMPY_ARCH_SUPPORTS
depends on BR2_TOOLCHAIN_USES_GLIBC || BR2_TOOLCHAIN_USES_MUSL # python-numpy
select BR2_PACKAGE_BOOST_PYTHON
select BR2_PACKAGE_PYTHON_NUMPY # runtime
select BR2_PACKAGE_PYTHON_SIX # runtime
help
Enable python component
comment "python support needs glibc or musl"
depends on !(BR2_TOOLCHAIN_USES_GLIBC || BR2_TOOLCHAIN_USES_MUSL)
config BR2_PACKAGE_GNURADIO_UTILS
bool "gr-utils support"
depends on BR2_PACKAGE_GNURADIO_PYTHON
help
Misc python utilities
config BR2_PACKAGE_GNURADIO_ZEROMQ
bool "gr-zeromq support"
select BR2_PACKAGE_CPPZMQ
select BR2_PACKAGE_PYTHON_PYZMQ if BR2_PACKAGE_GNURADIO_PYTHON
help
zeromq communication support
config BR2_PACKAGE_GNURADIO_ANALOG
bool "gr-analog support"
select BR2_PACKAGE_GNURADIO_FILTER
help
Analog communications blocks
config BR2_PACKAGE_GNURADIO_CHANNELS
bool "gr-channels support"
select BR2_PACKAGE_GNURADIO_ANALOG
help
Channel model blocks
config BR2_PACKAGE_GNURADIO_DIGITAL
bool "gr-digital support"
select BR2_PACKAGE_GNURADIO_ANALOG
help
Digital communications blocks
config BR2_PACKAGE_GNURADIO_FFT
bool "gr-fft support"
select BR2_PACKAGE_FFTW
select BR2_PACKAGE_FFTW_SINGLE
select BR2_PACKAGE_GNURADIO_BLOCKS
help
FFT signal processing blocks
config BR2_PACKAGE_GNURADIO_FILTER
bool "gr-filter support"
select BR2_PACKAGE_GNURADIO_FFT
help
Filter signal processing blocks
config BR2_PACKAGE_GNURADIO_QTGUI
bool "gr-qtgui"
depends on BR2_PACKAGE_GNURADIO_PYTHON
depends on BR2_PACKAGE_QT5
select BR2_PACKAGE_GNURADIO_FFT
select BR2_PACKAGE_GNURADIO_FILTER
select BR2_PACKAGE_PYTHON_PYQT5
select BR2_PACKAGE_QT5BASE_FONTCONFIG # runtime
select BR2_PACKAGE_QT5BASE_GUI # runtime
select BR2_PACKAGE_QT5BASE_WIDGETS # runtime
select BR2_PACKAGE_QWT
help
GNU Radio Qt scopes
config BR2_PACKAGE_GNURADIO_TRELLIS
bool "gr-trellis support"
select BR2_PACKAGE_GNURADIO_DIGITAL
help
Trellis coded modulation blocks
config BR2_PACKAGE_GNURADIO_UHD
bool "gr-uhd support"
select BR2_PACKAGE_UHD
select BR2_PACKAGE_GNURADIO_ANALOG
select BR2_PACKAGE_GNURADIO_BLOCKS
select BR2_PACKAGE_GNURADIO_FILTER
help
UHD support
endif
+3
View File
@@ -0,0 +1,3 @@
# Locally computed
sha256 3e293541a9ac8d78660762bae8b80c0f6195b3494e1c50c01a9fd79cc60bb624 gnuradio-3.8.2.0.tar.gz
sha256 8ceb4b9ee5adedde47b31e975c1d90c73ad27b6b165a1dcd80c7c545eb65b903 COPYING
+169
View File
@@ -0,0 +1,169 @@
################################################################################
#
# gnuradio
#
################################################################################
GNURADIO_VERSION = 3.8.2.0
GNURADIO_SITE = https://github.com/gnuradio/gnuradio/releases/download/v$(GNURADIO_VERSION)
GNURADIO_LICENSE = GPL-3.0+
GNURADIO_LICENSE_FILES = COPYING
GNURADIO_SUPPORTS_IN_SOURCE_BUILD = NO
# needed to determine site-packages path
ifeq ($(BR2_PACKAGE_PYTHON),y)
GNURADIO_PYVER = $(PYTHON_VERSION_MAJOR)
else ifeq ($(BR2_PACKAGE_PYTHON3),y)
GNURADIO_PYVER = $(PYTHON3_VERSION_MAJOR)
endif
# host-python-mako and host-python-six are needed for volk to compile
GNURADIO_DEPENDENCIES = \
$(if $(BR2_PACKAGE_PYTHON3),host-python3,host-python) \
host-python-mako \
host-python-six \
host-swig \
boost \
log4cpp \
gmp
GNURADIO_CONF_OPTS = \
-DPYTHON_EXECUTABLE=$(HOST_DIR)/bin/python \
-DENABLE_DEFAULT=OFF \
-DENABLE_VOLK=ON \
-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_ORC),y)
GNURADIO_DEPENDENCIES += orc
GNURADIO_CONF_OPTS += -DENABLE_ORC=ON
else
GNURADIO_CONF_OPTS += -DENABLE_ORC=OFF
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
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_PYTHON),y)
GNURADIO_DEPENDENCIES += python3
GNURADIO_CONF_OPTS += -DENABLE_PYTHON=ON
# 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$(GNURADIO_PYVER)/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))