Author: sthibault Date: 2015-08-27 19:39:51 +0000 (Thu, 27 Aug 2015) New Revision: 6486
Added: glibc-package/branches/glibc-2.21/debian/patches/hurd-i386/cvs-libpthread_build.diff glibc-package/branches/glibc-2.21/debian/patches/hurd-i386/cvs-libpthread_clean2.diff Modified: glibc-package/branches/glibc-2.21/debian/changelog glibc-package/branches/glibc-2.21/debian/patches/series Log: backport r6485 from trunk * patches/hurd-i386/cvs-libpthread_clean2.diff: New patch to drop spurious code getting in the way for stage1. * patches/hurd-i386/cvs-libpthread_build.diff: New patch to fix build of generic libpthread code. Modified: glibc-package/branches/glibc-2.21/debian/changelog =================================================================== --- glibc-package/branches/glibc-2.21/debian/changelog 2015-08-27 19:39:11 UTC (rev 6485) +++ glibc-package/branches/glibc-2.21/debian/changelog 2015-08-27 19:39:51 UTC (rev 6486) @@ -231,6 +231,10 @@ * sysdeps/hurd-i386.mk: Fix stage1 about xen packages for hurd-i386 too. * patches/hurd-i386/tg-sysheaders.diff: New patch to fix stage1 finding hurd headers. + * patches/hurd-i386/cvs-libpthread_clean2.diff: New patch to drop spurious + code getting in the way for stage1. + * patches/hurd-i386/cvs-libpthread_build.diff: New patch to fix build of + generic libpthread code. -- Samuel Thibault <sthiba...@debian.org> Sun, 09 Aug 2015 20:00:16 +0000 Copied: glibc-package/branches/glibc-2.21/debian/patches/hurd-i386/cvs-libpthread_build.diff (from rev 6485, glibc-package/trunk/debian/patches/hurd-i386/cvs-libpthread_build.diff) =================================================================== --- glibc-package/branches/glibc-2.21/debian/patches/hurd-i386/cvs-libpthread_build.diff (rev 0) +++ glibc-package/branches/glibc-2.21/debian/patches/hurd-i386/cvs-libpthread_build.diff 2015-08-27 19:39:51 UTC (rev 6486) @@ -0,0 +1,54 @@ +commit 75b1f41bac0b70d9f87fbafde7cb94b9da3607c1 +Author: Samuel Thibault <samuel.thiba...@ens-lyon.org> +Date: Thu Aug 20 23:30:14 2015 +0200 + + Fix raise.c build + + * sysdeps/generic/raise.c: Include <pthread.h> instead of non-existing + "sig-internal.h" + +commit 42889b484ae0cae466a63e13e25a117094732e75 +Author: Samuel Thibault <samuel.thiba...@ens-lyon.org> +Date: Thu Aug 20 23:50:47 2015 +0200 + + Drop debugging statements + + * sysdeps/generic/raise.c (raise): Do not call debug. + +commit 8ffa76b6e9af0df8531278f15aa6301b1b5ba76f +Author: Samuel Thibault <samuel.thiba...@ens-lyon.org> +Date: Thu Aug 20 23:57:54 2015 +0200 + + Fix raise thread-aware implementation + + * sysdeps/generic/raise.c (pthread_kill): Make ref weak. + (raise): Only call pthread_kill when it is not NULL. Call kill otherwise. + +--- a/libpthread/sysdeps/generic/raise.c ++++ b/libpthread/sysdeps/generic/raise.c +@@ -18,8 +18,9 @@ + License along with this program. If not, see + <http://www.gnu.org/licenses/>. */ + +-#include "sig-internal.h" ++#include <pthread.h> + ++#pragma weak pthread_kill + int + raise (int signo) + { +@@ -27,9 +28,11 @@ raise (int signo) + "the effect of the raise() function shall be equivalent to + calling: pthread_kill(pthread_self(), sig);" */ + +-debug (0, ""); +- int err = pthread_kill (pthread_self (), signo); +-debug (0, ""); ++ int err; ++ if (pthread_kill) ++ err = pthread_kill (pthread_self (), signo); ++ else ++ err = __kill (__getpid (), signo); + if (err) + { + errno = err; Copied: glibc-package/branches/glibc-2.21/debian/patches/hurd-i386/cvs-libpthread_clean2.diff (from rev 6485, glibc-package/trunk/debian/patches/hurd-i386/cvs-libpthread_clean2.diff) =================================================================== --- glibc-package/branches/glibc-2.21/debian/patches/hurd-i386/cvs-libpthread_clean2.diff (rev 0) +++ glibc-package/branches/glibc-2.21/debian/patches/hurd-i386/cvs-libpthread_clean2.diff 2015-08-27 19:39:51 UTC (rev 6486) @@ -0,0 +1,375 @@ +commit 47916b2fb311a305ba31715c1e67462c7f2e1821 +Author: Samuel Thibault <samuel.thiba...@ens-lyon.org> +Date: Thu Aug 20 23:27:46 2015 +0200 + + Remove more unused signals implementation + + * sysdeps/generic/killpg.c: Remove file. + * sysdeps/generic/sigaddset.c: Likewise. + * sysdeps/generic/sigdelset.c: Likewise. + * sysdeps/generic/sigemptyset.c: Likewise. + * sysdeps/generic/sigfillset.c: Likewise. + * sysdeps/generic/siginterrupt.c: Likewise. + * sysdeps/generic/sigismember.c: Likewise. + * sysdeps/generic/signal.c: Likewise. + * sysdeps/generic/sigwait.c: Likewise. + +diff --git a/libpthread/sysdeps/generic/killpg.c b/libpthread/sysdeps/generic/killpg.c +deleted file mode 100644 +index 7f7ed87..0000000 +--- a/libpthread/sysdeps/generic/killpg.c ++++ /dev/null +@@ -1,27 +0,0 @@ +-/* killpg.c - Generic killpg implementation. +- Copyright (C) 2008 Free Software Foundation, Inc. +- Written by Neal H. Walfield <n...@gnu.org>. +- +- This file is part of the GNU Hurd. +- +- The GNU Hurd is free software; you can redistribute it and/or +- modify it under the terms of the GNU Lesser General Public License +- as published by the Free Software Foundation; either version 3 of +- the License, or (at your option) any later version. +- +- The GNU Hurd 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 +- Lesser General Public License for more details. +- +- You should have received a copy of the GNU Lesser General Public +- License along with this program. If not, see +- <http://www.gnu.org/licenses/>. */ +- +-#include "sig-internal.h" +- +-int +-killpg (pid_t pid, int sig) +-{ +- return kill (-pid, sig); +-} +diff --git a/libpthread/sysdeps/generic/sigaddset.c b/libpthread/sysdeps/generic/sigaddset.c +deleted file mode 100644 +index 14edb71..0000000 +--- a/libpthread/sysdeps/generic/sigaddset.c ++++ /dev/null +@@ -1,35 +0,0 @@ +-/* sigaddset.c - Generic sigaddset implementation. +- Copyright (C) 2008 Free Software Foundation, Inc. +- Written by Neal H. Walfield <n...@gnu.org>. +- +- This file is part of the GNU Hurd. +- +- The GNU Hurd is free software; you can redistribute it and/or +- modify it under the terms of the GNU Lesser General Public License +- as published by the Free Software Foundation; either version 3 of +- the License, or (at your option) any later version. +- +- The GNU Hurd 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 +- Lesser General Public License for more details. +- +- You should have received a copy of the GNU Lesser General Public +- License along with this program. If not, see +- <http://www.gnu.org/licenses/>. */ +- +-#include "sig-internal.h" +- +-int +-sigaddset (sigset_t *sigset, int signo) +-{ +- if (signo <= 0 || signo >= NSIG) +- { +- errno = EINVAL; +- return -1; +- } +- +- *sigset |= sigmask (signo); +- return 0; +-} +- +diff --git a/libpthread/sysdeps/generic/sigdelset.c b/libpthread/sysdeps/generic/sigdelset.c +deleted file mode 100644 +index 5456467..0000000 +--- a/libpthread/sysdeps/generic/sigdelset.c ++++ /dev/null +@@ -1,35 +0,0 @@ +-/* sigdelset.c - Generic sigdelset implementation. +- Copyright (C) 2008 Free Software Foundation, Inc. +- Written by Neal H. Walfield <n...@gnu.org>. +- +- This file is part of the GNU Hurd. +- +- The GNU Hurd is free software; you can redistribute it and/or +- modify it under the terms of the GNU Lesser General Public License +- as published by the Free Software Foundation; either version 3 of +- the License, or (at your option) any later version. +- +- The GNU Hurd 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 +- Lesser General Public License for more details. +- +- You should have received a copy of the GNU Lesser General Public +- License along with this program. If not, see +- <http://www.gnu.org/licenses/>. */ +- +-#include "sig-internal.h" +- +-int +-sigdelset (sigset_t *sigset, int signo) +-{ +- if (signo <= 0 || signo >= NSIG) +- { +- errno = EINVAL; +- return -1; +- } +- +- *sigset &= ~sigmask (signo); +- return 0; +-} +- +diff --git a/libpthread/sysdeps/generic/sigemptyset.c b/libpthread/sysdeps/generic/sigemptyset.c +deleted file mode 100644 +index 690c15b..0000000 +--- a/libpthread/sysdeps/generic/sigemptyset.c ++++ /dev/null +@@ -1,29 +0,0 @@ +-/* sigemptyset.c - Generic sigemptyset implementation. +- Copyright (C) 2008 Free Software Foundation, Inc. +- Written by Neal H. Walfield <n...@gnu.org>. +- +- This file is part of the GNU Hurd. +- +- The GNU Hurd is free software; you can redistribute it and/or +- modify it under the terms of the GNU Lesser General Public License +- as published by the Free Software Foundation; either version 3 of +- the License, or (at your option) any later version. +- +- The GNU Hurd 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 +- Lesser General Public License for more details. +- +- You should have received a copy of the GNU Lesser General Public +- License along with this program. If not, see +- <http://www.gnu.org/licenses/>. */ +- +-#include <signal.h> +- +-int +-sigemptyset (sigset_t *sigset) +-{ +- *sigset = 0; +- return 0; +-} +- +diff --git a/libpthread/sysdeps/generic/sigfillset.c b/libpthread/sysdeps/generic/sigfillset.c +deleted file mode 100644 +index f0ac078..0000000 +--- a/libpthread/sysdeps/generic/sigfillset.c ++++ /dev/null +@@ -1,29 +0,0 @@ +-/* sigfillset.c - Generic sigfillset implementation. +- Copyright (C) 2008 Free Software Foundation, Inc. +- Written by Neal H. Walfield <n...@gnu.org>. +- +- This file is part of the GNU Hurd. +- +- The GNU Hurd is free software; you can redistribute it and/or +- modify it under the terms of the GNU Lesser General Public License +- as published by the Free Software Foundation; either version 3 of +- the License, or (at your option) any later version. +- +- The GNU Hurd 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 +- Lesser General Public License for more details. +- +- You should have received a copy of the GNU Lesser General Public +- License along with this program. If not, see +- <http://www.gnu.org/licenses/>. */ +- +-#include <signal.h> +- +-int +-sigfillset (sigset_t *sigset) +-{ +- *sigset = (1ULL << (NSIG - 1)) - 1; +- return 0; +-} +- +diff --git a/libpthread/sysdeps/generic/siginterrupt.c b/libpthread/sysdeps/generic/siginterrupt.c +deleted file mode 100644 +index 0899efb..0000000 +--- a/libpthread/sysdeps/generic/siginterrupt.c ++++ /dev/null +@@ -1,36 +0,0 @@ +-/* siginterrupt.c - Generic siginterrupt implementation. +- Copyright (C) 2008 Free Software Foundation, Inc. +- Written by Neal H. Walfield <n...@gnu.org>. +- +- This file is part of the GNU Hurd. +- +- The GNU Hurd is free software; you can redistribute it and/or +- modify it under the terms of the GNU Lesser General Public License +- as published by the Free Software Foundation; either version 3 of +- the License, or (at your option) any later version. +- +- The GNU Hurd 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 +- Lesser General Public License for more details. +- +- You should have received a copy of the GNU Lesser General Public +- License along with this program. If not, see +- <http://www.gnu.org/licenses/>. */ +- +-#include "sig-internal.h" +- +-int +-siginterrupt (int sig, int flag) +-{ +- int ret; +- struct sigaction act; +- +- sigaction (sig, NULL, &act); +- if (flag) +- act.sa_flags &= ~SA_RESTART; +- else +- act.sa_flags |= SA_RESTART; +- ret = sigaction(sig, &act, NULL); +- return ret; +-} +diff --git a/libpthread/sysdeps/generic/sigismember.c b/libpthread/sysdeps/generic/sigismember.c +deleted file mode 100644 +index b3d65c9..0000000 +--- a/libpthread/sysdeps/generic/sigismember.c ++++ /dev/null +@@ -1,36 +0,0 @@ +-/* sigismember.c - Generic sigismember implementation. +- Copyright (C) 2008 Free Software Foundation, Inc. +- Written by Neal H. Walfield <n...@gnu.org>. +- +- This file is part of the GNU Hurd. +- +- The GNU Hurd is free software; you can redistribute it and/or +- modify it under the terms of the GNU Lesser General Public License +- as published by the Free Software Foundation; either version 3 of +- the License, or (at your option) any later version. +- +- The GNU Hurd 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 +- Lesser General Public License for more details. +- +- You should have received a copy of the GNU Lesser General Public +- License along with this program. If not, see +- <http://www.gnu.org/licenses/>. */ +- +-#include "sig-internal.h" +- +-int +-sigismember (const sigset_t *sigset, int signo) +-{ +- if (signo <= 0 || signo >= NSIG) +- { +- errno = EINVAL; +- return -1; +- } +- +- if (*sigset & sigmask (signo)) +- return 1; +- else +- return 0; +-} +diff --git a/libpthread/sysdeps/generic/signal.c b/libpthread/sysdeps/generic/signal.c +deleted file mode 100644 +index 7555d0a..0000000 +--- a/libpthread/sysdeps/generic/signal.c ++++ /dev/null +@@ -1,44 +0,0 @@ +-/* signal.c - Generic signal implementation. +- Copyright (C) 2008 Free Software Foundation, Inc. +- Written by Neal H. Walfield <n...@gnu.org>. +- +- This file is part of the GNU Hurd. +- +- The GNU Hurd is free software; you can redistribute it and/or +- modify it under the terms of the GNU Lesser General Public License +- as published by the Free Software Foundation; either version 3 of +- the License, or (at your option) any later version. +- +- The GNU Hurd 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 +- Lesser General Public License for more details. +- +- You should have received a copy of the GNU Lesser General Public +- License along with this program. If not, see +- <http://www.gnu.org/licenses/>. */ +- +-#include "sig-internal.h" +- +-void (*signal (int sig, void (*handler)(int)))(int) +-{ +- struct sigaction sa; +- +- sa.sa_handler = handler; +- sa.sa_flags = SA_RESTART; +- +- if (sigemptyset (&sa.sa_mask) < 0 +- || sigaddset (&sa.sa_mask, sig) < 0) +- return SIG_ERR; +- +- struct sigaction osa; +- if (sigaction (sig, &sa, &osa) < 0) +- return SIG_ERR; +- +- return osa.sa_handler; +-} +- +-void (*bsd_signal (int sig, void (*func)(int)))(int) +-{ +- return signal (sig, func); +-} +diff --git a/libpthread/sysdeps/generic/sigwait.c b/libpthread/sysdeps/generic/sigwait.c +deleted file mode 100644 +index 7d10bf8..0000000 +--- a/libpthread/sysdeps/generic/sigwait.c ++++ /dev/null +@@ -1,34 +0,0 @@ +-/* sigwait.c - Generic sigwait implementation. +- Copyright (C) 2008 Free Software Foundation, Inc. +- Written by Neal H. Walfield <n...@gnu.org>. +- +- This file is part of the GNU Hurd. +- +- The GNU Hurd is free software; you can redistribute it and/or +- modify it under the terms of the GNU Lesser General Public License +- as published by the Free Software Foundation; either version 3 of +- the License, or (at your option) any later version. +- +- The GNU Hurd 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 +- Lesser General Public License for more details. +- +- You should have received a copy of the GNU Lesser General Public +- License along with this program. If not, see +- <http://www.gnu.org/licenses/>. */ +- +-#include "sig-internal.h" +- +-int +-sigwait (const sigset_t *restrict set, int *restrict signo) +-{ +- siginfo_t info; +- +- if (sigwaitinfo (set, &info) < 0) +- return -1; +- +- *signo = info.si_signo; +- return 0; +-} +- Modified: glibc-package/branches/glibc-2.21/debian/patches/series =================================================================== --- glibc-package/branches/glibc-2.21/debian/patches/series 2015-08-27 19:39:11 UTC (rev 6485) +++ glibc-package/branches/glibc-2.21/debian/patches/series 2015-08-27 19:39:51 UTC (rev 6486) @@ -96,6 +96,8 @@ hurd-i386/libpthread_build.diff hurd-i386/libpthread_sigmask.diff hurd-i386/libpthread_clean.diff +hurd-i386/cvs-libpthread_clean2.diff +hurd-i386/cvs-libpthread_build.diff hurd-i386/tg-libpthread_depends.diff hurd-i386/libpthread_version.diff hurd-i386/tg-chflags.diff