Author: sthibault
Date: 2014-08-20 20:57:24 +0000 (Wed, 20 Aug 2014)
New Revision: 6243

Added:
   glibc-package/trunk/debian/patches/hurd-i386/cvs-libpthread_std_thread.diff
Modified:
   glibc-package/trunk/debian/changelog
   glibc-package/trunk/debian/patches/series
Log:
patches/hurd-i386/cvs-libpthread_std_thread.diff: New patch to deal with
std::thread using __pthread_key_create to detect presence of libpthread.
Fixes build of webkitgtk and most probably other libstdc++-related
failures.


Modified: glibc-package/trunk/debian/changelog
===================================================================
--- glibc-package/trunk/debian/changelog        2014-08-19 21:27:29 UTC (rev 
6242)
+++ glibc-package/trunk/debian/changelog        2014-08-20 20:57:24 UTC (rev 
6243)
@@ -10,6 +10,10 @@
   * patches/hurd-i386/cvs-libpthread_guardsize.diff: Fix guard size 
computation.
     Fixes the creation of thousands of threads, and thus pulseaudio testsuite.
     Closes: #758671.
+  * patches/hurd-i386/cvs-libpthread_std_thread.diff: New patch to deal with
+    std::thread using __pthread_key_create to detect presence of libpthread.
+    Fixes build of webkitgtk and most probably other libstdc++-related
+    failures.
 
  -- Aurelien Jarno <aure...@debian.org>  Thu, 14 Aug 2014 18:26:45 +0200
 

Added: 
glibc-package/trunk/debian/patches/hurd-i386/cvs-libpthread_std_thread.diff
===================================================================
--- glibc-package/trunk/debian/patches/hurd-i386/cvs-libpthread_std_thread.diff 
                        (rev 0)
+++ glibc-package/trunk/debian/patches/hurd-i386/cvs-libpthread_std_thread.diff 
2014-08-20 20:57:24 UTC (rev 6243)
@@ -0,0 +1,45 @@
+commit bd3ccc49712dc44911bf0913ca49815f59747d6f
+Author: Samuel Thibault <samuel.thiba...@ens-lyon.org>
+Date:   Wed Aug 20 21:09:10 2014 +0200
+
+    Add __pthread_key_create alias
+    
+    Some versions of std::thread use it to detect the presence of libpthread 
(don't
+    ask why)
+    
+    * sysdeps/hurd/pt-key-create.c (pthread_key_create): Rename to
+    __pthread_key_create.
+    (pthread_key_create): Define as strong alias of __pthread_key_create.
+    * Versions (libpthread): Add __pthread_key_create.
+
+diff --git a/libpthread/Versions b/libpthread/Versions
+index 41bff96..19ff26c 100644
+--- a/libpthread/Versions
++++ b/libpthread/Versions
+@@ -88,6 +88,7 @@ libpthread {
+     pthread_join;
+ 
+     pthread_key_create; pthread_key_delete;
++    __pthread_key_create;
+ 
+     pthread_kill;
+ 
+diff --git a/libpthread/sysdeps/hurd/pt-key-create.c 
b/libpthread/sysdeps/hurd/pt-key-create.c
+index b3e0141..42c7c85 100644
+--- a/libpthread/sysdeps/hurd/pt-key-create.c
++++ b/libpthread/sysdeps/hurd/pt-key-create.c
+@@ -31,7 +31,7 @@ int __pthread_key_count;
+ int __pthread_key_invalid_count;
+ 
+ int
+-pthread_key_create (pthread_key_t *key, void (*destructor) (void *))
++__pthread_key_create (pthread_key_t *key, void (*destructor) (void *))
+ {
+   /* Where to look for the next key slot.  */
+   static int index;
+@@ -107,3 +107,5 @@ pthread_key_create (pthread_key_t *key, void (*destructor) 
(void *))
+   __pthread_mutex_unlock (&__pthread_key_lock);
+   return 0;
+ }
++strong_alias (__pthread_key_create, pthread_key_create)
++hidden_def (__pthread_key_create)

Modified: glibc-package/trunk/debian/patches/series
===================================================================
--- glibc-package/trunk/debian/patches/series   2014-08-19 21:27:29 UTC (rev 
6242)
+++ glibc-package/trunk/debian/patches/series   2014-08-20 20:57:24 UTC (rev 
6243)
@@ -145,6 +145,7 @@
 hurd-i386/tg-mmap_file_prot_none_fix.diff
 hurd-i386/cvs-munmap-0.diff
 hurd-i386/cvs-libpthread_guardsize.diff
+hurd-i386/cvs-libpthread_std_thread.diff
 
 i386/local-biarch.diff
 i386/local-cmov.diff


-- 
To UNSUBSCRIBE, email to debian-glibc-requ...@lists.debian.org
with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org
Archive: https://lists.debian.org/e1xkcwe-0003jx...@moszumanska.debian.org

Reply via email to