All of lore.kernel.org
 help / color / mirror / Atom feed
* [Buildroot] [PATCH 1/1] package/libtracefs: needs threads
@ 2024-01-16 21:44 Fabrice Fontaine
  2024-01-16 23:27 ` Giulio Benetti
  2024-02-05 15:33 ` Thomas Petazzoni via buildroot
  0 siblings, 2 replies; 5+ messages in thread
From: Fabrice Fontaine @ 2024-01-16 21:44 UTC (permalink / raw)
  To: buildroot
  Cc: Giulio Benetti, Fabrice Fontaine, Yann E . MORIN,
	Maxime Chevallier

libtracefs needs threads resulting in the following build failure since
its addition in commit b1dbd3f679e6660325472e3fdca72127d74e6929:

In file included from /home/autobuild/autobuild/instance-2/output-1/host/xtensa-buildroot-linux-uclibc/sysroot/usr/include/stdio.h:27,
                 from ../src/tracefs-instance.c:10:
/home/autobuild/autobuild/instance-2/output-1/host/xtensa-buildroot-linux-uclibc/sysroot/usr/include/features.h:218:5: warning: #warning requested reentrant code, but thread support was disabled [-Wcpp]
  218 | #   warning requested reentrant code, but thread support was disabled
      |     ^~~~~~~
../src/tracefs-instance.c:20:10: fatal error: pthread.h: No such file or directory
   20 | #include <pthread.h>
      |          ^~~~~~~~~~~

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

Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
---
 package/libtracefs/Config.in  | 5 +++--
 package/linux-tools/Config.in | 5 +++--
 2 files changed, 6 insertions(+), 4 deletions(-)

diff --git a/package/libtracefs/Config.in b/package/libtracefs/Config.in
index bb0777b16c..a46bbe0bb1 100644
--- a/package/libtracefs/Config.in
+++ b/package/libtracefs/Config.in
@@ -1,5 +1,6 @@
 config BR2_PACKAGE_LIBTRACEFS
 	bool "libtracefs"
+	depends on BR2_TOOLCHAIN_HAS_THREADS
 	depends on !BR2_STATIC_LIBS # libtraceevent
 	select BR2_PACKAGE_LIBTRACEEVENT
 	help
@@ -8,5 +9,5 @@ config BR2_PACKAGE_LIBTRACEFS
 
 	  https://git.kernel.org/pub/scm/libs/libtrace/libtraceevent.git/
 
-comment "libtracefs needs a toolchain w/ dynamic library"
-	depends on BR2_STATIC_LIBS
+comment "libtracefs needs a toolchain w/ threads, dynamic library"
+	depends on !BR2_TOOLCHAIN_HAS_THREADS || BR2_STATIC_LIBS
diff --git a/package/linux-tools/Config.in b/package/linux-tools/Config.in
index ce744663f1..fb158f84d4 100644
--- a/package/linux-tools/Config.in
+++ b/package/linux-tools/Config.in
@@ -104,6 +104,7 @@ endif
 
 config BR2_PACKAGE_LINUX_TOOLS_RTLA
 	bool "rtla"
+	depends on BR2_TOOLCHAIN_HAS_THREADS # libtracefs
 	depends on !BR2_STATIC_LIBS # libtracefs
 	select BR2_PACKAGE_LINUX_TOOLS
 	select BR2_PACKAGE_LIBTRACEFS
@@ -124,8 +125,8 @@ config BR2_PACKAGE_LINUX_TOOLS_RTLA
 	  not available in Buildroot, so only rtla in kernels 5.19
 	  onwards is actually supported in Buildroot.
 
-comment "rtla needs a toolchain w/ dynamic library"
-	depends on BR2_STATIC_LIBS
+comment "rtla needs a toolchain w/ threads, dynamic library"
+	depends on !BR2_TOOLCHAIN_HAS_THREADS || BR2_STATIC_LIBS
 
 config BR2_PACKAGE_LINUX_TOOLS_SELFTESTS
 	bool"selftests"
-- 
2.43.0

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

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

* Re: [Buildroot] [PATCH 1/1] package/libtracefs: needs threads
  2024-01-16 21:44 [Buildroot] [PATCH 1/1] package/libtracefs: needs threads Fabrice Fontaine
@ 2024-01-16 23:27 ` Giulio Benetti
  2024-02-05 15:33 ` Thomas Petazzoni via buildroot
  1 sibling, 0 replies; 5+ messages in thread
From: Giulio Benetti @ 2024-01-16 23:27 UTC (permalink / raw)
  To: Fabrice Fontaine, buildroot; +Cc: Yann E . MORIN, Maxime Chevallier

Hi Fabrice,

On 16/01/24 22:44, Fabrice Fontaine wrote:
> libtracefs needs threads resulting in the following build failure since
> its addition in commit b1dbd3f679e6660325472e3fdca72127d74e6929:
> 
> In file included from /home/autobuild/autobuild/instance-2/output-1/host/xtensa-buildroot-linux-uclibc/sysroot/usr/include/stdio.h:27,
>                   from ../src/tracefs-instance.c:10:
> /home/autobuild/autobuild/instance-2/output-1/host/xtensa-buildroot-linux-uclibc/sysroot/usr/include/features.h:218:5: warning: #warning requested reentrant code, but thread support was disabled [-Wcpp]
>    218 | #   warning requested reentrant code, but thread support was disabled
>        |     ^~~~~~~
> ../src/tracefs-instance.c:20:10: fatal error: pthread.h: No such file or directory
>     20 | #include <pthread.h>
>        |          ^~~~~~~~~~~
> 
> Fixes:
>   - http://autobuild.buildroot.org/results/e0a8dd0781a1d1824a4cb78f47dcff4055083959
> 
> Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>

Thank you for the patch. I thought pthread was required only while
building samples instead you're right it's mandatory for libtracefs
itself so:
Reviewed-by: Giulio Benetti <giulio.benetti@benettiengineering.com>

Best regards
-- 
Giulio Benetti
CEO&CTO@Benetti Engineering sas

> ---
>   package/libtracefs/Config.in  | 5 +++--
>   package/linux-tools/Config.in | 5 +++--
>   2 files changed, 6 insertions(+), 4 deletions(-)
> 
> diff --git a/package/libtracefs/Config.in b/package/libtracefs/Config.in
> index bb0777b16c..a46bbe0bb1 100644
> --- a/package/libtracefs/Config.in
> +++ b/package/libtracefs/Config.in
> @@ -1,5 +1,6 @@
>   config BR2_PACKAGE_LIBTRACEFS
>   	bool "libtracefs"
> +	depends on BR2_TOOLCHAIN_HAS_THREADS
>   	depends on !BR2_STATIC_LIBS # libtraceevent
>   	select BR2_PACKAGE_LIBTRACEEVENT
>   	help
> @@ -8,5 +9,5 @@ config BR2_PACKAGE_LIBTRACEFS
>   
>   	  https://git.kernel.org/pub/scm/libs/libtrace/libtraceevent.git/
>   
> -comment "libtracefs needs a toolchain w/ dynamic library"
> -	depends on BR2_STATIC_LIBS
> +comment "libtracefs needs a toolchain w/ threads, dynamic library"
> +	depends on !BR2_TOOLCHAIN_HAS_THREADS || BR2_STATIC_LIBS
> diff --git a/package/linux-tools/Config.in b/package/linux-tools/Config.in
> index ce744663f1..fb158f84d4 100644
> --- a/package/linux-tools/Config.in
> +++ b/package/linux-tools/Config.in
> @@ -104,6 +104,7 @@ endif
>   
>   config BR2_PACKAGE_LINUX_TOOLS_RTLA
>   	bool "rtla"
> +	depends on BR2_TOOLCHAIN_HAS_THREADS # libtracefs
>   	depends on !BR2_STATIC_LIBS # libtracefs
>   	select BR2_PACKAGE_LINUX_TOOLS
>   	select BR2_PACKAGE_LIBTRACEFS
> @@ -124,8 +125,8 @@ config BR2_PACKAGE_LINUX_TOOLS_RTLA
>   	  not available in Buildroot, so only rtla in kernels 5.19
>   	  onwards is actually supported in Buildroot.
>   
> -comment "rtla needs a toolchain w/ dynamic library"
> -	depends on BR2_STATIC_LIBS
> +comment "rtla needs a toolchain w/ threads, dynamic library"
> +	depends on !BR2_TOOLCHAIN_HAS_THREADS || BR2_STATIC_LIBS
>   
>   config BR2_PACKAGE_LINUX_TOOLS_SELFTESTS
>   	bool"selftests"

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

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

* Re: [Buildroot] [PATCH 1/1] package/libtracefs: needs threads
  2024-01-16 21:44 [Buildroot] [PATCH 1/1] package/libtracefs: needs threads Fabrice Fontaine
  2024-01-16 23:27 ` Giulio Benetti
@ 2024-02-05 15:33 ` Thomas Petazzoni via buildroot
  2024-02-05 15:36   ` Fabrice Fontaine
  1 sibling, 1 reply; 5+ messages in thread
From: Thomas Petazzoni via buildroot @ 2024-02-05 15:33 UTC (permalink / raw)
  To: Fabrice Fontaine
  Cc: Giulio Benetti, Maxime Chevallier, Yann E . MORIN, buildroot

On Tue, 16 Jan 2024 22:44:27 +0100
Fabrice Fontaine <fontaine.fabrice@gmail.com> wrote:

> libtracefs needs threads resulting in the following build failure since
> its addition in commit b1dbd3f679e6660325472e3fdca72127d74e6929:
> 
> In file included from /home/autobuild/autobuild/instance-2/output-1/host/xtensa-buildroot-linux-uclibc/sysroot/usr/include/stdio.h:27,
>                  from ../src/tracefs-instance.c:10:
> /home/autobuild/autobuild/instance-2/output-1/host/xtensa-buildroot-linux-uclibc/sysroot/usr/include/features.h:218:5: warning: #warning requested reentrant code, but thread support was disabled [-Wcpp]
>   218 | #   warning requested reentrant code, but thread support was disabled
>       |     ^~~~~~~
> ../src/tracefs-instance.c:20:10: fatal error: pthread.h: No such file or directory
>    20 | #include <pthread.h>
>       |          ^~~~~~~~~~~
> 
> Fixes:
>  - http://autobuild.buildroot.org/results/e0a8dd0781a1d1824a4cb78f47dcff4055083959
> 
> Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
> ---
>  package/libtracefs/Config.in  | 5 +++--
>  package/linux-tools/Config.in | 5 +++--
>  2 files changed, 6 insertions(+), 4 deletions(-)

Thanks a lot! It looks like you missed trace-cmd package, which also
selects libtracefs, so I fixed that up when applying. Thanks!

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

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

* Re: [Buildroot] [PATCH 1/1] package/libtracefs: needs threads
  2024-02-05 15:33 ` Thomas Petazzoni via buildroot
@ 2024-02-05 15:36   ` Fabrice Fontaine
  2024-02-05 15:46     ` Thomas Petazzoni via buildroot
  0 siblings, 1 reply; 5+ messages in thread
From: Fabrice Fontaine @ 2024-02-05 15:36 UTC (permalink / raw)
  To: Thomas Petazzoni
  Cc: Giulio Benetti, Maxime Chevallier, Yann E . MORIN, buildroot

Hi Thomas,

Le lun. 5 févr. 2024 à 16:34, Thomas Petazzoni
<thomas.petazzoni@bootlin.com> a écrit :
>
> On Tue, 16 Jan 2024 22:44:27 +0100
> Fabrice Fontaine <fontaine.fabrice@gmail.com> wrote:
>
> > libtracefs needs threads resulting in the following build failure since
> > its addition in commit b1dbd3f679e6660325472e3fdca72127d74e6929:
> >
> > In file included from /home/autobuild/autobuild/instance-2/output-1/host/xtensa-buildroot-linux-uclibc/sysroot/usr/include/stdio.h:27,
> >                  from ../src/tracefs-instance.c:10:
> > /home/autobuild/autobuild/instance-2/output-1/host/xtensa-buildroot-linux-uclibc/sysroot/usr/include/features.h:218:5: warning: #warning requested reentrant code, but thread support was disabled [-Wcpp]
> >   218 | #   warning requested reentrant code, but thread support was disabled
> >       |     ^~~~~~~
> > ../src/tracefs-instance.c:20:10: fatal error: pthread.h: No such file or directory
> >    20 | #include <pthread.h>
> >       |          ^~~~~~~~~~~
> >
> > Fixes:
> >  - http://autobuild.buildroot.org/results/e0a8dd0781a1d1824a4cb78f47dcff4055083959
> >
> > Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
> > ---
> >  package/libtracefs/Config.in  | 5 +++--
> >  package/linux-tools/Config.in | 5 +++--
> >  2 files changed, 6 insertions(+), 4 deletions(-)
>
> Thanks a lot! It looks like you missed trace-cmd package, which also
> selects libtracefs, so I fixed that up when applying. Thanks!

I didn't miss trace-cmd, it already has a dependency on
BR2_TOOLCHAIN_HAS_THREADS_NPTL.

>
> Thomas
> --
> Thomas Petazzoni, CTO, Bootlin
> Embedded Linux and Kernel engineering
> https://bootlin.com

Best Regards,

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

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

* Re: [Buildroot] [PATCH 1/1] package/libtracefs: needs threads
  2024-02-05 15:36   ` Fabrice Fontaine
@ 2024-02-05 15:46     ` Thomas Petazzoni via buildroot
  0 siblings, 0 replies; 5+ messages in thread
From: Thomas Petazzoni via buildroot @ 2024-02-05 15:46 UTC (permalink / raw)
  To: Fabrice Fontaine
  Cc: Giulio Benetti, Maxime Chevallier, Yann E . MORIN, buildroot

On Mon, 5 Feb 2024 16:36:45 +0100
Fabrice Fontaine <fontaine.fabrice@gmail.com> wrote:

> > Thanks a lot! It looks like you missed trace-cmd package, which also
> > selects libtracefs, so I fixed that up when applying. Thanks!  
> 
> I didn't miss trace-cmd, it already has a dependency on
> BR2_TOOLCHAIN_HAS_THREADS_NPTL.

It is totally true, but in general we try to propagate the dependencies
anyway so that we keep track of why we have those dependencies. I agree
it's not a 100% accurate rule in the way we apply it.

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] 5+ messages in thread

end of thread, other threads:[~2024-02-05 15:47 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2024-01-16 21:44 [Buildroot] [PATCH 1/1] package/libtracefs: needs threads Fabrice Fontaine
2024-01-16 23:27 ` Giulio Benetti
2024-02-05 15:33 ` Thomas Petazzoni via buildroot
2024-02-05 15:36   ` Fabrice Fontaine
2024-02-05 15:46     ` Thomas Petazzoni via buildroot

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.