[PATCH 2/4] libc: libces are responsible for naming their threads implementation

Bryan Hundven bryanhundven@gmail.com
Fri Aug 1 02:02:00 GMT 2014


From: "Yann E. MORIN" <yann.morin.1998@free.fr>

This will help add new implementations, such as the one in musl.

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Signed-off-by: Bryan Hundven <bryanhundven@gmail.com>
---
 config/libc.in        | 7 ++-----
 config/libc/eglibc.in | 3 +++
 config/libc/glibc.in  | 3 +++
 config/libc/mingw.in  | 3 +++
 config/libc/none.in   | 6 ++++++
 config/libc/uClibc.in | 4 ++++
 6 files changed, 21 insertions(+), 5 deletions(-)

diff --git a/config/libc.in b/config/libc.in
index 240a01e..ba6da8f 100644
--- a/config/libc.in
+++ b/config/libc.in
@@ -39,13 +39,10 @@ config LIBC_SUPPORT_THREADS_WIN32
 config LIBC_SUPPORT_THREADS_NONE
     bool
 
+# C libraries should provide other values
 config THREADS
     string
-    default "nptl"          if THREADS_NATIVE
-    default "linuxthreads"  if THREADS_LT
-    default "win32"         if THREADS_WIN32
-    default "none"          if THREADS_NONE || LIBC_none
-#                              No C library, no threads!
+    default "none" if THREADS_NONE
 
 if ! LIBC_none
 
diff --git a/config/libc/eglibc.in b/config/libc/eglibc.in
index b677df0..e939d03 100644
--- a/config/libc/eglibc.in
+++ b/config/libc/eglibc.in
@@ -12,6 +12,9 @@
 ## help cross-compilation support.  EGLIBC also includes some embedded ports
 ## help (such as e500/spe) that are normally separate add-ons of GLIBC.
 
+config THREADS
+    default "nptl"
+
 choice
     bool
     prompt "eglibc version"
diff --git a/config/libc/glibc.in b/config/libc/glibc.in
index 5870995..2e34793 100644
--- a/config/libc/glibc.in
+++ b/config/libc/glibc.in
@@ -8,6 +8,9 @@
 ## help The de-facto standard for Linux distributions.
 ## help Feature-rich, but large...  Most usefull for desktop-like systems.
 
+config THREADS
+    default "nptl"
+
 choice
     bool
     prompt "glibc version"
diff --git a/config/libc/mingw.in b/config/libc/mingw.in
index 8c32b91..8b4d98a 100644
--- a/config/libc/mingw.in
+++ b/config/libc/mingw.in
@@ -7,6 +7,9 @@
 ##
 ## help The de-facto standard for Mingw distributions.
 
+config THREADS
+    default "win32"
+
 choice
     bool
     prompt "Windows API version"
diff --git a/config/libc/none.in b/config/libc/none.in
index 78a0612..d587faf 100644
--- a/config/libc/none.in
+++ b/config/libc/none.in
@@ -11,3 +11,9 @@
 ## help on the C library.
 ## help
 ## help If unsure: do *not* choose that, and use another option in the choice.
+
+# The no-threads is usually set in the main libc.in config file.
+# But since the "none" C library does not show the threads choice,
+# we have to define the no-threads value ourselves here:
+config THREADS
+    default "none"
diff --git a/config/libc/uClibc.in b/config/libc/uClibc.in
index f641a6f..1529642 100644
--- a/config/libc/uClibc.in
+++ b/config/libc/uClibc.in
@@ -11,6 +11,10 @@
 ## help Highly configurable, thus as feature-rich as you
 ## help need, without compromising for size.
 
+config THREADS
+    default "nptl"          if THREADS_NATIVE
+    default "linuxthreads"  if THREADS_LT
+
 if ARCH_FLOAT_SOFTFP
 comment "'softfp' ABI and uClibc is not entirely tested in crosstool-NG"
 comment "You may experience issues, although it should work just fine"
-- 
2.0.1


--
For unsubscribe information see http://sourceware.org/lists.html#faq



More information about the crossgcc mailing list