Message ID | 20200909093240.2178664-1-fido_max@inbox.ru |
---|---|
State | Accepted |
Headers | show |
Series | [1/1,v2] package/boost: bump to version 1.74.0 | expand |
On 09.09.2020 11:32, Maxim Kochetkov via buildroot wrote: > gcc 10 C++20 breaks boost library due to allocator changes. > https://github.com/boostorg/bimap/issues/23 > > We need boost 1.74.0 to fix build with gcc 10 > > Signed-off-by: Maxim Kochetkov <fido_max@inbox.ru> Reviewed-by: Michael Nosthoff <buildroot@heine.tech> Tested-by: Michael Nosthoff <buildroot@heine.tech> for arm cortex-a15/gcc9/glibc
Hello Maxim, On Wed, 9 Sep 2020 12:32:40 +0300 Maxim Kochetkov via buildroot <buildroot@busybox.net> wrote: > gcc 10 C++20 breaks boost library due to allocator changes. > https://github.com/boostorg/bimap/issues/23 > > We need boost 1.74.0 to fix build with gcc 10 > > Signed-off-by: Maxim Kochetkov <fido_max@inbox.ru> We don't have any failures of boost 1.73.0 with gcc 10 in our autobuilders. Could you give more details about a specific configuration that fails to build? Indeed, we need to understand in which conditions this failure occurs, to see if we need to backport the fix to 2020.08.x. Thanks, Thomas
On 09/09/2020 15:56, Thomas Petazzoni wrote: > Hello Maxim, > > On Wed, 9 Sep 2020 12:32:40 +0300 > Maxim Kochetkov via buildroot <buildroot@busybox.net> wrote: > >> gcc 10 C++20 breaks boost library due to allocator changes. >> https://github.com/boostorg/bimap/issues/23 >> >> We need boost 1.74.0 to fix build with gcc 10 >> >> Signed-off-by: Maxim Kochetkov <fido_max@inbox.ru> > > We don't have any failures of boost 1.73.0 with gcc 10 in our > autobuilders. Could you give more details about a specific > configuration that fails to build? boost::bimap is a header-only library, it cannot fail to build, only its reverse dependencies may fail. the release notes⁰ also mention other header-only boost libraries "and more" are affected by the non-standard std::allocator usage. C++20 isn't the default in GCC 10 and it's highly probable that there are no package in buildroot that requires both boost and C++20. Especially since C++20 was finally approved this very Saturday. This is more about future proofing than fixing existing bugs. [0] https://www.boost.org/users/history/version_1_74_0.html
Hello Nicolas, On Wed, 9 Sep 2020 16:27:14 +0200 Nicolas Cavallari <nicolas.cavallari@green-communications.fr> wrote: > > We don't have any failures of boost 1.73.0 with gcc 10 in our > > autobuilders. Could you give more details about a specific > > configuration that fails to build? > > boost::bimap is a header-only library, it cannot fail to build, only its > reverse dependencies may fail. the release notes⁰ also mention other > header-only boost libraries "and more" are affected by the non-standard > std::allocator usage. > > C++20 isn't the default in GCC 10 and it's highly probable that there > are no package in buildroot that requires both boost and C++20. > Especially since C++20 was finally approved this very Saturday. > > This is more about future proofing than fixing existing bugs. > > [0] https://www.boost.org/users/history/version_1_74_0.html Thanks a lot for this explanation, it now makes complete sense. I think we should include exactly what you have described here in the commit log. Thanks! Thomas
On 09/09/2020 16:59, Thomas Petazzoni wrote: > Hello Nicolas, > > On Wed, 9 Sep 2020 16:27:14 +0200 > Nicolas Cavallari <nicolas.cavallari@green-communications.fr> wrote: > >>> We don't have any failures of boost 1.73.0 with gcc 10 in our >>> autobuilders. Could you give more details about a specific >>> configuration that fails to build? >> >> boost::bimap is a header-only library, it cannot fail to build, only its >> reverse dependencies may fail. the release notes⁰ also mention other >> header-only boost libraries "and more" are affected by the non-standard >> std::allocator usage. >> >> C++20 isn't the default in GCC 10 and it's highly probable that there >> are no package in buildroot that requires both boost and C++20. >> Especially since C++20 was finally approved this very Saturday. >> >> This is more about future proofing than fixing existing bugs. >> >> [0] https://www.boost.org/users/history/version_1_74_0.html > > Thanks a lot for this explanation, it now makes complete sense. I think > we should include exactly what you have described here in the commit > log. I did exactly that and applied to master, thanks! Regards, Arnout > > Thanks! > > Thomas >
diff --git a/package/boost/0002-fenv.patch b/package/boost/0002-fenv.patch index 95c769aea2..9dc7848c93 100644 --- a/package/boost/0002-fenv.patch +++ b/package/boost/0002-fenv.patch @@ -18,7 +18,7 @@ Index: b/boost/config/platform/linux.hpp =================================================================== --- a/boost/config/platform/linux.hpp +++ b/boost/config/platform/linux.hpp -@@ -47,6 +47,16 @@ +@@ -48,6 +48,16 @@ #endif // diff --git a/package/boost/boost.hash b/package/boost/boost.hash index c94699aa67..d11232f5a9 100644 --- a/package/boost/boost.hash +++ b/package/boost/boost.hash @@ -1,5 +1,5 @@ -# From https://www.boost.org/users/history/version_1_73_0.html -sha256 4eb3b8d442b426dc35346235c8733b5ae35ba431690e38c6a8263dce9fcbb402 boost_1_73_0.tar.bz2 +# From https://www.boost.org/users/history/version_1_74_0.html +sha256 83bfc1507731a0906e387fc28b7ef5417d591429e51e788417fe9ff025e116b1 boost_1_74_0.tar.bz2 # Locally computed sha256 c9bff75738922193e67fa726fa225535870d2aa1059f91452c411736284ad566 LICENSE_1_0.txt diff --git a/package/boost/boost.mk b/package/boost/boost.mk index 323802488d..82fe42d6b2 100644 --- a/package/boost/boost.mk +++ b/package/boost/boost.mk @@ -4,7 +4,7 @@ # ################################################################################ -BOOST_VERSION = 1.73.0 +BOOST_VERSION = 1.74.0 BOOST_SOURCE = boost_$(subst .,_,$(BOOST_VERSION)).tar.bz2 BOOST_SITE = https://dl.bintray.com/boostorg/release/$(BOOST_VERSION)/source BOOST_INSTALL_STAGING = YES
gcc 10 C++20 breaks boost library due to allocator changes. https://github.com/boostorg/bimap/issues/23 We need boost 1.74.0 to fix build with gcc 10 Signed-off-by: Maxim Kochetkov <fido_max@inbox.ru> --- package/boost/0002-fenv.patch | 2 +- package/boost/boost.hash | 4 ++-- package/boost/boost.mk | 2 +- 3 files changed, 4 insertions(+), 4 deletions(-)