Skip to contentSkip to conversation

libffi: Needs threads support in toolchain

PATCH New Maxime Ripard 3 participants 3 messages Nov 17, 2012

lore
Share & tools
lore
#0 lore raw

PATCH 1/1 libffi: Needs threads support in toolchain

Fixes
http://autobuild.buildroot.org/results/7ee57d01917ea72d1811469e482513dda2ceb1ea/build-end.log

---
 package/libffi/Config.in   |    1 +
 package/libglib2/Config.in |    1 +
 package/python/Config.in   |    1 +
 package/python3/Config.in  |    1 +
 4 files changed, 4 insertions(+)
package/libffi/Config.in +1 -0
index 7211f8f..6c7688c 100644
@@ -1,5 +1,6 @@
 config BR2_PACKAGE_LIBFFI
 	bool "libffi"
+	depends on BR2_TOOLCHAIN_HAS_THREADS
 	help
 	  The libffi library provides a portable, high level
 	  programming interface to various calling conventions. This
package/libglib2/Config.in +1 -0
index 5282885..7b1040c 100644
@@ -5,6 +5,7 @@ config BR2_PACKAGE_LIBGLIB2
 	select BR2_PACKAGE_LIBFFI
 	select BR2_PACKAGE_ZLIB
 	depends on BR2_USE_WCHAR # gettext
+	depends on BR2_TOOLCHAIN_HAS_THREADS # libffi
 	help
 	  Low-level core library that forms the basis of GTK+ and GNOME.
 
package/python/Config.in +1 -0
index 4089cce..af80ec4 100644
@@ -3,6 +3,7 @@ config BR2_PACKAGE_PYTHON
 	depends on BR2_USE_WCHAR
 	# uses fork()
 	depends on BR2_USE_MMU
+	depends on BR2_TOOLCHAIN_HAS_THREADS # libffi
 	select BR2_PACKAGE_LIBFFI
 	help
 	  The python language interpreter.
package/python3/Config.in +1 -0
index 2e1e98b..4f5e67d 100644
@@ -1,6 +1,7 @@
 config BR2_PACKAGE_PYTHON3
 	bool "python3"
 	depends on BR2_USE_WCHAR
+	depends on BR2_TOOLCHAIN_HAS_THREADS # libffi
 	select BR2_PACKAGE_LIBFFI
 	help
 	  The python language interpreter.
Signature · 1 line
1.7.9.5
#1 lore raw

PATCH 1/1 libffi: Needs threads support in toolchain

Quoted 1 line
Quoted 1 line
Quoted 1 line
Quoted 1 line
Quoted 1 line

"Maxime" == Maxime Ripard <[email protected]> writes:

Maxime> Fixes
Maxime> http://autobuild.buildroot.org/results/7ee57d01917ea72d1811469e482513dda2ceb1ea/build-end.log

Maxime> Signed-off-by: Maxime Ripard <[email protected]> Maxime> ---

 Maxime>  package/libffi/Config.in   |    1 +
 Maxime>  package/libglib2/Config.in |    1 +
 Maxime>  package/python/Config.in   |    1 +
 Maxime>  package/python3/Config.in  |    1 +

Maxime> 4 files changed, 4 insertions(+)

Maxime> diff --git a/package/libffi/Config.in b/package/libffi/Config.in Maxime> index 7211f8f..6c7688c 100644
Maxime> --- a/package/libffi/Config.in
Maxime> +++ b/package/libffi/Config.in
Maxime> @@ -1,5 +1,6 @@
Maxime> config BR2_PACKAGE_LIBFFI
Maxime> bool "libffi"
Maxime> + depends on BR2_TOOLCHAIN_HAS_THREADS

 Maxime>  	help
 Maxime>  	  The libffi library provides a portable, high level
 Maxime>  	  programming interface to various calling conventions. This
 Maxime> diff --git a/package/libglib2/Config.in b/package/libglib2/Config.in
 Maxime> index 5282885..7b1040c 100644
 Maxime> --- a/package/libglib2/Config.in
 Maxime> +++ b/package/libglib2/Config.in
 Maxime> @@ -5,6 +5,7 @@ config BR2_PACKAGE_LIBGLIB2
 Maxime>  	select BR2_PACKAGE_LIBFFI
 Maxime>  	select BR2_PACKAGE_ZLIB
 Maxime>  	depends on BR2_USE_WCHAR # gettext

Maxime> + depends on BR2_TOOLCHAIN_HAS_THREADS # libffi

You will unfortunately also have to add it everywhere a package selects libglib2 (and the packages selecting those):

git grep -l 'select BR2_PACKAGE_LIBGLIB2' package
package/atk/Config.in
package/bluez_utils/Config.in
package/connman/Config.in
package/dbus-glib/Config.in
package/docker/Config.in
package/enchant/Config.in
package/gamin/Config.in
package/gdk-pixbuf/Config.in
package/glib-networking/Config.in
package/gmpc/Config.in
package/gob2/Config.in
package/gvfs/Config.in
package/latencytop/Config.in
package/libglade/Config.in
package/libgtk2/Config.in
package/libmms/Config.in
package/libmpd/Config.in
package/librsvg/Config.in
package/libsoup/Config.in
package/lttng-babeltrace/Config.in
package/multimedia/gstreamer/Config.in
package/multimedia/mpd/Config.in
package/nbd/Config.in

Signature · 1 line
Bye, Peter Korsgaard
#2 lore raw

PATCH 1/1 libffi: Needs threads support in toolchain

In reply to Maxime Ripard

Dear Maxime Ripard,

Quoted 4 lines · Maxime Ripard

Fixes
http://autobuild.buildroot.org/results/7ee57d01917ea72d1811469e482513dda2ceb1ea/build-end.log

As Peter said, your patch cannot work, as we have to fix all the reverse dependencies. I'll try to cook a patch that removes the libffi dependency on threads when threads are not available.

Best regards,

Thomas

Signature · 4 lines
Thomas Petazzoni, Free Electrons
Kernel, drivers, real-time and embedded Linux
development, consulting, training and support.
http://free-electrons.com