summaryrefslogtreecommitdiff
path: root/scripts/build/libc/uClibc.sh
diff options
context:
space:
mode:
Diffstat (limited to 'scripts/build/libc/uClibc.sh')
-rw-r--r--scripts/build/libc/uClibc.sh30
1 files changed, 30 insertions, 0 deletions
diff --git a/scripts/build/libc/uClibc.sh b/scripts/build/libc/uClibc.sh
index 03411a2..8d58524 100644
--- a/scripts/build/libc/uClibc.sh
+++ b/scripts/build/libc/uClibc.sh
@@ -327,6 +327,36 @@ mungeuClibcConfig() {
ENDSED
fi
+ # Push the threading model
+ # Note: we take into account all of the .28, .29, .30 and .31
+ # versions, here.
+ case "${CT_THREADS}:${CT_LIBC_UCLIBC_LNXTHRD}" in
+ none:*)
+ cat <<-ENDSED
+ s/^# HAS_NO_THREADS is not set/HAS_NO_THREADS=y/
+ s/^UCLIBC_HAS_THREADS=y/# UCLIBC_HAS_THREADS is not set/
+ s/^LINUXTHREADS_OLD=y/# LINUXTHREADS_OLD is not set/
+ s/^LINUXTHREADS_NEW=y/# LINUXTHREADS_NEW is not set/
+ ENDSED
+ ;;
+ *:old)
+ cat <<-ENDSED
+ s/^HAS_NO_THREADS=y/# HAS_NO_THREADS is not set/
+ s/^# UCLIBC_HAS_THREADS is not set/UCLIBC_HAS_THREADS=y/
+ s/^# LINUXTHREADS_OLD is not set/# LINUXTHREADS_OLD=y/
+ s/^LINUXTHREADS_NEW=y/# LINUXTHREADS_NEW is not set/
+ ENDSED
+ ;;
+ *:new)
+ cat <<-ENDSED
+ s/^# HAS_NO_THREADS is not set/HAS_NO_THREADS=y/
+ s/^# UCLIBC_HAS_THREADS is not set/UCLIBC_HAS_THREADS=y/
+ s/^LINUXTHREADS_OLD=y/# LINUXTHREADS_OLD is not set/
+ s/^# LINUXTHREADS_NEW is not set/# LINUXTHREADS_NEW=y/
+ ENDSED
+ ;;
+ esac
+
# Always build the libpthread_db
cat <<-ENDSED
s/^# PTHREADS_DEBUG_SUPPORT is not set.*/PTHREADS_DEBUG_SUPPORT=y/