[git commit master] getconf: print arbitrary GNU_LIBPTHREAD_VERSION string

Bernhard Reutner-Fischer rep.dot.nop at gmail.com
Tue Apr 6 15:17:30 UTC 2010


commit: http://git.uclibc.org/uClibc/commit/?id=384a55ef9f3387ed33eadab3eefe5057b4daeadb
branch: http://git.uclibc.org/uClibc/commit/?id=refs/heads/master

the NPTL should probably print the version-string of the glibc it's
compatible with and not the uClibc version (check what mysql expects).

Signed-off-by: Bernhard Reutner-Fischer <rep.dot.nop at gmail.com>
---
 libc/unistd/confstr.c |   18 ++++++++++++++++++
 1 files changed, 18 insertions(+), 0 deletions(-)

diff --git a/libc/unistd/confstr.c b/libc/unistd/confstr.c
index 16b57be..957ee4d 100644
--- a/libc/unistd/confstr.c
+++ b/libc/unistd/confstr.c
@@ -42,6 +42,24 @@ size_t confstr (int name, char *buf, size_t len)
 	string_len = sizeof (cs_path);
       }
       break;
+#ifdef __UCLIBC_HAS_THREADS__
+    case _CS_GNU_LIBPTHREAD_VERSION:
+# if defined __LINUXTHREADS_OLD__
+      string = "linuxthreads-0.01";
+      string_len = sizeof("linuxthreads-x.xx");
+# elif defined __LINUXTHREADS_NEW__
+      string = "linuxthreads-0.10";
+      string_len = sizeof("linuxthreads-x.xx");
+# elif defined __UCLIBC_HAS_THREADS_NATIVE__
+#  define __NPTL_VERSION ("NPTL " \
+		#__UCLIBC_MAJOR__ "." \
+		#__UCLIBC_MINOR__ "." \
+		#__UCLIBC_SUBLEVEL__)
+      string = __NPTL_VERSION;
+      string_len = sizeof(__NPTL_VERSION);
+# endif
+      break;
+#endif
     default:
       __set_errno (EINVAL);
       return 0;
-- 
1.6.3.3



More information about the uClibc-cvs mailing list