All of lore.kernel.org
 help / color / mirror / Atom feed
* [Buildroot] [PATCH v2, 1/2] Revert "package/log4cxx: select boost chrono and date-time with gcc < 7"
@ 2021-11-19 17:55 Fabrice Fontaine
  2021-11-19 17:55 ` [Buildroot] [PATCH v2,2/2] package/boost: threads needs date-time Fabrice Fontaine
  2021-11-21 13:57 ` [Buildroot] [PATCH v2, 1/2] Revert "package/log4cxx: select boost chrono and date-time with gcc < 7" Thomas Petazzoni
  0 siblings, 2 replies; 8+ messages in thread
From: Fabrice Fontaine @ 2021-11-19 17:55 UTC (permalink / raw)
  To: buildroot; +Cc: Fabrice Fontaine, Thomas Petazzoni

This reverts commit 3c2245cb65741c965f4bb87d35ac3c64f250a1ae to move
these selects on boost side as the build failure was raised with gcc >=
7 (making this commit a "no-op"). Indeed, the build failure is raised
with cmake < 3.21.3, because cmake assumed that boost thread depends on
date-time until
https://github.com/Kitware/CMake/commit/1ad0c5ae53fc0c4f774166337f0e9c93c578cf9b.

Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
---
Changes v1 -> v2 (after review of Yann E. Morin):
 - Update commuit message to explain that this commit is a no-op and the
   relationship with cmake

 package/log4cxx/Config.in | 2 --
 1 file changed, 2 deletions(-)

diff --git a/package/log4cxx/Config.in b/package/log4cxx/Config.in
index 27a5f06988..6f1956f829 100644
--- a/package/log4cxx/Config.in
+++ b/package/log4cxx/Config.in
@@ -12,8 +12,6 @@ config BR2_PACKAGE_LOG4CXX
 	select BR2_PACKAGE_APR_UTIL
 	select BR2_PACKAGE_BOOST if !BR2_TOOLCHAIN_GCC_AT_LEAST_7
 	select BR2_PACKAGE_BOOST_ATOMIC if !BR2_TOOLCHAIN_GCC_AT_LEAST_7
-	select BR2_PACKAGE_BOOST_CHRONO if !BR2_TOOLCHAIN_GCC_AT_LEAST_7
-	select BR2_PACKAGE_BOOST_DATE_TIME if !BR2_TOOLCHAIN_GCC_AT_LEAST_7
 	select BR2_PACKAGE_BOOST_THREAD if !BR2_TOOLCHAIN_GCC_AT_LEAST_7
 	help
 	  Apache log4cxx is a logging framework for C++ patterned
-- 
2.33.0

_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot

^ permalink raw reply related	[flat|nested] 8+ messages in thread

* [Buildroot] [PATCH v2,2/2] package/boost: threads needs date-time
  2021-11-19 17:55 [Buildroot] [PATCH v2, 1/2] Revert "package/log4cxx: select boost chrono and date-time with gcc < 7" Fabrice Fontaine
@ 2021-11-19 17:55 ` Fabrice Fontaine
  2021-11-21 19:43   ` [Buildroot] [PATCH v2, 2/2] " Thomas Petazzoni
  2021-11-21 13:57 ` [Buildroot] [PATCH v2, 1/2] Revert "package/log4cxx: select boost chrono and date-time with gcc < 7" Thomas Petazzoni
  1 sibling, 1 reply; 8+ messages in thread
From: Fabrice Fontaine @ 2021-11-19 17:55 UTC (permalink / raw)
  To: buildroot; +Cc: Fabrice Fontaine, Thomas Petazzoni

Fix the following build failure with gcc >= 7 raised since commit
4e267a7d3d5d350710a81ada188a1629348e4b4a because until cmake 3.21.3 and
https://github.com/Kitware/CMake/commit/1ad0c5ae53fc0c4f774166337f0e9c93c578cf9b,
cmake assumed that boost threads depends on boost date-time. As, we
can't patch all cmake in the field, just select boost date-time.

-- Found Boost: /home/buildroot/autobuild/instance-3/output-1/host/sh4-buildroot-linux-uclibc/sysroot/usr/include (found version "1.77.0") found components: thread chrono atomic missing components: date_time

Fixes:
 - http://autobuild.buildroot.org/results/e7443e3bc955e7eddd7bed63e2728880dabb31a7

Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
---
Changes v1 -> v2 (after review of Yann E. Morin):
 - Update commit message to explain the relationship with cmake

 package/boost/Config.in | 1 +
 1 file changed, 1 insertion(+)

diff --git a/package/boost/Config.in b/package/boost/Config.in
index 1c405a36c3..8310294ffd 100644
--- a/package/boost/Config.in
+++ b/package/boost/Config.in
@@ -348,6 +348,7 @@ config BR2_PACKAGE_BOOST_THREAD
 	depends on BR2_TOOLCHAIN_SUPPORTS_ALWAYS_LOCKFREE_ATOMIC_INTS
 	depends on !BR2_TOOLCHAIN_HAS_GCC_BUG_64735 # std::current_exception
 	select BR2_PACKAGE_BOOST_CHRONO
+	select BR2_PACKAGE_BOOST_DATE_TIME
 	select BR2_PACKAGE_BOOST_SYSTEM
 	help
 	  Portable C++ multi-threading. C++11, C++14.
-- 
2.33.0

_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot

^ permalink raw reply related	[flat|nested] 8+ messages in thread

* Re: [Buildroot] [PATCH v2, 1/2] Revert "package/log4cxx: select boost chrono and date-time with gcc < 7"
  2021-11-19 17:55 [Buildroot] [PATCH v2, 1/2] Revert "package/log4cxx: select boost chrono and date-time with gcc < 7" Fabrice Fontaine
  2021-11-19 17:55 ` [Buildroot] [PATCH v2,2/2] package/boost: threads needs date-time Fabrice Fontaine
@ 2021-11-21 13:57 ` Thomas Petazzoni
  2022-01-13 22:14   ` Thomas Petazzoni
  1 sibling, 1 reply; 8+ messages in thread
From: Thomas Petazzoni @ 2021-11-21 13:57 UTC (permalink / raw)
  To: Fabrice Fontaine; +Cc: buildroot

On Fri, 19 Nov 2021 18:55:52 +0100
Fabrice Fontaine <fontaine.fabrice@gmail.com> wrote:

> This reverts commit 3c2245cb65741c965f4bb87d35ac3c64f250a1ae to move
> these selects on boost side as the build failure was raised with gcc >=
> 7 (making this commit a "no-op"). Indeed, the build failure is raised
> with cmake < 3.21.3, because cmake assumed that boost thread depends on
> date-time until
> https://github.com/Kitware/CMake/commit/1ad0c5ae53fc0c4f774166337f0e9c93c578cf9b.

I don't understand why you say this commit is a no-op. It clearly
isn't. In gcc < 7.x configurations, this commit ensures that boost
chrono and boost date-time are selected.

The fact that you realize later that the build failure occurred with
gcc >= 7.x, meaning this commit does not help fixing the issue does not
make this commit a no-op.

Thomas
-- 
Thomas Petazzoni, co-owner and CEO, Bootlin
Embedded Linux and Kernel engineering and training
https://bootlin.com
_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot

^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: [Buildroot] [PATCH v2, 2/2] package/boost: threads needs date-time
  2021-11-19 17:55 ` [Buildroot] [PATCH v2,2/2] package/boost: threads needs date-time Fabrice Fontaine
@ 2021-11-21 19:43   ` Thomas Petazzoni
  2021-11-22 20:53     ` Arnout Vandecappelle
  0 siblings, 1 reply; 8+ messages in thread
From: Thomas Petazzoni @ 2021-11-21 19:43 UTC (permalink / raw)
  To: Fabrice Fontaine; +Cc: buildroot

On Fri, 19 Nov 2021 18:55:53 +0100
Fabrice Fontaine <fontaine.fabrice@gmail.com> wrote:

> Fix the following build failure with gcc >= 7 raised since commit
> 4e267a7d3d5d350710a81ada188a1629348e4b4a because until cmake 3.21.3 and
> https://github.com/Kitware/CMake/commit/1ad0c5ae53fc0c4f774166337f0e9c93c578cf9b,
> cmake assumed that boost threads depends on boost date-time. As, we
> can't patch all cmake in the field, just select boost date-time.
> 
> -- Found Boost: /home/buildroot/autobuild/instance-3/output-1/host/sh4-buildroot-linux-uclibc/sysroot/usr/include (found version "1.77.0") found components: thread chrono atomic missing components: date_time
> 
> Fixes:
>  - http://autobuild.buildroot.org/results/e7443e3bc955e7eddd7bed63e2728880dabb31a7

So just to work-around a CMake < 3.21.3 bug, we force this select in
Boost? This doesn't feel like a very good solution :-/

Even in Buildroot, we're still using CMake 3.16.9.

Thomas
-- 
Thomas Petazzoni, co-owner and CEO, Bootlin
Embedded Linux and Kernel engineering and training
https://bootlin.com
_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot

^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: [Buildroot] [PATCH v2, 2/2] package/boost: threads needs date-time
  2021-11-21 19:43   ` [Buildroot] [PATCH v2, 2/2] " Thomas Petazzoni
@ 2021-11-22 20:53     ` Arnout Vandecappelle
  2021-11-23 11:24       ` Thomas Petazzoni
  0 siblings, 1 reply; 8+ messages in thread
From: Arnout Vandecappelle @ 2021-11-22 20:53 UTC (permalink / raw)
  To: Thomas Petazzoni, Fabrice Fontaine; +Cc: buildroot



On 21/11/2021 20:43, Thomas Petazzoni wrote:
> On Fri, 19 Nov 2021 18:55:53 +0100
> Fabrice Fontaine <fontaine.fabrice@gmail.com> wrote:
> 
>> Fix the following build failure with gcc >= 7 raised since commit
>> 4e267a7d3d5d350710a81ada188a1629348e4b4a because until cmake 3.21.3 and
>> https://github.com/Kitware/CMake/commit/1ad0c5ae53fc0c4f774166337f0e9c93c578cf9b,
>> cmake assumed that boost threads depends on boost date-time. As, we
>> can't patch all cmake in the field, just select boost date-time.
>>
>> -- Found Boost: /home/buildroot/autobuild/instance-3/output-1/host/sh4-buildroot-linux-uclibc/sysroot/usr/include (found version "1.77.0") found components: thread chrono atomic missing components: date_time
>>
>> Fixes:
>>   - http://autobuild.buildroot.org/results/e7443e3bc955e7eddd7bed63e2728880dabb31a7
> 
> So just to work-around a CMake < 3.21.3 bug, we force this select in
> Boost? This doesn't feel like a very good solution :-/
> 
> Even in Buildroot, we're still using CMake 3.16.9.

  So what we could do instead is to bump CMake to 3.22, and set our mininum 
CMake version to 3.21.3. This is going to hurt the build time for some people, 
but I guess it's better than forcing boost date-time?

  On the other hand, boost date-time probably has a very small additional size 
cost compared to the rest of boost, so this patch is probably a better ad hoc 
solution. I'd just add a comment in the Config.in file to explain that this is 
just a workaround, with a longer explanation in the commit message.


  Regards,
  Arnout
_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot

^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: [Buildroot] [PATCH v2, 2/2] package/boost: threads needs date-time
  2021-11-22 20:53     ` Arnout Vandecappelle
@ 2021-11-23 11:24       ` Thomas Petazzoni
  0 siblings, 0 replies; 8+ messages in thread
From: Thomas Petazzoni @ 2021-11-23 11:24 UTC (permalink / raw)
  To: Arnout Vandecappelle; +Cc: Fabrice Fontaine, buildroot

On Mon, 22 Nov 2021 21:53:18 +0100
Arnout Vandecappelle <arnout@mind.be> wrote:

>   So what we could do instead is to bump CMake to 3.22, and set our mininum 
> CMake version to 3.21.3. This is going to hurt the build time for some people, 
> but I guess it's better than forcing boost date-time?
> 
>   On the other hand, boost date-time probably has a very small additional size 
> cost compared to the rest of boost, so this patch is probably a better ad hoc 
> solution. I'd just add a comment in the Config.in file to explain that this is 
> just a workaround, with a longer explanation in the commit message.

Fair enough, that works for me. We need to remember to drop that
workaround at some point in the future, when we require at least CMake
3.21.3.

Thomas
-- 
Thomas Petazzoni, co-owner and CEO, Bootlin
Embedded Linux and Kernel engineering and training
https://bootlin.com
_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot

^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: [Buildroot] [PATCH v2, 1/2] Revert "package/log4cxx: select boost chrono and date-time with gcc < 7"
  2021-11-21 13:57 ` [Buildroot] [PATCH v2, 1/2] Revert "package/log4cxx: select boost chrono and date-time with gcc < 7" Thomas Petazzoni
@ 2022-01-13 22:14   ` Thomas Petazzoni
  2022-01-16  9:43     ` Fabrice Fontaine
  0 siblings, 1 reply; 8+ messages in thread
From: Thomas Petazzoni @ 2022-01-13 22:14 UTC (permalink / raw)
  To: Fabrice Fontaine; +Cc: buildroot

Hello Fabrice,

On Sun, 21 Nov 2021 14:57:41 +0100
Thomas Petazzoni <thomas.petazzoni@bootlin.com> wrote:

> On Fri, 19 Nov 2021 18:55:52 +0100
> Fabrice Fontaine <fontaine.fabrice@gmail.com> wrote:
> 
> > This reverts commit 3c2245cb65741c965f4bb87d35ac3c64f250a1ae to move
> > these selects on boost side as the build failure was raised with gcc >=
> > 7 (making this commit a "no-op"). Indeed, the build failure is raised
> > with cmake < 3.21.3, because cmake assumed that boost thread depends on
> > date-time until
> > https://github.com/Kitware/CMake/commit/1ad0c5ae53fc0c4f774166337f0e9c93c578cf9b.  
> 
> I don't understand why you say this commit is a no-op. It clearly
> isn't. In gcc < 7.x configurations, this commit ensures that boost
> chrono and boost date-time are selected.
> 
> The fact that you realize later that the build failure occurred with
> gcc >= 7.x, meaning this commit does not help fixing the issue does not
> make this commit a no-op.

Do you have some feedback/comment on the above questions?

Thanks!

Thomas
-- 
Thomas Petazzoni, co-owner and CEO, Bootlin
Embedded Linux and Kernel engineering and training
https://bootlin.com
_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot

^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: [Buildroot] [PATCH v2, 1/2] Revert "package/log4cxx: select boost chrono and date-time with gcc < 7"
  2022-01-13 22:14   ` Thomas Petazzoni
@ 2022-01-16  9:43     ` Fabrice Fontaine
  0 siblings, 0 replies; 8+ messages in thread
From: Fabrice Fontaine @ 2022-01-16  9:43 UTC (permalink / raw)
  To: Thomas Petazzoni; +Cc: Buildroot Mailing List

Hello Thomas,

Le jeu. 13 janv. 2022 à 23:14, Thomas Petazzoni
<thomas.petazzoni@bootlin.com> a écrit :
>
> Hello Fabrice,
>
> On Sun, 21 Nov 2021 14:57:41 +0100
> Thomas Petazzoni <thomas.petazzoni@bootlin.com> wrote:
>
> > On Fri, 19 Nov 2021 18:55:52 +0100
> > Fabrice Fontaine <fontaine.fabrice@gmail.com> wrote:
> >
> > > This reverts commit 3c2245cb65741c965f4bb87d35ac3c64f250a1ae to move
> > > these selects on boost side as the build failure was raised with gcc >=
> > > 7 (making this commit a "no-op"). Indeed, the build failure is raised
> > > with cmake < 3.21.3, because cmake assumed that boost thread depends on
> > > date-time until
> > > https://github.com/Kitware/CMake/commit/1ad0c5ae53fc0c4f774166337f0e9c93c578cf9b.
> >
> > I don't understand why you say this commit is a no-op. It clearly
> > isn't. In gcc < 7.x configurations, this commit ensures that boost
> > chrono and boost date-time are selected.
> >
> > The fact that you realize later that the build failure occurred with
> > gcc >= 7.x, meaning this commit does not help fixing the issue does not
> > make this commit a no-op.
>
> Do you have some feedback/comment on the above questions?

Indeed, this is not a no-op so I suggest to only apply the second
patch of the serie.

>
> Thanks!
>
> Thomas
> --
> Thomas Petazzoni, co-owner and CEO, Bootlin
> Embedded Linux and Kernel engineering and training
> https://bootlin.com
Best Regards,

Fabrice
_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot

^ permalink raw reply	[flat|nested] 8+ messages in thread

end of thread, other threads:[~2022-01-16  9:45 UTC | newest]

Thread overview: 8+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-11-19 17:55 [Buildroot] [PATCH v2, 1/2] Revert "package/log4cxx: select boost chrono and date-time with gcc < 7" Fabrice Fontaine
2021-11-19 17:55 ` [Buildroot] [PATCH v2,2/2] package/boost: threads needs date-time Fabrice Fontaine
2021-11-21 19:43   ` [Buildroot] [PATCH v2, 2/2] " Thomas Petazzoni
2021-11-22 20:53     ` Arnout Vandecappelle
2021-11-23 11:24       ` Thomas Petazzoni
2021-11-21 13:57 ` [Buildroot] [PATCH v2, 1/2] Revert "package/log4cxx: select boost chrono and date-time with gcc < 7" Thomas Petazzoni
2022-01-13 22:14   ` Thomas Petazzoni
2022-01-16  9:43     ` Fabrice Fontaine

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.