package/boost: bump version to 1.77.0
authorMichael Nosthoff <buildroot@heine.tech>
Thu, 19 Aug 2021 13:12:44 +0000 (15:12 +0200)
committerArnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
Thu, 26 Aug 2021 21:37:01 +0000 (23:37 +0200)
* drop 0001-fenv.patch, issue [0] was marked fixed since boost 1.64 (commit [1])
* drop upstreamed patch 0002
* filesystem now depends on boost-atomic
* math broke the build without always lockfree atomic ints, disable for now. reported at [2].

[0] https://svn.boost.org/trac/boost/ticket/11756
[1] https://github.com/boostorg/test/commit/cb2a1c2488dc77b9baf1b05781208a9639dfcd69
[2] https://github.com/boostorg/math/issues/673

Signed-off-by: Michael Nosthoff <buildroot@heine.tech>
[Arnout: improve propagation of reverse dependencies:
 - also update comment of cc-tool;
 - add boost-filesystem to reason of gnuradio, libcpprestsdk, uhd;
 - move dependency to arch-deps of mongodb]
Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
16 files changed:
package/bitcoin/Config.in
package/boost/0001-fenv.patch [deleted file]
package/boost/0002-src-event-cpp-fix-build-on-riscv32.patch [deleted file]
package/boost/Config.in
package/boost/boost.hash
package/boost/boost.mk
package/botan/Config.in
package/cc-tool/Config.in
package/gnuradio/Config.in
package/i2pd/Config.in
package/libcpprestsdk/Config.in
package/mongodb/Config.in
package/osm2pgsql/Config.in
package/pulseview/Config.in
package/supertux/Config.in
package/uhd/Config.in

index 7ce4f80656a06533a5b189f70a19b178c165229e..a344811d6b45d9b8f9d10993d57e45f9c75e9acc 100644 (file)
@@ -10,7 +10,7 @@ config BR2_PACKAGE_BITCOIN_ARCH_SUPPORTS
 config BR2_PACKAGE_BITCOIN
        bool "bitcoin"
        depends on BR2_INSTALL_LIBSTDCPP
-       depends on BR2_TOOLCHAIN_SUPPORTS_ALWAYS_LOCKFREE_ATOMIC_INTS # boost-thread
+       depends on BR2_TOOLCHAIN_SUPPORTS_ALWAYS_LOCKFREE_ATOMIC_INTS # boost-thread, boost-filesystem
        depends on !BR2_TOOLCHAIN_HAS_GCC_BUG_64735 # std::future
        depends on BR2_PACKAGE_BITCOIN_ARCH_SUPPORTS
        depends on BR2_TOOLCHAIN_HAS_THREADS # boost
diff --git a/package/boost/0001-fenv.patch b/package/boost/0001-fenv.patch
deleted file mode 100644 (file)
index 9dc7848..0000000
+++ /dev/null
@@ -1,37 +0,0 @@
-Disable fenv.h in certain configurations
-
-The boost build system does not properly test whether fenv.h is
-available, and if it is, if it supports all the features used by
-Boost. This causes build failures with uClibc (reported upstream at
-https://svn.boost.org/trac/boost/ticket/11756) but also with glibc on
-specific architectures that don't have a full fenv implementation,
-such as NIOSII or Microblaze.
-
-To address this, we forcefully disable the use of fenv support in the
-affected configurations.
-
-Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
-[Thomas: add Microblaze/NIOSII exclusions.]
-Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
-
-Index: b/boost/config/platform/linux.hpp
-===================================================================
---- a/boost/config/platform/linux.hpp
-+++ b/boost/config/platform/linux.hpp
-@@ -48,6 +48,16 @@
- #endif
- //
-+// uClibc has no support for fenv.h, and also a few architectures
-+// don't have fenv.h support at all (or incomplete support) even with
-+// glibc.
-+
-+//
-+#if defined(__UCLIBC__) || defined(__nios2__) || defined(__microblaze__)
-+#  define BOOST_NO_FENV_H
-+#endif
-+
-+//
- // If glibc is past version 2 then we definitely have
- // gettimeofday, earlier versions may or may not have it:
- //
diff --git a/package/boost/0002-src-event-cpp-fix-build-on-riscv32.patch b/package/boost/0002-src-event-cpp-fix-build-on-riscv32.patch
deleted file mode 100644 (file)
index f1b8428..0000000
+++ /dev/null
@@ -1,42 +0,0 @@
-From d2061419501bdd6761e9380ed5b91233f6c4e67e Mon Sep 17 00:00:00 2001
-From: Fabrice Fontaine <fontaine.fabrice@gmail.com>
-Date: Fri, 21 May 2021 21:30:04 +0200
-Subject: [PATCH] src/event.cpp: fix build on riscv32
-
-riscv32 fails to build because __NR_futex is not defined on this
-architecture:
-
-libs/log/src/event.cpp: In member function 'void boost::log::v2_mt_posix::aux::futex_based_event::wait()':
-libs/log/src/event.cpp:38:29: error: '__NR_futex' was not declared in this scope
-   38 | #define BOOST_LOG_SYS_FUTEX __NR_futex
-      |                             ^~~~~~~~~~
-
-Fixes:
- - http://autobuild.buildroot.org/results/8c8135fd7c0517c66c9b3975c494da6d7934cc1b
-
-Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
-[Retrieved from:
-https://github.com/boostorg/log/commit/d2061419501bdd6761e9380ed5b91233f6c4e67e]
----
- src/event.cpp | 7 ++++++-
- 1 file changed, 6 insertions(+), 1 deletion(-)
-
-diff --git a/libs/log/src/event.cpp b/libs/log/src/event.cpp
-index 5485154d7..f576648c6 100644
---- a/libs/log/src/event.cpp
-+++ b/libs/log/src/event.cpp
-@@ -34,8 +34,13 @@
- // Some Android NDKs (Google NDK and older Crystax.NET NDK versions) don't define SYS_futex
- #if defined(SYS_futex)
- #define BOOST_LOG_SYS_FUTEX SYS_futex
--#else
-+#elif defined(__NR_futex)
- #define BOOST_LOG_SYS_FUTEX __NR_futex
-+// riscv32 defines a different system call instead of __NR_futex
-+#elif defined(__NR_futex_time64)
-+#define BOOST_LOG_SYS_FUTEX __NR_futex_time64
-+#else
-+#error "Unable to find a suitable futex"
- #endif
- #if defined(FUTEX_WAIT_PRIVATE)
index 9248c574f4da05a7fa74b28c1a3e8d61405f0b50..d9ce841a929ad4cf82c60cebc24143e849dc52fa 100644 (file)
@@ -163,6 +163,8 @@ comment "boost-fiber needs a toolchain not affected by GCC bug 64735"
 
 config BR2_PACKAGE_BOOST_FILESYSTEM
        bool "boost-filesystem"
+       depends on BR2_TOOLCHAIN_SUPPORTS_ALWAYS_LOCKFREE_ATOMIC_INTS # boost-atomic
+       select BR2_PACKAGE_BOOST_ATOMIC
        select BR2_PACKAGE_BOOST_SYSTEM
        help
          The Boost Filesystem Library provides portable facilities to
@@ -252,6 +254,7 @@ comment "boost-log needs a toolchain not affected by GCC bug 64735"
 
 config BR2_PACKAGE_BOOST_MATH
        bool "boost-math"
+       depends on BR2_TOOLCHAIN_SUPPORTS_ALWAYS_LOCKFREE_ATOMIC_INTS
        help
          Boost.Math includes several contributions in the domain of
          mathematics:
index e6d44a76b670f789150a80b3a1e623322b064c1f..96419506cdebe1752e1737b5edb8df7ba6244d09 100644 (file)
@@ -1,5 +1,5 @@
-# From https://www.boost.org/users/history/version_1_74_0.html
-sha256  953db31e016db7bb207f11432bef7df100516eeb746843fa0486a222e3fd49cb  boost_1_75_0.tar.bz2
+# From https://www.boost.org/users/history/version_1_77_0.html
+sha256  fc9f85fc030e233142908241af7a846e60630aa7388de9a5fafb1f3a26840854  boost_1_77_0.tar.bz2
 
 # Locally computed
 sha256  c9bff75738922193e67fa726fa225535870d2aa1059f91452c411736284ad566  LICENSE_1_0.txt
index e72ddf897c8ba599215841606f48d19d21b37ddd..98ec30f98f31089ddd1f89fa6d9b24609fbc7b97 100644 (file)
@@ -4,7 +4,7 @@
 #
 ################################################################################
 
-BOOST_VERSION = 1.75.0
+BOOST_VERSION = 1.77.0
 BOOST_SOURCE = boost_$(subst .,_,$(BOOST_VERSION)).tar.bz2
 BOOST_SITE = https://boostorg.jfrog.io/artifactory/main/release/$(BOOST_VERSION)/source
 BOOST_INSTALL_STAGING = YES
index 341fa7c622c4e1d0b7d65126f4ccbc5c8486d8a9..635fe1836d39c32f3c91e4cf19522c186ea56932 100644 (file)
@@ -18,8 +18,8 @@ config BR2_PACKAGE_BOTAN
        depends on BR2_TOOLCHAIN_HAS_THREADS
        depends on BR2_PACKAGE_BOTAN_ARCH_SUPPORTS
        depends on !BR2_TOOLCHAIN_HAS_GCC_BUG_64735 # std::future
-       select BR2_PACKAGE_BOOST_FILESYSTEM if BR2_PACKAGE_BOOST
-       select BR2_PACKAGE_BOOST_SYSTEM if BR2_PACKAGE_BOOST
+       select BR2_PACKAGE_BOOST_FILESYSTEM if BR2_PACKAGE_BOOST && BR2_TOOLCHAIN_SUPPORTS_ALWAYS_LOCKFREE_ATOMIC_INTS
+       select BR2_PACKAGE_BOOST_SYSTEM if BR2_PACKAGE_BOOST && BR2_TOOLCHAIN_SUPPORTS_ALWAYS_LOCKFREE_ATOMIC_INTS
        select BR2_PACKAGE_LIBOPENSSL_ENABLE_RC4 if BR2_PACKAGE_LIBOPENSSL
        select BR2_PACKAGE_LIBOPENSSL_ENABLE_RMD160 if BR2_PACKAGE_LIBOPENSSL
        help
index 2661592d7f4027b9d75d0016c7ba5e712d7116cd..fa5674b36d961064281d55d88f8f59a17ad87f76 100644 (file)
@@ -2,6 +2,7 @@ config BR2_PACKAGE_CC_TOOL
        bool "cc-tool"
        depends on BR2_INSTALL_LIBSTDCPP
        depends on BR2_TOOLCHAIN_HAS_THREADS
+       depends on BR2_TOOLCHAIN_SUPPORTS_ALWAYS_LOCKFREE_ATOMIC_INTS # boost-filesystem
        depends on BR2_USE_WCHAR # boost-filesystem
        depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 # libusb
        select BR2_PACKAGE_LIBUSB
@@ -18,6 +19,7 @@ config BR2_PACKAGE_CC_TOOL
          https://github.com/dashesy/cc-tool/
 
 comment "cc-tool needs a toolchain w/ C++, threads, wchar, gcc >= 4.9 "
+       depends on BR2_TOOLCHAIN_SUPPORTS_ALWAYS_LOCKFREE_ATOMIC_INTS
        depends on !BR2_INSTALL_LIBSTDCPP || \
                !BR2_TOOLCHAIN_HAS_THREADS || !BR2_USE_WCHAR || \
                !BR2_TOOLCHAIN_GCC_AT_LEAST_4_9
index 738088802ee0fd733019bd72a96a9c364c59de16..183b49fe9baf2d5673ccb189d0c719df23ea3d3d 100644 (file)
@@ -14,7 +14,7 @@ config BR2_PACKAGE_GNURADIO
        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
+       depends on BR2_TOOLCHAIN_SUPPORTS_ALWAYS_LOCKFREE_ATOMIC_INTS # boost-atomic, boost-filesystem
        depends on !BR2_TOOLCHAIN_HAS_GCC_BUG_64735 # boost-thread
        select BR2_PACKAGE_BOOST
        select BR2_PACKAGE_BOOST_ATOMIC
index 5b9ac33e2802b70e1f7765f9856ce115c174aa89..c1ba08ef757d95c444da67a8ca140fddb30fdcba 100644 (file)
@@ -4,6 +4,7 @@ config BR2_PACKAGE_I2PD
        depends on BR2_TOOLCHAIN_HAS_ATOMIC
        # pthread_condattr_setclock
        depends on BR2_TOOLCHAIN_HAS_THREADS_NPTL
+       depends on BR2_TOOLCHAIN_SUPPORTS_ALWAYS_LOCKFREE_ATOMIC_INTS # boost-filesystem
        depends on BR2_INSTALL_LIBSTDCPP
        depends on BR2_USE_WCHAR # boost
        depends on !BR2_TOOLCHAIN_HAS_GCC_BUG_64735 # exception_ptr
@@ -28,10 +29,12 @@ config BR2_PACKAGE_I2PD
 comment "i2pd needs a toolchain w/ C++, NPTL, wchar"
        depends on BR2_USE_MMU
        depends on BR2_TOOLCHAIN_HAS_ATOMIC
+       depends on BR2_TOOLCHAIN_SUPPORTS_ALWAYS_LOCKFREE_ATOMIC_INTS
        depends on !BR2_INSTALL_LIBSTDCPP || \
                !BR2_TOOLCHAIN_HAS_THREADS_NPTL || !BR2_USE_WCHAR
 
 comment "i2pd needs exception_ptr"
        depends on BR2_USE_MMU
        depends on BR2_TOOLCHAIN_HAS_ATOMIC
+       depends on BR2_TOOLCHAIN_SUPPORTS_ALWAYS_LOCKFREE_ATOMIC_INTS
        depends on BR2_TOOLCHAIN_HAS_GCC_BUG_64735
index 97f00e338399d4477d60a3649431d41f710169b6..e533b3039368e916b53d3521d8f04a1d5bd48337 100644 (file)
@@ -3,7 +3,7 @@ config BR2_PACKAGE_LIBCPPRESTSDK
        depends on BR2_ENABLE_LOCALE
        depends on BR2_INSTALL_LIBSTDCPP
        depends on BR2_USE_WCHAR # boost
-       depends on BR2_TOOLCHAIN_SUPPORTS_ALWAYS_LOCKFREE_ATOMIC_INTS # boost-atomic
+       depends on BR2_TOOLCHAIN_SUPPORTS_ALWAYS_LOCKFREE_ATOMIC_INTS # boost-atomic, boost-filesystem
        depends on !BR2_TOOLCHAIN_HAS_GCC_BUG_64735 # exception_ptr
        depends on BR2_TOOLCHAIN_HAS_THREADS_NPTL
        select BR2_PACKAGE_BOOST
index 493c5924132bfc340c53fbce219602727c2f62cc..1ea4282573fea52aa3d551091ab81753955927f0 100644 (file)
@@ -4,6 +4,7 @@ config BR2_PACKAGE_MONGODB_ARCH_SUPPORTS
        # ARM needs LDREX/STREX, so ARMv6+
        default y if BR2_arm && !BR2_ARM_CPU_ARMV4 && !BR2_ARM_CPU_ARMV5
        default y if BR2_aarch64 || BR2_x86_64
+       depends on BR2_TOOLCHAIN_SUPPORTS_ALWAYS_LOCKFREE_ATOMIC_INTS # boost-filesystem
 
 config BR2_PACKAGE_MONGODB
        bool "mongodb"
index 1f1200cf466a07eed009e9f44dd4ac26b9b0a218..70d59e6c6fe2d745d1bbcac509c528186e3848ca 100644 (file)
@@ -3,6 +3,7 @@ config BR2_PACKAGE_OSM2PGSQL
        depends on BR2_INSTALL_LIBSTDCPP # boost, fmt, libosmium, protozero
        depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_7 # C++11, libosmium, protozero
        depends on BR2_TOOLCHAIN_HAS_THREADS # boost, libosmium
+       depends on BR2_TOOLCHAIN_SUPPORTS_ALWAYS_LOCKFREE_ATOMIC_INTS # boost-filesystem
        depends on BR2_USE_WCHAR # boost, fmt, libosmium
        select BR2_PACKAGE_BOOST
        select BR2_PACKAGE_BOOST_SYSTEM
@@ -22,5 +23,6 @@ config BR2_PACKAGE_OSM2PGSQL
          https://osm2pgsql.org
 
 comment "osm2pgsql needs a toolchain w/ C++,  wchar, threads, gcc >= 4.7"
+       depends on BR2_TOOLCHAIN_SUPPORTS_ALWAYS_LOCKFREE_ATOMIC_INTS
        depends on !BR2_INSTALL_LIBSTDCPP || !BR2_USE_WCHAR || \
                !BR2_TOOLCHAIN_GCC_AT_LEAST_4_7 || !BR2_TOOLCHAIN_HAS_THREADS
index b8d94332a315554337135bf01f7f53c30c443649..e7a73e3765b09e52dae440455b59c716f2dcbba5 100644 (file)
@@ -4,6 +4,7 @@ config BR2_PACKAGE_PULSEVIEW
        # libsigrok->libglib2:
        depends on BR2_USE_WCHAR
        depends on BR2_TOOLCHAIN_HAS_THREADS
+       depends on BR2_TOOLCHAIN_SUPPORTS_ALWAYS_LOCKFREE_ATOMIC_INTS # boost-filesystem
        depends on BR2_USE_MMU
        depends on BR2_INSTALL_LIBSTDCPP
        # libsigrok->libzip
@@ -32,6 +33,7 @@ config BR2_PACKAGE_PULSEVIEW
 comment "pulseview needs a toolchain w/ locale, wchar, threads, dynamic library, C++, gcc >= 4.9, host gcc >= 4.9"
        depends on BR2_USE_MMU
        depends on BR2_PACKAGE_QT5
+       depends on BR2_TOOLCHAIN_SUPPORTS_ALWAYS_LOCKFREE_ATOMIC_INTS
        depends on !BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 || !BR2_USE_WCHAR \
                || !BR2_TOOLCHAIN_HAS_THREADS || !BR2_INSTALL_LIBSTDCPP \
                || BR2_STATIC_LIBS || !BR2_ENABLE_LOCALE || \
index 5cacdd658eaa21814970c2bbcefa3c3348afa02a..285f19694be56ba5caf0dcc2605b03a2965a6246 100644 (file)
@@ -6,6 +6,7 @@ config BR2_PACKAGE_SUPERTUX
        depends on BR2_PACKAGE_XORG7 # libglew, SDL2 OpenGL (GLX)
        depends on BR2_TOOLCHAIN_GCC_AT_LEAST_6 # C++14
        depends on BR2_TOOLCHAIN_HAS_THREADS_NPTL # openal
+       depends on BR2_TOOLCHAIN_SUPPORTS_ALWAYS_LOCKFREE_ATOMIC_INTS # boost-filesystem
        depends on BR2_USE_MMU # SDL2 OpenGL (GLX)
        depends on !BR2_STATIC_LIBS # SDL2
        depends on BR2_USE_WCHAR # Boost
@@ -36,6 +37,7 @@ comment "supertux needs OpenGL and a toolchain w/ C++, gcc >= 6, NPTL, dynamic l
        depends on BR2_PACKAGE_OPENAL_ARCH_SUPPORTS
        depends on BR2_PACKAGE_XORG7
        depends on BR2_USE_MMU
+       depends on BR2_TOOLCHAIN_SUPPORTS_ALWAYS_LOCKFREE_ATOMIC_INTS
        depends on !BR2_INSTALL_LIBSTDCPP || !BR2_PACKAGE_HAS_LIBGL || \
                !BR2_TOOLCHAIN_GCC_AT_LEAST_6 || !BR2_TOOLCHAIN_HAS_THREADS_NPTL || \
                BR2_STATIC_LIBS || !BR2_USE_WCHAR
index f61bbf0e8faca21291e91b72c5abc0f94ee12b47..0d68fda171e8f0500c31ef86de173ac048673a01 100644 (file)
@@ -11,7 +11,7 @@ config BR2_PACKAGE_UHD
        bool "uhd"
        depends on BR2_INSTALL_LIBSTDCPP
        depends on !BR2_STATIC_LIBS
-       depends on BR2_TOOLCHAIN_SUPPORTS_ALWAYS_LOCKFREE_ATOMIC_INTS # boost-atomic
+       depends on BR2_TOOLCHAIN_SUPPORTS_ALWAYS_LOCKFREE_ATOMIC_INTS # boost-atomic, boost-filesystem
        depends on !BR2_TOOLCHAIN_HAS_GCC_BUG_64735 # boost-thread
        depends on BR2_TOOLCHAIN_HAS_THREADS_NPTL
        depends on BR2_USE_MMU # use fork()