package/gnuradio: restrict gcc to >= 8

With gnuradio 3.10 boost/filesystem was replaced by std::filesystem.
This feature was introduced with gcc 8 (requirering -lstdc++fs (with
gcc 9 explicit -lstdc++fs is no more explicitely required)).

With gcc < 8 build fails with error:

In file included from /home/br-user/work/instance-0/output-1/host/aarch64_be-buildroot-linux-gnu/sysroot/usr/include/boost/dll/runtime_symbol_info.hpp:11:0,
                 from /home/br-user/work/instance-0/output-1/build/gnuradio-3.10.4.0/buildroot-build/gnuradio-runtime/lib/constants.cc:16:
/home/br-user/work/instance-0/output-1/host/aarch64_be-buildroot-linux-gnu/sysroot/usr/include/boost/dll/config.hpp:42:10: fatal error: filesystem: No such file or directory
 #include <filesystem>
          ^~~~~~~~~~~~
compilation terminated.

Add a dependency to gcc >= 8.

BR2_TOOLCHAIN_HAS_GCC_BUG_64735 only affects gcc <7, so we drop it.

Adding this restriction on gcc >= 8 also covers the dependency for volk,
which requires gcc >= 7, which was not propagated to gnuradio so far.

Tested with bootlin toolchain 2020.02-2 (gcc 8.3.0)

Fixes:
- http://autobuild.buildroot.net/results/6a82605c58f9ef9eb6c14603777dd8523dd00aa5/
- http://autobuild.buildroot.net/results/c7c4ae76954e388ab639b39fd521d90acfe4edc9/

Signed-off-by: Gwenhael Goavec-Merou <gwenhael.goavec-merou@trabucayre.com>
Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
This commit is contained in:
Gwenhael Goavec-Merou 2022-12-10 17:26:27 +01:00 committed by Yann E. MORIN
parent 712ee21876
commit 34cea39024

View File

@ -1,12 +1,12 @@
comment "gnuradio needs a toolchain w/ C++, NPTL, wchar, dynamic library"
comment "gnuradio needs a toolchain w/ C++, NPTL, wchar, dynamic library, gcc >= 8"
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
!BR2_TOOLCHAIN_HAS_THREADS_NPTL || BR2_STATIC_LIBS || \
!BR2_TOOLCHAIN_GCC_AT_LEAST_8
comment "gnuradio needs a toolchain not affected by GCC bug 43744 and 64735"
comment "gnuradio needs a toolchain not affected by GCC bug 43744"
depends on BR2_TOOLCHAIN_HAS_GCC_BUG_43744
depends on BR2_TOOLCHAIN_HAS_GCC_BUG_64735
config BR2_PACKAGE_GNURADIO
bool "gnuradio"
@ -16,8 +16,8 @@ config BR2_PACKAGE_GNURADIO
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-thread
depends on BR2_TOOLCHAIN_GCC_AT_LEAST_8
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