diff mbox series

[1/1,v2] package/boost: bump to version 1.74.0

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

Commit Message

Maxim Kochetkov Sept. 9, 2020, 9:32 a.m. UTC
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(-)

Comments

Michael Nosthoff Sept. 9, 2020, 9:45 a.m. UTC | #1
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
Thomas Petazzoni Sept. 9, 2020, 1:56 p.m. UTC | #2
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
Nicolas Cavallari Sept. 9, 2020, 2:27 p.m. UTC | #3
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
Thomas Petazzoni Sept. 9, 2020, 2:59 p.m. UTC | #4
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
Arnout Vandecappelle Sept. 9, 2020, 8:42 p.m. UTC | #5
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 mbox series

Patch

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