Skip to contentSkip to conversation

disable linuxthreads for NPTL only architectures for uClibc-ng

PATCH New Waldemar Brodkorb 2 participants 2 messages Mar 4, 2015 – Mar 7, 2015

lore
Share & tools
lore
#0 lore raw

PATCH 1/1 disable linuxthreads for NPTL only architectures for uClibc-ng

uClibc-ng does not support multiple thread implementations for
an architecture and MMU configuration.
BFIN, ARM noMMU and m68k/Coldfire noMMU still uses linuxthreads in uClibc-ng. The other buildroot supported architectures support NPTL.
Reflect this in Buildroot configuration.
ARC would work with uClibc-ng 1.0.0 and TLS/NPTL, but the correct toolchain must be used.

---
 package/uclibc/Config.in |   29 +++++++++++++++++++++++++++++
 1 file changed, 29 insertions(+)
package/uclibc/Config.in +29 -0
index 3a65752..c939f3f 100644
@@ -5,6 +5,10 @@ config BR2_PACKAGE_UCLIBC
 	bool
 	default y
 
+# helper symbol robust against releases
+config BR2_PACKAGE_UCLIBC_NG
+	bool
+
 comment "uClibc Options"
 
 choice
@@ -23,6 +27,7 @@ choice
 
 	config BR2_UCLIBC_NG_VERSION_1_0_0
 		bool "uClibc-ng 1.0.0"
+		select BR2_PACKAGE_UCLIBC_NG
 
 	config BR2_UCLIBC_VERSION_XTENSA_GIT
 		bool "uClibc Git Xtensa"
@@ -117,10 +122,34 @@ choice
 		bool "linuxthreads"
 		depends on !BR2_bfin
 		depends on !BR2_xtensa
+		depends on !BR2_arm && BR2_PACKAGE_UCLIBC_NG
+		depends on !BR2_armeb && BR2_PACKAGE_UCLIBC_NG
+		depends on !BR2_i386 && BR2_PACKAGE_UCLIBC_NG
+		depends on !BR2_mips && BR2_PACKAGE_UCLIBC_NG
+		depends on !BR2_mipsel && BR2_PACKAGE_UCLIBC_NG
+		depends on !BR2_mips64 && BR2_PACKAGE_UCLIBC_NG
+		depends on !BR2_mips64el && BR2_PACKAGE_UCLIBC_NG
+		depends on !BR2_sh && BR2_PACKAGE_UCLIBC_NG
+		depends on !BR2_powerpc && BR2_PACKAGE_UCLIBC_NG
+		depends on !BR2_sparc && BR2_PACKAGE_UCLIBC_NG
+		depends on !BR2_x86_64 && BR2_PACKAGE_UCLIBC_NG
+		depends on !BR2_xtensa && BR2_PACKAGE_UCLIBC_NG
 		select BR2_TOOLCHAIN_HAS_THREADS
 
 	config BR2_PTHREADS_OLD
 		bool "linuxthreads (stable/old)"
+		depends on !BR2_arm && BR2_PACKAGE_UCLIBC_NG
+		depends on !BR2_armeb && BR2_PACKAGE_UCLIBC_NG
+		depends on !BR2_i386 && BR2_PACKAGE_UCLIBC_NG
+		depends on !BR2_mips && BR2_PACKAGE_UCLIBC_NG
+		depends on !BR2_mipsel && BR2_PACKAGE_UCLIBC_NG
+		depends on !BR2_mips64 && BR2_PACKAGE_UCLIBC_NG
+		depends on !BR2_mips64el && BR2_PACKAGE_UCLIBC_NG
+		depends on !BR2_sh && BR2_PACKAGE_UCLIBC_NG
+		depends on !BR2_powerpc && BR2_PACKAGE_UCLIBC_NG
+		depends on !BR2_sparc && BR2_PACKAGE_UCLIBC_NG
+		depends on !BR2_x86_64 && BR2_PACKAGE_UCLIBC_NG
+		depends on !BR2_xtensa && BR2_PACKAGE_UCLIBC_NG
 		select BR2_TOOLCHAIN_HAS_THREADS
 
 	config BR2_PTHREADS_NATIVE
Signature · 1 line
1.7.10.4
#1 lore raw

PATCH 1/1 disable linuxthreads for NPTL only architectures for uClibc-ng

Dear Waldemar Brodkorb,

Quoted 9 lines · Waldemar Brodkorb

uClibc-ng does not support multiple thread implementations for
an architecture and MMU configuration.
BFIN, ARM noMMU and m68k/Coldfire noMMU still uses linuxthreads in uClibc-ng. The other buildroot supported architectures support NPTL.
Reflect this in Buildroot configuration.
ARC would work with uClibc-ng 1.0.0 and TLS/NPTL, but the correct toolchain must be used.

I've posted a different proposal at
http://patchwork.ozlabs.org/patch/447577/. Can you review it?

Thanks!

Thomas

Signature · 3 lines
Thomas Petazzoni, CTO, Free Electrons
Embedded Linux, Kernel and Android engineering
http://free-electrons.com