summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--package/uclibc/Config.in43
1 files changed, 33 insertions, 10 deletions
diff --git a/package/uclibc/Config.in b/package/uclibc/Config.in
index 3a657526b2..18e02c2b80 100644
--- a/package/uclibc/Config.in
+++ b/package/uclibc/Config.in
@@ -7,6 +7,15 @@ config BR2_PACKAGE_UCLIBC
comment "uClibc Options"
+config BR2_UCLIBC_VERSION_SUPPORTS_LINUXTHREADS
+ bool
+
+config BR2_UCLIBC_VERSION_SUPPORTS_LINUXTHREADS_OLD
+ bool
+
+config BR2_UCLIBC_VERSION_SUPPORTS_NPTL
+ bool
+
choice
prompt "uClibc C library Version"
default BR2_UCLIBC_VERSION_0_9_33
@@ -15,21 +24,39 @@ choice
config BR2_UCLIBC_VERSION_0_9_33
bool "uClibc 0.9.33.x"
+ select BR2_UCLIBC_VERSION_SUPPORTS_LINUXTHREADS \
+ if !BR2_bfin
+ select BR2_UCLIBC_VERSION_SUPPORTS_LINUXTHREADS_OLD
+ select BR2_UCLIBC_VERSION_SUPPORTS_NPTL \
+ if !BR2_bfin && !BR2_x86_i386
depends on !(BR2_arc || BR2_xtensa)
config BR2_UCLIBC_VERSION_ARC_GIT
bool "uClibc Git ARC"
+ select BR2_UCLIBC_VERSION_SUPPORTS_LINUXTHREADS
+ select BR2_UCLIBC_VERSION_SUPPORTS_LINUXTHREADS_OLD
depends on BR2_arc
config BR2_UCLIBC_NG_VERSION_1_0_0
bool "uClibc-ng 1.0.0"
+ select BR2_UCLIBC_VERSION_SUPPORTS_LINUXTHREADS \
+ if BR2_bfin || BR2_m68k
+ select BR2_UCLIBC_VERSION_SUPPORTS_LINUXTHREADS_OLD \
+ if BR2_bfin || BR2_m68k || BR2_arm || BR2_armeb
+ select BR2_UCLIBC_VERSION_SUPPORTS_NPTL \
+ if !BR2_arc && !BR2_bfin && !BR2_m68k && !BR2_x86_i386
config BR2_UCLIBC_VERSION_XTENSA_GIT
bool "uClibc Git Xtensa"
depends on BR2_xtensa
+ select BR2_UCLIBC_SUPPORTS_LINUXTHREADS_OLD
config BR2_UCLIBC_VERSION_SNAPSHOT
bool "daily snapshot"
+ select BR2_UCLIBC_SUPPORTS_LINUXTHREADS if !BR2_bfin && !BR2_xtensa
+ select BR2_UCLIBC_SUPPORTS_LINUXTHREADS_OLD
+ select BR2_UCLIBC_VERSION_SUPPORTS_NPTL \
+ if !BR2_bfin && !BR2_x86_i386 && !BR2_xtensa
depends on !(BR2_arc)
endchoice
@@ -101,8 +128,9 @@ config BR2_TOOLCHAIN_BUILDROOT_LOCALE
choice
prompt "Thread library implementation"
- default BR2_PTHREADS_NATIVE if !BR2_xtensa
- default BR2_PTHREADS_OLD
+ default BR2_PTHREADS_NATIVE if BR2_UCLIBC_VERSION_SUPPORTS_NPTL
+ default BR2_PTHREADS_OLD if BR2_UCLIBC_VERSION_SUPPORTS_LINUXTHREADS_OLD
+ default BR2_PTHREADS if BR2_UCLIBC_VERSION_SUPPORTS_LINUXTHREADS
help
Use this option to select the thread library implementation
that should be used in your toolchain. Not all thread
@@ -115,24 +143,19 @@ choice
config BR2_PTHREADS
bool "linuxthreads"
- depends on !BR2_bfin
- depends on !BR2_xtensa
select BR2_TOOLCHAIN_HAS_THREADS
+ depends on BR2_UCLIBC_VERSION_SUPPORTS_LINUXTHREADS
config BR2_PTHREADS_OLD
bool "linuxthreads (stable/old)"
select BR2_TOOLCHAIN_HAS_THREADS
+ depends on BR2_UCLIBC_VERSION_SUPPORTS_LINUXTHREADS_OLD
config BR2_PTHREADS_NATIVE
bool "Native POSIX Threading (NPTL)"
select BR2_TOOLCHAIN_HAS_THREADS
select BR2_TOOLCHAIN_HAS_THREADS_NPTL
- depends on !BR2_arc
- depends on !BR2_bfin
- # There is NPTL support for Xtensa in uClibc-ng, but
- # not in the main uClibc repository.
- depends on !BR2_xtensa || !BR2_UCLIBC_VERSION_XTENSA_GIT
- depends on !BR2_x86_i386
+ depends on BR2_UCLIBC_VERSION_SUPPORTS_NPTL
endchoice
config BR2_PTHREAD_DEBUG
OpenPOWER on IntegriCloud