Alexandre Julliard : loader: Try to detect glibc 2. 3 without NPTL or TLS and print a warning.

Alexandre Julliard julliard at wine.codeweavers.com
Wed Dec 20 12:24:42 CST 2006


Module: wine
Branch: master
Commit: 959113d27019c25c2cc30009dce52155907461b0
URL:    http://source.winehq.org/git/wine.git/?a=commit;h=959113d27019c25c2cc30009dce52155907461b0

Author: Alexandre Julliard <julliard at winehq.org>
Date:   Wed Dec 20 17:03:23 2006 +0100

loader: Try to detect glibc 2.3 without NPTL or TLS and print a warning.

---

 loader/kthread.c |    8 ++++++++
 1 files changed, 8 insertions(+), 0 deletions(-)

diff --git a/loader/kthread.c b/loader/kthread.c
index 91f00e4..1c43be5 100644
--- a/loader/kthread.c
+++ b/loader/kthread.c
@@ -903,6 +903,14 @@ void __pthread_initialize(void)
     if (!done)
     {
         done = 1;
+        /* check for exported epoll_create to detect glibc versions that we cannot support */
+        if (wine_dlsym( RTLD_DEFAULT, "epoll_create", NULL, 0 ))
+        {
+            static const char warning[] =
+                "wine: glibc >= 2.3 without NPTL or TLS is not a supported combination.\n"
+                "      It will most likely crash. Please upgrade to a glibc with NPTL support.\n";
+            write( 2, warning, sizeof(warning)-1 );
+        }
         libc_fork = wine_dlsym( RTLD_NEXT, "fork", NULL, 0 );
         libc_sigaction = wine_dlsym( RTLD_NEXT, "sigaction", NULL, 0 );
         libc_uselocale = wine_dlsym( RTLD_DEFAULT, "uselocale", NULL, 0 );




More information about the wine-cvs mailing list