This is an automated email from the git hooks/post-receive script. sthibault pushed a commit to branch sid in repository glibc.
commit 0a4ca2751c98639073ae88e2fbe8476fbc450980 Author: Samuel Thibault <[email protected]> Date: Mon Oct 24 06:23:56 2016 +0000 hurd-i386/cvs-libpthread.diff: Update to latest upstream version. - hurd-i386/cvs-libpthread-static-weak.diff: Drop, merged upstream. - hurd-i386/cvs-pthread-atfork.diff: Drop, merged upstream. - hurd-i386/cvs-setcancelstate.diff: Drop, merged upstream. --- debian/changelog | 4 + .../hurd-i386/cvs-libpthread-static-weak.diff | 22 ---- debian/patches/hurd-i386/cvs-libpthread.diff | 114 ++++++++++++++---- debian/patches/hurd-i386/cvs-pthread-atfork.diff | 133 --------------------- debian/patches/hurd-i386/cvs-setcancelstate.diff | 24 ---- debian/patches/series | 3 - 6 files changed, 97 insertions(+), 203 deletions(-) diff --git a/debian/changelog b/debian/changelog index 2df4aaa..6f40928 100644 --- a/debian/changelog +++ b/debian/changelog @@ -2,6 +2,10 @@ glibc (2.24-6) UNRELEASED; urgency=medium [ Samuel Thibault ] * libc0.3.symbols.hurd-i386: Drop removed RPCs. + * hurd-i386/cvs-libpthread.diff: Update to latest upstream version. + - hurd-i386/cvs-libpthread-static-weak.diff: Drop, merged upstream. + - hurd-i386/cvs-pthread-atfork.diff: Drop, merged upstream. + - hurd-i386/cvs-setcancelstate.diff: Drop, merged upstream. -- Aurelien Jarno <[email protected]> Tue, 18 Oct 2016 23:17:42 +0200 diff --git a/debian/patches/hurd-i386/cvs-libpthread-static-weak.diff b/debian/patches/hurd-i386/cvs-libpthread-static-weak.diff deleted file mode 100644 index dbd52e7..0000000 --- a/debian/patches/hurd-i386/cvs-libpthread-static-weak.diff +++ /dev/null @@ -1,22 +0,0 @@ -commit 2ca42af6c07afed6a5e94e8e3c889c728869fd2f -Author: Samuel Thibault <[email protected]> -Date: Mon Oct 17 02:30:14 2016 +0200 - - Fix too weak references when linking libpthread statically - - * sysdeps/pthread/libc-lockP.h [IS_IN (libpthread)]: Do not make __pthread - symbols weak. - -diff --git a/libpthread/sysdeps/pthread/libc-lockP.h b/libpthread/sysdeps/pthread/libc-lockP.h -index 2631e0c..c04881d 100644 ---- a/libpthread/sysdeps/pthread/libc-lockP.h -+++ b/libpthread/sysdeps/pthread/libc-lockP.h -@@ -106,7 +106,7 @@ extern int __pthread_atfork (void (*__prepare) (void), - - /* Make the pthread functions weak so that we can elide them from - single-threaded processes. */ --#ifndef __NO_WEAK_PTHREAD_ALIASES -+#if !defined(__NO_WEAK_PTHREAD_ALIASES) && !IS_IN (libpthread) - # ifdef weak_extern - weak_extern (__pthread_mutex_init) - weak_extern (__pthread_mutex_destroy) diff --git a/debian/patches/hurd-i386/cvs-libpthread.diff b/debian/patches/hurd-i386/cvs-libpthread.diff index b335553..022df25 100644 --- a/debian/patches/hurd-i386/cvs-libpthread.diff +++ b/debian/patches/hurd-i386/cvs-libpthread.diff @@ -1,11 +1,11 @@ -git diff empty --patch-with-stat --src-prefix=glibc/libpthread/ --dst-prefix=glibc/libpthread/ 9705f94a6126281c2a909d8bf3c23fad818183fc +git diff empty --patch-with-stat --src-prefix=glibc/libpthread/ --dst-prefix=glibc/libpthread/ 05babf965ec39be7e1c8a7306ec1c60b1e614654 from git.savannah.gnu.org:/srv/git/hurd/libpthread.git/ thus by construction only libpthread/ files, thus hurd-only -Date: Sun Oct 9 13:25:00 2016 +0200 +Date: Tue Oct 18 02:10:41 2016 +0200 ChangeLog | 6 + - Makeconfig | 12 + - Makefile | 335 +++++++++++ + Makeconfig | 13 + + Makefile | 371 ++++++++++++ TODO | 131 ++++ Versions | 146 +++++ configure | 2 + @@ -43,7 +43,8 @@ Date: Sun Oct 9 13:25:00 2016 +0200 pthreadP.h | 26 + shlib-versions | 1 + sysdeps/generic/fork.h | 29 + - sysdeps/generic/pt-atfork.c | 33 + + sysdeps/generic/old_pt-atfork.c | 27 + + sysdeps/generic/pt-atfork.c | 34 ++ sysdeps/generic/pt-attr-destroy.c | 28 + sysdeps/generic/pt-attr-getdetachstate.c | 31 + sysdeps/generic/pt-attr-getguardsize.c | 29 + @@ -232,7 +233,7 @@ Date: Sun Oct 9 13:25:00 2016 +0200 tests/test-8.c | 60 ++ tests/test-9.c | 88 +++ tests/test-__pthread_destroy_specific-skip.c | 83 +++ - 229 files changed, 13084 insertions(+) + 230 files changed, 13149 insertions(+) diff --git glibc/libpthread/ChangeLog glibc/libpthread/ChangeLog new file mode 100644 @@ -248,16 +249,17 @@ index 0000000..e991eac + $ git show 51839d398b0f9885a17ab5c0768b8dec4dd9eb79:ChangeLog diff --git glibc/libpthread/Makeconfig glibc/libpthread/Makeconfig new file mode 100644 -index 0000000..9ce18d3 +index 0000000..e90f5f7 --- /dev/null +++ glibc/libpthread/Makeconfig -@@ -0,0 +1,12 @@ +@@ -0,0 +1,13 @@ +# Makeconfig fragment for Hurd libpthread add-on. +# This gets included at the end of the main glibc Makeconfig. + +have-thread-library = yes + -+shared-thread-library = $(common-objpfx)libpthread/libpthread.so ++shared-thread-library = $(common-objpfx)libpthread/libpthread_nonshared.a \ ++ $(common-objpfx)libpthread/libpthread.so +static-thread-library = $(common-objpfx)libpthread/libpthread.a +bounded-thread-library = $(static-thread-library) + @@ -266,10 +268,10 @@ index 0000000..9ce18d3 ++includes += -I$(..)libpthread/include diff --git glibc/libpthread/Makefile glibc/libpthread/Makefile new file mode 100644 -index 0000000..21c9b94 +index 0000000..9707f57 --- /dev/null +++ glibc/libpthread/Makefile -@@ -0,0 +1,335 @@ +@@ -0,0 +1,371 @@ +# +# Copyright (C) 1994, 1995, 1996, 1997, 2000, 2002, 2004, 2005, 2006, 2007, +# 2008, 2011 Free Software Foundation, Inc. @@ -411,6 +413,7 @@ index 0000000..21c9b94 + pt-sigstate \ + \ + pt-atfork \ ++ old_pt-atfork \ + pt-kill \ + pt-getcpuclockid \ + \ @@ -426,6 +429,8 @@ index 0000000..21c9b94 + cthreads-compat \ + $(SYSDEPS) + ++libpthread-static-only-routines = pt-atfork ++ +ifeq ($(IN_GLIBC),no) +SRCS := $(addsuffix .c,$(libpthread-routines)) +OBJS = $(addsuffix .o,$(basename $(notdir $(SRCS)))) @@ -553,6 +558,39 @@ index 0000000..21c9b94 + +include ../Rules + ++ifeq (yes,$(build-shared)) ++# What we install as libpthread.so for programs to link against is in fact a ++# link script. It contains references for the various libraries we need. ++# The libpthread.so object is not complete since some functions are only ++# defined in libpthread_nonshared.a. ++# We need to use absolute paths since otherwise local copies (if they exist) ++# of the files are taken by the linker. ++install: $(inst_libdir)/libpthread.so ++ ++$(inst_libdir)/libpthread.so: $(common-objpfx)format.lds \ ++ $(objpfx)libpthread.so$(libpthread.so-version) \ ++ $(inst_libdir)/$(patsubst %,$(libtype.oS),\ ++ $(libprefix)pthread) \ ++ $(+force) ++ (echo '/* GNU ld script';\ ++ echo ' Use the shared library, but some functions are only in';\ ++ echo ' the static library, so try that secondarily. */';\ ++ cat $<; \ ++ echo 'GROUP ( $(slibdir)/libpthread.so$(libpthread.so-version)' \ ++ '$(libdir)/$(patsubst %,$(libtype.oS),$(libprefix)pthread)'\ ++ ')' \ ++ ) > [email protected] ++ mv -f [email protected] $@ ++ ++$(addprefix $(objpfx), \ ++ $(filter-out $(tests-static) $(xtests-static) $(tests-reverse) \ ++ $(tests-nolibpthread), \ ++ $(tests) $(xtests) $(test-srcs))): $(objpfx)libpthread.so \ ++ $(objpfx)libpthread_nonshared.a ++endif ++ ++generated += libpthread_nonshared.a ++ +# Depend on libc.so so a DT_NEEDED is generated in the shared objects. +# This ensures they will load libc.so for needed symbols if loaded by +# a statically-linked program that hasn't already loaded it. @@ -3281,7 +3319,7 @@ index 0000000..3431f1b +} diff --git glibc/libpthread/pthread/pt-exit.c glibc/libpthread/pthread/pt-exit.c new file mode 100644 -index 0000000..b078db2 +index 0000000..af75937 --- /dev/null +++ glibc/libpthread/pthread/pt-exit.c @@ -0,0 +1,112 @@ @@ -3326,14 +3364,14 @@ index 0000000..b078db2 + /* Run any cancelation handlers. According to POSIX, the + cancellation cleanup handlers should be called with cancellation + disabled. */ -+ __pthread_setcancelstate (PTHREAD_CANCEL_DISABLE, &oldstate); ++ pthread_setcancelstate (PTHREAD_CANCEL_DISABLE, &oldstate); + + for (handlers = __pthread_get_cleanup_stack (); + *handlers; + *handlers = (*handlers)->__next) + (*handlers)->__handler ((*handlers)->__arg); + -+ __pthread_setcancelstate (oldstate, &oldstate); ++ pthread_setcancelstate (oldstate, &oldstate); + + /* Decrease the number of threads. We use an atomic operation to + make sure that only the last thread calls `exit'. */ @@ -3550,7 +3588,7 @@ index 0000000..4435a36 +} diff --git glibc/libpthread/pthread/pt-internal.h glibc/libpthread/pthread/pt-internal.h new file mode 100644 -index 0000000..c1b6c59 +index 0000000..0793046 --- /dev/null +++ glibc/libpthread/pthread/pt-internal.h @@ -0,0 +1,330 @@ @@ -3878,10 +3916,10 @@ index 0000000..c1b6c59 +extern const struct __pthread_mutexattr __pthread_default_mutexattr; + +/* Default rdlock attributes. */ -+const struct __pthread_rwlockattr __pthread_default_rwlockattr; ++extern const struct __pthread_rwlockattr __pthread_default_rwlockattr; + +/* Default condition attributes. */ -+const struct __pthread_condattr __pthread_default_condattr; ++extern const struct __pthread_condattr __pthread_default_condattr; + +#endif /* pt-internal.h */ diff --git glibc/libpthread/pthread/pt-join.c glibc/libpthread/pthread/pt-join.c @@ -4339,12 +4377,45 @@ index 0000000..c6ac15e + void (*__child) (void), + void *dso_handle); +libc_hidden_proto (__register_atfork) +diff --git glibc/libpthread/sysdeps/generic/old_pt-atfork.c glibc/libpthread/sysdeps/generic/old_pt-atfork.c +new file mode 100644 +index 0000000..5366eaa +--- /dev/null ++++ glibc/libpthread/sysdeps/generic/old_pt-atfork.c +@@ -0,0 +1,27 @@ ++/* Register fork handlers. Generic version. ++ Copyright (C) 2002 Free Software Foundation, Inc. ++ This file is part of the GNU C Library. ++ ++ The GNU C Library is free software; you can redistribute it and/or ++ modify it under the terms of the GNU Library General Public License as ++ published by the Free Software Foundation; either version 2 of the ++ License, or (at your option) any later version. ++ ++ The GNU C Library is distributed in the hope that it will be useful, ++ but WITHOUT ANY WARRANTY; without even the implied warranty of ++ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU ++ Library General Public License for more details. ++ ++ You should have received a copy of the GNU Library General Public ++ License along with the GNU C Library; see the file COPYING.LIB. If not, ++ write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, ++ Boston, MA 02111-1307, USA. */ ++ ++#include <shlib-compat.h> ++ ++#if SHLIB_COMPAT(libpthread, GLIBC_2_12, GLIBC_2_23) ++# define pthread_atfork __dyn_pthread_atfork ++# include "pt-atfork.c" ++# undef pthread_atfork ++compat_symbol (libpthread, __dyn_pthread_atfork, pthread_atfork, GLIBC_2_12); ++#endif diff --git glibc/libpthread/sysdeps/generic/pt-atfork.c glibc/libpthread/sysdeps/generic/pt-atfork.c new file mode 100644 -index 0000000..304d7ef +index 0000000..df12fc8 --- /dev/null +++ glibc/libpthread/sysdeps/generic/pt-atfork.c -@@ -0,0 +1,33 @@ +@@ -0,0 +1,34 @@ +/* Register fork handlers. Generic version. + Copyright (C) 2002 Free Software Foundation, Inc. + This file is part of the GNU C Library. @@ -4366,6 +4437,7 @@ index 0000000..304d7ef + +#include <pthread.h> +#include <pt-internal.h> ++#include <fork.h> + +/* This is defined by newer gcc version unique for each module. */ +extern void *__dso_handle __attribute__ ((__weak__, @@ -12878,7 +12950,7 @@ index 0000000..78fd211 +weak_alias (__funlockfile, funlockfile) diff --git glibc/libpthread/sysdeps/pthread/libc-lockP.h glibc/libpthread/sysdeps/pthread/libc-lockP.h new file mode 100644 -index 0000000..2631e0c +index 0000000..c04881d --- /dev/null +++ glibc/libpthread/sysdeps/pthread/libc-lockP.h @@ -0,0 +1,158 @@ @@ -12990,7 +13062,7 @@ index 0000000..2631e0c + +/* Make the pthread functions weak so that we can elide them from + single-threaded processes. */ -+#ifndef __NO_WEAK_PTHREAD_ALIASES ++#if !defined(__NO_WEAK_PTHREAD_ALIASES) && !IS_IN (libpthread) +# ifdef weak_extern +weak_extern (__pthread_mutex_init) +weak_extern (__pthread_mutex_destroy) diff --git a/debian/patches/hurd-i386/cvs-pthread-atfork.diff b/debian/patches/hurd-i386/cvs-pthread-atfork.diff deleted file mode 100644 index 57887e1..0000000 --- a/debian/patches/hurd-i386/cvs-pthread-atfork.diff +++ /dev/null @@ -1,133 +0,0 @@ -commit 05babf965ec39be7e1c8a7306ec1c60b1e614654 -Author: Samuel Thibault <[email protected]> -Date: Tue Oct 18 02:10:41 2016 +0200 - - Fix unregistering atfork handlers on library unload - - * sysdeps/generic/old_pt-atfork.c: New file. - * Makefile (libpthread-routines): Add old_pt-atfork. - (libpthread-static-only-routines): Add pt-atfork. - [build-shared=yes] (install): Explicit $(inst_libdir)/libpthread.so - [build-shared=yes] $(inst_libdir)/libpthread.so: Replace with script to - link libpthread_nonshared.a in. - [build-shared=yes] (tests): Link libpthread_nonshared.a in addition to - libpthread.so. - (generated): Add libpthread_nonshared.a. - -Index: glibc-2.24/libpthread/Makefile -=================================================================== ---- glibc-2.24.orig/libpthread/Makefile -+++ glibc-2.24/libpthread/Makefile -@@ -139,6 +139,7 @@ libpthread-routines := pt-attr pt-attr-d - pt-sigstate \ - \ - pt-atfork \ -+ old_pt-atfork \ - pt-kill \ - pt-getcpuclockid \ - \ -@@ -154,6 +155,8 @@ libpthread-routines := pt-attr pt-attr-d - cthreads-compat \ - $(SYSDEPS) - -+libpthread-static-only-routines = pt-atfork -+ - ifeq ($(IN_GLIBC),no) - SRCS := $(addsuffix .c,$(libpthread-routines)) - OBJS = $(addsuffix .o,$(basename $(notdir $(SRCS)))) -@@ -281,6 +284,39 @@ extra-B-pthread.so = -B$(common-objpfx)l - - include ../Rules - -+ifeq (yes,$(build-shared)) -+# What we install as libpthread.so for programs to link against is in fact a -+# link script. It contains references for the various libraries we need. -+# The libpthread.so object is not complete since some functions are only -+# defined in libpthread_nonshared.a. -+# We need to use absolute paths since otherwise local copies (if they exist) -+# of the files are taken by the linker. -+install: $(inst_libdir)/libpthread.so -+ -+$(inst_libdir)/libpthread.so: $(common-objpfx)format.lds \ -+ $(objpfx)libpthread.so$(libpthread.so-version) \ -+ $(inst_libdir)/$(patsubst %,$(libtype.oS),\ -+ $(libprefix)pthread) \ -+ $(+force) -+ (echo '/* GNU ld script';\ -+ echo ' Use the shared library, but some functions are only in';\ -+ echo ' the static library, so try that secondarily. */';\ -+ cat $<; \ -+ echo 'GROUP ( $(slibdir)/libpthread.so$(libpthread.so-version)' \ -+ '$(libdir)/$(patsubst %,$(libtype.oS),$(libprefix)pthread)'\ -+ ')' \ -+ ) > [email protected] -+ mv -f [email protected] $@ -+ -+$(addprefix $(objpfx), \ -+ $(filter-out $(tests-static) $(xtests-static) $(tests-reverse) \ -+ $(tests-nolibpthread), \ -+ $(tests) $(xtests) $(test-srcs))): $(objpfx)libpthread.so \ -+ $(objpfx)libpthread_nonshared.a -+endif -+ -+generated += libpthread_nonshared.a -+ - # Depend on libc.so so a DT_NEEDED is generated in the shared objects. - # This ensures they will load libc.so for needed symbols if loaded by - # a statically-linked program that hasn't already loaded it. -Index: glibc-2.24/libpthread/sysdeps/generic/old_pt-atfork.c -=================================================================== ---- /dev/null -+++ glibc-2.24/libpthread/sysdeps/generic/old_pt-atfork.c -@@ -0,0 +1,27 @@ -+/* Register fork handlers. Generic version. -+ Copyright (C) 2002 Free Software Foundation, Inc. -+ This file is part of the GNU C Library. -+ -+ The GNU C Library is free software; you can redistribute it and/or -+ modify it under the terms of the GNU Library General Public License as -+ published by the Free Software Foundation; either version 2 of the -+ License, or (at your option) any later version. -+ -+ The GNU C Library is distributed in the hope that it will be useful, -+ but WITHOUT ANY WARRANTY; without even the implied warranty of -+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+ Library General Public License for more details. -+ -+ You should have received a copy of the GNU Library General Public -+ License along with the GNU C Library; see the file COPYING.LIB. If not, -+ write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, -+ Boston, MA 02111-1307, USA. */ -+ -+#include <shlib-compat.h> -+ -+#if SHLIB_COMPAT(libpthread, GLIBC_2_12, GLIBC_2_23) -+# define pthread_atfork __dyn_pthread_atfork -+# include "pt-atfork.c" -+# undef pthread_atfork -+compat_symbol (libpthread, __dyn_pthread_atfork, pthread_atfork, GLIBC_2_12); -+#endif -Index: glibc-2.24/libpthread/sysdeps/generic/pt-atfork.c -=================================================================== ---- glibc-2.24.orig/libpthread/sysdeps/generic/pt-atfork.c -+++ glibc-2.24/libpthread/sysdeps/generic/pt-atfork.c -@@ -19,6 +19,7 @@ - - #include <pthread.h> - #include <pt-internal.h> -+#include <fork.h> - - /* This is defined by newer gcc version unique for each module. */ - extern void *__dso_handle __attribute__ ((__weak__, ---- glibc-2.24.orig/libpthread/Makeconfig.original 2016-10-17 21:53:34.000000000 +0000 -+++ glibc-2.24/libpthread/Makeconfig 2016-10-17 21:54:00.000000000 +0000 -@@ -3,7 +3,8 @@ - - have-thread-library = yes - --shared-thread-library = $(common-objpfx)libpthread/libpthread.so -+shared-thread-library = $(common-objpfx)libpthread/libpthread_nonshared.a \ -+ $(common-objpfx)libpthread/libpthread.so - static-thread-library = $(common-objpfx)libpthread/libpthread.a - bounded-thread-library = $(static-thread-library) - diff --git a/debian/patches/hurd-i386/cvs-setcancelstate.diff b/debian/patches/hurd-i386/cvs-setcancelstate.diff deleted file mode 100644 index e8d7465..0000000 --- a/debian/patches/hurd-i386/cvs-setcancelstate.diff +++ /dev/null @@ -1,24 +0,0 @@ -For some yet unknown reason, fixes exec crash at boot due to ext2fs.static -including this. - -Index: glibc-2.24/libpthread/pthread/pt-exit.c -=================================================================== ---- glibc-2.24.orig/libpthread/pthread/pt-exit.c -+++ glibc-2.24/libpthread/pthread/pt-exit.c -@@ -39,14 +39,14 @@ __pthread_exit (void *status) - /* Run any cancelation handlers. According to POSIX, the - cancellation cleanup handlers should be called with cancellation - disabled. */ -- __pthread_setcancelstate (PTHREAD_CANCEL_DISABLE, &oldstate); -+ pthread_setcancelstate (PTHREAD_CANCEL_DISABLE, &oldstate); - - for (handlers = __pthread_get_cleanup_stack (); - *handlers; - *handlers = (*handlers)->__next) - (*handlers)->__handler ((*handlers)->__arg); - -- __pthread_setcancelstate (oldstate, &oldstate); -+ pthread_setcancelstate (oldstate, &oldstate); - - /* Decrease the number of threads. We use an atomic operation to - make sure that only the last thread calls `exit'. */ diff --git a/debian/patches/series b/debian/patches/series index ba5be6b..0892eaf 100644 --- a/debian/patches/series +++ b/debian/patches/series @@ -132,9 +132,6 @@ hurd-i386/tg-gsync-libc.diff hurd-i386/cvs-adjtime-NULL.diff hurd-i386/tg-pthread_deps.diff hurd-i386/cvs-mallocfork.diff -hurd-i386/cvs-setcancelstate.diff -hurd-i386/cvs-libpthread-static-weak.diff -hurd-i386/cvs-pthread-atfork.diff i386/local-biarch.diff i386/local-cmov.diff -- Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/pkg-glibc/glibc.git

