summaryrefslogtreecommitdiff
path: root/sys-libs/glibc/files
diff options
context:
space:
mode:
authorV3n3RiX <venerix@koprulu.sector>2023-05-15 23:17:59 +0100
committerV3n3RiX <venerix@koprulu.sector>2023-05-15 23:17:59 +0100
commit0ac9b6e3d5a2939310e8ec443f2b326610ab9a9f (patch)
treeec05a8259b848ef3d83ddee78040aabbe15f6719 /sys-libs/glibc/files
parentbf434c621ee151cff3a6444443a818244e334029 (diff)
let's make redcore even more compatible with gentoo
Diffstat (limited to 'sys-libs/glibc/files')
-rw-r--r--sys-libs/glibc/files/2.19/glibc-2.19-gcc-10.patch15
-rw-r--r--sys-libs/glibc/files/2.19/glibc-2.19-ia64-gcc-4.8-reloc-hack.patch32
-rw-r--r--sys-libs/glibc/files/2.19/glibc-2.19-kernel-2.6.16-compat.patch85
-rw-r--r--sys-libs/glibc/files/2.19/glibc-2.19-kernel-2.6.16-hide-pipe2.patch16
-rw-r--r--sys-libs/glibc/files/2.25/glibc-2.25-gentoo-chk_fail.c303
-rw-r--r--sys-libs/glibc/files/2.34/glibc-2.34-hppa-asm-getcontext-fixes.patch214
-rw-r--r--sys-libs/glibc/files/2.35/glibc-2.35-make-4.4-MAKEFLAGS.patch102
-rw-r--r--sys-libs/glibc/files/host.conf-123
-rw-r--r--sys-libs/glibc/files/nscd-185
-rw-r--r--sys-libs/glibc/files/nscd.service15
-rw-r--r--sys-libs/glibc/files/nscd.tmpfilesd4
11 files changed, 0 insertions, 894 deletions
diff --git a/sys-libs/glibc/files/2.19/glibc-2.19-gcc-10.patch b/sys-libs/glibc/files/2.19/glibc-2.19-gcc-10.patch
deleted file mode 100644
index 45e8ab80..00000000
--- a/sys-libs/glibc/files/2.19/glibc-2.19-gcc-10.patch
+++ /dev/null
@@ -1,15 +0,0 @@
-Identify gcc-10+ as a good compiler.
-
-Index: work/glibc-2.19/configure
-===================================================================
---- glibc-2.19/configure
-+++ glibc-2.19/configure
-@@ -4710,7 +4710,7 @@ $as_echo_n "checking version of $CC... "
- ac_prog_version=`$CC -v 2>&1 | sed -n 's/^.*version \([egcygnustpi-]*[0-9.]*\).*$/\1/p'`
- case $ac_prog_version in
- '') ac_prog_version="v. ?.??, bad"; ac_verc_fail=yes;;
-- 4.[4-9].* | 4.[1-9][0-9].* | [5-9].* )
-+ 4.[4-9].* | 4.[1-9][0-9].* | [5-9].* | [1-9][0-9].* )
- ac_prog_version="$ac_prog_version, ok"; ac_verc_fail=no;;
- *) ac_prog_version="$ac_prog_version, bad"; ac_verc_fail=yes;;
-
diff --git a/sys-libs/glibc/files/2.19/glibc-2.19-ia64-gcc-4.8-reloc-hack.patch b/sys-libs/glibc/files/2.19/glibc-2.19-ia64-gcc-4.8-reloc-hack.patch
deleted file mode 100644
index 72a616a0..00000000
--- a/sys-libs/glibc/files/2.19/glibc-2.19-ia64-gcc-4.8-reloc-hack.patch
+++ /dev/null
@@ -1,32 +0,0 @@
-https://bugs.gentoo.org/503838
-http://gcc.gnu.org/PR60465
-https://sourceware.org/ml/libc-alpha/2015-12/msg00556.html
-https://trofi.github.io/posts/189-glibc-on-ia64-or-how-relocations-bootstrap.html
-
-newer versions of gcc generate relocations in the elf_get_dynamic_info func
-which glibc relies on to populate some info structs. those structs are then
-used by ldso to process relocations in itself. glibc requires that there are
-no relocations until that point (*after* elf_get_dynamic_info), so we end up
-crashing during elf_get_dynamic_info because the relocation has not yet been
-processed.
-
-this hack shuffles the code in a way that tricks gcc into not generating the
-relocation. we need to figure out something better for upstream.
-
---- a/elf/get-dynamic-info.h
-+++ b/elf/get-dynamic-info.h
-@@ -66,8 +66,12 @@ elf_get_dynamic_info (struct link_map *l, ElfW(Dyn) *temp)
- info[DT_VALTAGIDX (dyn->d_tag) + DT_NUM + DT_THISPROCNUM
- + DT_VERSIONTAGNUM + DT_EXTRANUM] = dyn;
- else if ((d_tag_utype) DT_ADDRTAGIDX (dyn->d_tag) < DT_ADDRNUM)
-- info[DT_ADDRTAGIDX (dyn->d_tag) + DT_NUM + DT_THISPROCNUM
-- + DT_VERSIONTAGNUM + DT_EXTRANUM + DT_VALNUM] = dyn;
-+ {
-+ d_tag_utype i =
-+ DT_ADDRTAGIDX (dyn->d_tag) + DT_NUM + DT_THISPROCNUM
-+ + DT_VERSIONTAGNUM + DT_EXTRANUM + DT_VALNUM;
-+ info[i] = dyn;
-+ }
- ++dyn;
- }
-
diff --git a/sys-libs/glibc/files/2.19/glibc-2.19-kernel-2.6.16-compat.patch b/sys-libs/glibc/files/2.19/glibc-2.19-kernel-2.6.16-compat.patch
deleted file mode 100644
index bf75f80c..00000000
--- a/sys-libs/glibc/files/2.19/glibc-2.19-kernel-2.6.16-compat.patch
+++ /dev/null
@@ -1,85 +0,0 @@
-Remove newer symbols that does not work on linux-2.6.16.
-
-This is only for Prefix standalone.
-
-Index: glibc-2.19/io/sys/stat.h
-===================================================================
---- glibc-2.19.orig/io/sys/stat.h
-+++ glibc-2.19/io/sys/stat.h
-@@ -361,10 +361,6 @@ extern int mkfifoat (int __fd, const cha
- #ifdef __USE_ATFILE
- /* Set file access and modification times relative to directory file
- descriptor. */
--extern int utimensat (int __fd, const char *__path,
-- const struct timespec __times[2],
-- int __flags)
-- __THROW __nonnull ((2));
- #endif
-
- #ifdef __USE_XOPEN2K8
-Index: glibc-2.19/posix/unistd.h
-===================================================================
---- glibc-2.19.orig/posix/unistd.h
-+++ glibc-2.19/posix/unistd.h
-@@ -419,7 +419,6 @@ extern int pipe (int __pipedes[2]) __THR
- #ifdef __USE_GNU
- /* Same as pipe but apply flags passed in FLAGS to the new file
- descriptors. */
--extern int pipe2 (int __pipedes[2], int __flags) __THROW __wur;
- #endif
-
- /* Schedule an alarm. In SECONDS seconds, the process will get a SIGALRM.
-Index: glibc-2.19/sysdeps/unix/sysv/linux/x86/bits/epoll.h
-===================================================================
---- glibc-2.19.orig/sysdeps/unix/sysv/linux/x86/bits/epoll.h
-+++ glibc-2.19/sysdeps/unix/sysv/linux/x86/bits/epoll.h
-@@ -19,11 +19,5 @@
- # error "Never use <bits/epoll.h> directly; include <sys/epoll.h> instead."
- #endif
-
--/* Flags to be passed to epoll_create1. */
--enum
-- {
-- EPOLL_CLOEXEC = 02000000
--#define EPOLL_CLOEXEC EPOLL_CLOEXEC
-- };
-
- #define __EPOLL_PACKED __attribute__ ((__packed__))
-Index: glibc-2.19/sysdeps/unix/sysv/linux/bits/fcntl-linux.h
-===================================================================
---- glibc-2.19.orig/sysdeps/unix/sysv/linux/bits/fcntl-linux.h
-+++ glibc-2.19/sysdeps/unix/sysv/linux/bits/fcntl-linux.h
-@@ -187,8 +187,6 @@
- # define F_GETPIPE_SZ 1032 /* Set pipe page size array. */
- #endif
- #ifdef __USE_XOPEN2K8
--# define F_DUPFD_CLOEXEC 1030 /* Duplicate file descriptor with
-- close-on-exit set. */
- #endif
-
- /* For F_[GET|SET]FD. */
-Index: glibc-2.19/sysdeps/unix/sysv/linux/sys/epoll.h
-===================================================================
---- glibc-2.19.orig/sysdeps/unix/sysv/linux/sys/epoll.h
-+++ glibc-2.19/sysdeps/unix/sysv/linux/sys/epoll.h
-@@ -101,7 +101,6 @@ extern int epoll_create (int __size) __T
-
- /* Same as epoll_create but with an FLAGS parameter. The unused SIZE
- parameter has been dropped. */
--extern int epoll_create1 (int __flags) __THROW;
-
-
- /* Manipulate an epoll instance "epfd". Returns 0 in case of success,
-Index: glibc-2.19/time/sys/time.h
-===================================================================
---- glibc-2.19.orig/time/sys/time.h
-+++ glibc-2.19/time/sys/time.h
-@@ -140,8 +140,6 @@ extern int utimes (const char *__file, c
-
- #ifdef __USE_BSD
- /* Same as `utimes', but does not follow symbolic links. */
--extern int lutimes (const char *__file, const struct timeval __tvp[2])
-- __THROW __nonnull ((1));
-
- /* Same as `utimes', but takes an open file descriptor instead of a name. */
- extern int futimes (int __fd, const struct timeval __tvp[2]) __THROW;
diff --git a/sys-libs/glibc/files/2.19/glibc-2.19-kernel-2.6.16-hide-pipe2.patch b/sys-libs/glibc/files/2.19/glibc-2.19-kernel-2.6.16-hide-pipe2.patch
deleted file mode 100644
index 2b9cccec..00000000
--- a/sys-libs/glibc/files/2.19/glibc-2.19-kernel-2.6.16-hide-pipe2.patch
+++ /dev/null
@@ -1,16 +0,0 @@
-Remove the pipe2 symbol from libc.so, otherwise meson will pick it up.
-
-This is a balance. We decide not to strip all the O_CLOEXEC, otherwise
-gtk+ will need to be patched.
-Index: glibc-2.19/sysdeps/unix/make-syscalls.sh
-===================================================================
---- glibc-2.19.orig/sysdeps/unix/make-syscalls.sh
-+++ glibc-2.19/sysdeps/unix/make-syscalls.sh
-@@ -131,6 +131,7 @@ emit_weak_aliases()
- echo " echo 'libc_hidden_def ($name)'; \\"
- ;;
- *)
-+ [ $name = pipe2 ] && continue
- echo " echo 'weak_alias ($strong, $name)'; \\"
- echo " echo 'libc_hidden_weak ($name)'; \\"
- ;;
diff --git a/sys-libs/glibc/files/2.25/glibc-2.25-gentoo-chk_fail.c b/sys-libs/glibc/files/2.25/glibc-2.25-gentoo-chk_fail.c
deleted file mode 100644
index 2ef96b75..00000000
--- a/sys-libs/glibc/files/2.25/glibc-2.25-gentoo-chk_fail.c
+++ /dev/null
@@ -1,303 +0,0 @@
-/* Copyright (C) 2004-2014 Free Software Foundation, Inc.
- Copyright (C) 2006-2014 Gentoo 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 Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 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
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-/* Hardened Gentoo SSP and FORTIFY handler
-
- A failure handler that does not use functions from the rest of glibc;
- it uses the INTERNAL_SYSCALL methods directly. This helps ensure no
- possibility of recursion into the handler.
-
- Direct all bug reports to http://bugs.gentoo.org/
-
- People who have contributed significantly to the evolution of this file:
- Ned Ludd - <solar[@]gentoo.org>
- Alexander Gabert - <pappy[@]gentoo.org>
- The PaX Team - <pageexec[@]freemail.hu>
- Peter S. Mazinger - <ps.m[@]gmx.net>
- Yoann Vandoorselaere - <yoann[@]prelude-ids.org>
- Robert Connolly - <robert[@]linuxfromscratch.org>
- Cory Visi <cory[@]visi.name>
- Mike Frysinger <vapier[@]gentoo.org>
- Magnus Granberg <zorry[@]gentoo.org>
- Kevin F. Quinn - <kevquinn[@]gentoo.org>
- */
-
-#include <errno.h>
-#include <stdio.h>
-#include <stdlib.h>
-#include <unistd.h>
-#include <signal.h>
-
-#include <sys/types.h>
-
-#include <sysdep-cancel.h>
-#include <sys/syscall.h>
-
-#include <kernel-features.h>
-
-#include <alloca.h>
-/* from sysdeps */
-#include <socketcall.h>
-/* for the stuff in bits/socket.h */
-#include <sys/socket.h>
-#include <sys/un.h>
-
-/* Sanity check on SYSCALL macro names - force compilation
- * failure if the names used here do not exist
- */
-#if !defined __NR_socketcall && !defined __NR_socket
-# error Cannot do syscall socket or socketcall
-#endif
-#if !defined __NR_socketcall && !defined __NR_connect
-# error Cannot do syscall connect or socketcall
-#endif
-#ifndef __NR_write
-# error Cannot do syscall write
-#endif
-#ifndef __NR_close
-# error Cannot do syscall close
-#endif
-#ifndef __NR_getpid
-# error Cannot do syscall getpid
-#endif
-#ifndef __NR_kill
-# error Cannot do syscall kill
-#endif
-#ifndef __NR_exit
-# error Cannot do syscall exit
-#endif
-#ifdef SSP_SMASH_DUMPS_CORE
-# define ENABLE_SSP_SMASH_DUMPS_CORE 1
-# if !defined _KERNEL_NSIG && !defined _NSIG
-# error No _NSIG or _KERNEL_NSIG for rt_sigaction
-# endif
-# if !defined __NR_sigaction && !defined __NR_rt_sigaction
-# error Cannot do syscall sigaction or rt_sigaction
-# endif
-/* Although rt_sigaction expects sizeof(sigset_t) - it expects the size
- * of the _kernel_ sigset_t which is not the same as the user sigset_t.
- * Most arches have this as _NSIG bits - mips has _KERNEL_NSIG bits for
- * some reason.
- */
-# ifdef _KERNEL_NSIG
-# define _SSP_NSIG _KERNEL_NSIG
-# else
-# define _SSP_NSIG _NSIG
-# endif
-#else
-# define _SSP_NSIG 0
-# define ENABLE_SSP_SMASH_DUMPS_CORE 0
-#endif
-
-/* Define DO_SIGACTION - default to newer rt signal interface but
- * fallback to old as needed.
- */
-#ifdef __NR_rt_sigaction
-# define DO_SIGACTION(signum, act, oldact) \
- INLINE_SYSCALL(rt_sigaction, 4, signum, act, oldact, _SSP_NSIG/8)
-#else
-# define DO_SIGACTION(signum, act, oldact) \
- INLINE_SYSCALL(sigaction, 3, signum, act, oldact)
-#endif
-
-/* Define DO_SOCKET/DO_CONNECT functions to deal with socketcall vs socket/connect */
-#if defined(__NR_socket) && defined(__NR_connect)
-# define USE_OLD_SOCKETCALL 0
-#else
-# define USE_OLD_SOCKETCALL 1
-#endif
-
-/* stub out the __NR_'s so we can let gcc optimize away dead code */
-#ifndef __NR_socketcall
-# define __NR_socketcall 0
-#endif
-#ifndef __NR_socket
-# define __NR_socket 0
-#endif
-#ifndef __NR_connect
-# define __NR_connect 0
-#endif
-#define DO_SOCKET(result, domain, type, protocol) \
- do { \
- if (USE_OLD_SOCKETCALL) { \
- socketargs[0] = domain; \
- socketargs[1] = type; \
- socketargs[2] = protocol; \
- socketargs[3] = 0; \
- result = INLINE_SYSCALL(socketcall, 2, SOCKOP_socket, socketargs); \
- } else \
- result = INLINE_SYSCALL(socket, 3, domain, type, protocol); \
- } while (0)
-#define DO_CONNECT(result, sockfd, serv_addr, addrlen) \
- do { \
- if (USE_OLD_SOCKETCALL) { \
- socketargs[0] = sockfd; \
- socketargs[1] = (unsigned long int)serv_addr; \
- socketargs[2] = addrlen; \
- socketargs[3] = 0; \
- result = INLINE_SYSCALL(socketcall, 2, SOCKOP_connect, socketargs); \
- } else \
- result = INLINE_SYSCALL(connect, 3, sockfd, serv_addr, addrlen); \
- } while (0)
-
-#ifndef _PATH_LOG
-# define _PATH_LOG "/dev/log"
-#endif
-
-static const char path_log[] = _PATH_LOG;
-
-/* For building glibc with SSP switched on, define __progname to a
- * constant if building for the run-time loader, to avoid pulling
- * in more of libc.so into ld.so
- */
-#ifdef IS_IN_rtld
-static const char *__progname = "<ldso>";
-#else
-extern const char *__progname;
-#endif
-
-#ifdef GENTOO_SSP_HANDLER
-# define ERROR_MSG "stack smashing"
-#else
-# define ERROR_MSG "buffer overflow"
-#endif
-
-/* Common handler code, used by chk_fail
- * Inlined to ensure no self-references to the handler within itself.
- * Data static to avoid putting more than necessary on the stack,
- * to aid core debugging.
- */
-__attribute__ ((__noreturn__, __always_inline__))
-static inline void
-__hardened_gentoo_fail(void)
-{
-#define MESSAGE_BUFSIZ 512
- static pid_t pid;
- static int plen, i, hlen;
- static char message[MESSAGE_BUFSIZ];
- /* <11> is LOG_USER|LOG_ERR. A dummy date for loggers to skip over. */
- static const char msg_header[] = "<11>" __DATE__ " " __TIME__ " glibc-gentoo-hardened-check: ";
- static const char msg_ssd[] = "*** " ERROR_MSG " detected ***: ";
- static const char msg_terminated[] = " terminated; ";
- static const char msg_report[] = "report to " REPORT_BUGS_TO "\n";
- static const char msg_unknown[] = "<unknown>";
- static int log_socket, connect_result;
- static struct sockaddr_un sock;
- static unsigned long int socketargs[4];
-
- /* Build socket address */
- sock.sun_family = AF_UNIX;
- i = 0;
- while (path_log[i] != '\0' && i < sizeof(sock.sun_path) - 1) {
- sock.sun_path[i] = path_log[i];
- ++i;
- }
- sock.sun_path[i] = '\0';
-
- /* Try SOCK_DGRAM connection to syslog */
- connect_result = -1;
- DO_SOCKET(log_socket, AF_UNIX, SOCK_DGRAM, 0);
- if (log_socket != -1)
- DO_CONNECT(connect_result, log_socket, &sock, sizeof(sock));
- if (connect_result == -1) {
- if (log_socket != -1)
- INLINE_SYSCALL(close, 1, log_socket);
- /* Try SOCK_STREAM connection to syslog */
- DO_SOCKET(log_socket, AF_UNIX, SOCK_STREAM, 0);
- if (log_socket != -1)
- DO_CONNECT(connect_result, log_socket, &sock, sizeof(sock));
- }
-
- /* Build message. Messages are generated both in the old style and new style,
- * so that log watchers that are configured for the old-style message continue
- * to work.
- */
-#define strconcat(str) \
- ({ \
- i = 0; \
- while ((str[i] != '\0') && ((i + plen) < (MESSAGE_BUFSIZ - 1))) { \
- message[plen + i] = str[i]; \
- ++i; \
- } \
- plen += i; \
- })
-
- /* Tersely log the failure */
- plen = 0;
- strconcat(msg_header);
- hlen = plen;
- strconcat(msg_ssd);
- if (__progname != NULL)
- strconcat(__progname);
- else
- strconcat(msg_unknown);
- strconcat(msg_terminated);
- strconcat(msg_report);
-
- /* Write out error message to STDERR, to syslog if open */
- INLINE_SYSCALL(write, 3, STDERR_FILENO, message + hlen, plen - hlen);
- if (connect_result != -1) {
- INLINE_SYSCALL(write, 3, log_socket, message, plen);
- INLINE_SYSCALL(close, 1, log_socket);
- }
-
- /* Time to kill self since we have no idea what is going on */
- pid = INLINE_SYSCALL(getpid, 0);
-
- if (ENABLE_SSP_SMASH_DUMPS_CORE) {
- /* Remove any user-supplied handler for SIGABRT, before using it. */
-#if 0
- /*
- * Note: Disabled because some programs catch & process their
- * own crashes. We've already enabled this code path which
- * means we want to let core dumps happen.
- */
- static struct sigaction default_abort_act;
- default_abort_act.sa_handler = SIG_DFL;
- default_abort_act.sa_sigaction = NULL;
- __sigfillset(&default_abort_act.sa_mask);
- default_abort_act.sa_flags = 0;
- if (DO_SIGACTION(SIGABRT, &default_abort_act, NULL) == 0)
-#endif
- INLINE_SYSCALL(kill, 2, pid, SIGABRT);
- }
-
- /* SIGKILL is only signal which cannot be caught */
- INLINE_SYSCALL(kill, 2, pid, SIGKILL);
-
- /* In case the kill didn't work, exit anyway.
- * The loop prevents gcc thinking this routine returns.
- */
- while (1)
- INLINE_SYSCALL(exit, 1, 137);
-}
-
-__attribute__ ((__noreturn__))
-#ifdef GENTOO_SSP_HANDLER
-void __stack_chk_fail(void)
-#else
-void __chk_fail(void)
-#endif
-{
- __hardened_gentoo_fail();
-}
-
-#ifdef GENTOO_SSP_HANDLER
-strong_alias (__stack_chk_fail, __stack_chk_fail_local)
-#endif
diff --git a/sys-libs/glibc/files/2.34/glibc-2.34-hppa-asm-getcontext-fixes.patch b/sys-libs/glibc/files/2.34/glibc-2.34-hppa-asm-getcontext-fixes.patch
deleted file mode 100644
index 299a6dae..00000000
--- a/sys-libs/glibc/files/2.34/glibc-2.34-hppa-asm-getcontext-fixes.patch
+++ /dev/null
@@ -1,214 +0,0 @@
-https://sourceware.org/git/?p=glibc.git;a=patch;h=738ee53f0ce5e39b9b7a6777f5d3057afbaac498
-https://sourceware.org/git/?p=glibc.git;a=patch;h=d53b9cc391c72a1011ea8fe7a9f70dc5060a0db2
-
-From 738ee53f0ce5e39b9b7a6777f5d3057afbaac498 Mon Sep 17 00:00:00 2001
-From: John David Anglin <danglin@gcc.gnu.org>
-Date: Tue, 15 Mar 2022 23:12:37 +0000
-Subject: [PATCH] hppa: Implement swapcontext in assembler (bug 28960)
-
-When swapcontext.c is compiled without -g, the following error occurs:
-Error: CFI instruction used without previous .cfi_startproc
-
-Fix by converting swapcontext routine to assembler.
----
- sysdeps/unix/sysv/linux/hppa/swapcontext.S | 72 +++++++++++++++++++
- sysdeps/unix/sysv/linux/hppa/swapcontext.c | 83 ----------------------
- 2 files changed, 72 insertions(+), 83 deletions(-)
- create mode 100644 sysdeps/unix/sysv/linux/hppa/swapcontext.S
- delete mode 100644 sysdeps/unix/sysv/linux/hppa/swapcontext.c
-
-diff --git a/sysdeps/unix/sysv/linux/hppa/swapcontext.S b/sysdeps/unix/sysv/linux/hppa/swapcontext.S
-new file mode 100644
-index 0000000000..94b164dc63
---- /dev/null
-+++ b/sysdeps/unix/sysv/linux/hppa/swapcontext.S
-@@ -0,0 +1,72 @@
-+/* Swap to new context.
-+ Copyright (C) 2008-2022 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 Lesser General Public
-+ License as published by the Free Software Foundation; either
-+ version 2.1 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
-+ Lesser General Public License for more details.
-+
-+ You should have received a copy of the GNU Lesser General Public
-+ License along with the GNU C Library. If not, see
-+ <https://www.gnu.org/licenses/>. */
-+
-+#include <sysdep.h>
-+#include "ucontext_i.h"
-+
-+ .text
-+ENTRY(__swapcontext)
-+
-+ /* Copy rp to ret0 (r28). */
-+ copy %rp,%ret0
-+
-+ /* Create a frame. */
-+ ldo 64(%sp),%sp
-+ .cfi_def_cfa_offset -64
-+
-+ /* Save the current machine context to oucp. */
-+ bl __getcontext,%rp
-+
-+ /* Copy oucp to register ret1 (r29). __getcontext saves and
-+ restores it on a normal return. It is restored from oR29
-+ on reactivation. */
-+ copy %r26,%ret1
-+
-+ /* Pop frame. */
-+ ldo -64(%sp),%sp
-+ .cfi_def_cfa_offset 0
-+
-+ /* Load return pointer from oR28. */
-+ ldw oR28(%ret1),%rp
-+
-+ /* Return if error. */
-+ or,= %r0,%ret0,%r0
-+ bv,n %r0(%rp)
-+
-+ /* Load sc_sar flag. */
-+ ldb oSAR(%ret1),%r20
-+
-+ /* Return if oucp context has been reactivated. */
-+ or,= %r0,%r20,%r0
-+ bv,n %r0(%rp)
-+
-+ /* Mark sc_sar flag. */
-+ ldi 1,%r20
-+ stb %r20,oSAR(%ret1)
-+
-+ /* Activate the machine context in ucp. */
-+ bl __setcontext,%rp
-+ ldw oR25(%ret1),%r26
-+
-+ /* Load return pointer. */
-+ ldw oR28(%ret1),%rp
-+ bv,n %r0(%rp)
-+
-+PSEUDO_END(__swapcontext)
-+
-+weak_alias (__swapcontext, swapcontext)
-diff --git a/sysdeps/unix/sysv/linux/hppa/swapcontext.c b/sysdeps/unix/sysv/linux/hppa/swapcontext.c
-deleted file mode 100644
-index 1664f68c7b..0000000000
---- a/sysdeps/unix/sysv/linux/hppa/swapcontext.c
-+++ /dev/null
-@@ -1,83 +0,0 @@
--/* Swap to new context.
-- Copyright (C) 2008-2021 Free Software Foundation, Inc.
-- This file is part of the GNU C Library.
-- Contributed by Helge Deller <deller@gmx.de>, 2008.
--
-- The GNU C Library 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 2.1 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
-- Lesser General Public License for more details.
--
-- You should have received a copy of the GNU Lesser General Public
-- License along with the GNU C Library. If not, see
-- <https://www.gnu.org/licenses/>. */
--
--#include <ucontext.h>
--#include "ucontext_i.h"
--
--extern int __getcontext (ucontext_t *ucp);
--extern int __setcontext (const ucontext_t *ucp);
--
--int
--__swapcontext (ucontext_t *oucp, const ucontext_t *ucp)
--{
-- /* Save rp for debugger. */
-- asm ("stw %rp,-20(%sp)");
-- asm (".cfi_offset 2, -20");
--
-- /* Copy rp to ret0 (r28). */
-- asm ("copy %rp,%ret0");
--
-- /* Create a frame. */
-- asm ("ldo 64(%sp),%sp");
-- asm (".cfi_def_cfa_offset -64");
--
-- /* Save the current machine context to oucp. */
-- asm ("bl __getcontext,%rp");
--
-- /* Copy oucp to register ret1 (r29). __getcontext saves and restores it
-- on a normal return. It is restored from oR29 on reactivation. */
-- asm ("copy %r26,%ret1");
--
-- /* Pop frame. */
-- asm ("ldo -64(%sp),%sp");
-- asm (".cfi_def_cfa_offset 0");
--
-- /* Load return pointer from oR28. */
-- asm ("ldw %0(%%ret1),%%rp" : : "i" (oR28));
--
-- /* Return if error. */
-- asm ("or,= %r0,%ret0,%r0");
-- asm ("bv,n %r0(%rp)");
--
-- /* Load sc_sar flag. */
-- asm ("ldb %0(%%ret1),%%r20" : : "i" (oSAR));
--
-- /* Return if oucp context has been reactivated. */
-- asm ("or,= %r0,%r20,%r0");
-- asm ("bv,n %r0(%rp)");
--
-- /* Mark sc_sar flag. */
-- asm ("1: ldi 1,%r20");
-- asm ("stb %%r20,%0(%%ret1)" : : "i" (oSAR));
--
-- /* Activate the machine context in ucp. */
-- asm ("bl __setcontext,%rp");
-- asm ("ldw %0(%%ret1),%%r26" : : "i" (oR25));
--
-- /* Load return pointer. */
-- asm ("ldw %0(%%ret1),%%rp" : : "i" (oR28));
--
-- /* A successful call to setcontext does not return. */
-- asm ("bv,n %r0(%rp)");
--
-- /* Make gcc happy. */
-- return 0;
--}
--
--weak_alias (__swapcontext, swapcontext)
---
-2.27.0
-
-
-From d53b9cc391c72a1011ea8fe7a9f70dc5060a0db2 Mon Sep 17 00:00:00 2001
-From: John David Anglin <danglin@gcc.gnu.org>
-Date: Tue, 15 Mar 2022 23:04:39 +0000
-Subject: [PATCH] hppa: Use END instead of PSEUDO_END in swapcontext.S
-
-(cherry picked from commit 7a5c440102d4ec7fafd9bbd98eca9bd90ecaaafd)
----
- sysdeps/unix/sysv/linux/hppa/swapcontext.S | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/sysdeps/unix/sysv/linux/hppa/swapcontext.S b/sysdeps/unix/sysv/linux/hppa/swapcontext.S
-index 94b164dc63..fbc22586d1 100644
---- a/sysdeps/unix/sysv/linux/hppa/swapcontext.S
-+++ b/sysdeps/unix/sysv/linux/hppa/swapcontext.S
-@@ -67,6 +67,6 @@ ENTRY(__swapcontext)
- ldw oR28(%ret1),%rp
- bv,n %r0(%rp)
-
--PSEUDO_END(__swapcontext)
-+END(__swapcontext)
-
- weak_alias (__swapcontext, swapcontext)
---
-2.27.0
diff --git a/sys-libs/glibc/files/2.35/glibc-2.35-make-4.4-MAKEFLAGS.patch b/sys-libs/glibc/files/2.35/glibc-2.35-make-4.4-MAKEFLAGS.patch
deleted file mode 100644
index 51fbe5f5..00000000
--- a/sys-libs/glibc/files/2.35/glibc-2.35-make-4.4-MAKEFLAGS.patch
+++ /dev/null
@@ -1,102 +0,0 @@
-https://sourceware.org/git/?p=glibc.git;a=commitdiff;h=2d7ed98add14f75041499ac189696c9bd3d757fe
-https://bugs.gentoo.org/869263
-
-From 2d7ed98add14f75041499ac189696c9bd3d757fe Mon Sep 17 00:00:00 2001
-From: Sergei Trofimovich <slyich@gmail.com>
-Date: Tue, 13 Sep 2022 13:39:13 -0400
-Subject: [PATCH] Makerules: fix MAKEFLAGS assignment for upcoming make-4.4
- [BZ# 29564]
-
-make-4.4 will add long flags to MAKEFLAGS variable:
-
- * WARNING: Backward-incompatibility!
- Previously only simple (one-letter) options were added to the MAKEFLAGS
- variable that was visible while parsing makefiles. Now, all options
- are available in MAKEFLAGS.
-
-This causes locale builds to fail when long options are used:
-
- $ make --shuffle
- ...
- make -C localedata install-locales
- make: invalid shuffle mode: '1662724426r'
-
-The change fixes it by passing eash option via whitespace and dashes.
-That way option is appended to both single-word form and whitespace
-separated form.
-
-While at it fixed --silent mode detection in $(MAKEFLAGS) by filtering
-out --long-options. Otherwise options like --shuffle flag enable silent
-mode unintentionally. $(silent-make) variable consolidates the checks.
-
-Resolves: BZ# 29564
-
-CC: Paul Smith <psmith@gnu.org>
-CC: Siddhesh Poyarekar <siddhesh@gotplt.org>
-Signed-off-by: Sergei Trofimovich <slyich@gmail.com>
-Reviewed-by: Siddhesh Poyarekar <siddhesh@sourceware.org>
---- a/Makeconfig
-+++ b/Makeconfig
-@@ -43,6 +43,22 @@ else
- $(error objdir must be defined by the build-directory Makefile)
- endif
-
-+# Did we request 'make -s' run? "yes" or "no".
-+# Starting from make-4.4 MAKEFLAGS now contains long
-+# options like '--shuffle'. To detect presence of 's'
-+# we pick first word with short options. Long options
-+# are guaranteed to come after whitespace. We use '-'
-+# prefix to always have a word before long options
-+# even if no short options were passed.
-+# Typical MAKEFLAGS values to watch for:
-+# "rs --shuffle=42" (silent)
-+# " --shuffle" (not silent)
-+ifeq ($(findstring s, $(firstword -$(MAKEFLAGS))),)
-+silent-make := no
-+else
-+silent-make := yes
-+endif
-+
- # Root of the sysdeps tree.
- sysdep_dir := $(..)sysdeps
- export sysdep_dir := $(sysdep_dir)
-@@ -917,7 +933,7 @@ endif
- # umpteen zillion filenames along with it (we use `...' instead)
- # but we don't want this echoing done when the user has said
- # he doesn't want to see commands echoed by using -s.
--ifneq "$(findstring s,$(MAKEFLAGS))" "" # if -s
-+ifeq ($(silent-make),yes) # if -s
- +cmdecho := echo >/dev/null
- else # not -s
- +cmdecho := echo
---- a/Makerules
-+++ b/Makerules
-@@ -794,7 +794,7 @@ endif
- # Maximize efficiency by minimizing the number of rules.
- .SUFFIXES: # Clear the suffix list. We don't use suffix rules.
- # Don't define any builtin rules.
--MAKEFLAGS := $(MAKEFLAGS)r
-+MAKEFLAGS := $(MAKEFLAGS) -r
-
- # Generic rule for making directories.
- %/:
-@@ -811,7 +811,7 @@ MAKEFLAGS := $(MAKEFLAGS)r
- .PRECIOUS: $(foreach l,$(libtypes),$(patsubst %,$(common-objpfx)$l,c))
-
- # Use the verbose option of ar and tar when not running silently.
--ifeq "$(findstring s,$(MAKEFLAGS))" "" # if not -s
-+ifeq ($(silent-make),no) # if not -s
- verbose := v
- else # -s
- verbose :=
---- a/elf/rtld-Rules
-+++ b/elf/rtld-Rules
-@@ -52,7 +52,7 @@ $(objpfx)rtld-libc.a: $(foreach dir,$(rtld-subdirs),\
- mv -f $@T $@
-
- # Use the verbose option of ar and tar when not running silently.
--ifeq "$(findstring s,$(MAKEFLAGS))" "" # if not -s
-+ifeq ($(silent-make),no) # if not -s
- verbose := v
- else # -s
- verbose :=
diff --git a/sys-libs/glibc/files/host.conf-1 b/sys-libs/glibc/files/host.conf-1
deleted file mode 100644
index 661b4af5..00000000
--- a/sys-libs/glibc/files/host.conf-1
+++ /dev/null
@@ -1,23 +0,0 @@
-# /etc/host.conf:
-
-# The file /etc/host.conf contains configuration information specific to
-# the resolver library. It should contain one configuration keyword per
-# line, followed by appropriate configuration information. The keywords
-# recognized are order, trim, mdns, multi, nospoof, spoof, and reorder.
-
-
-
-# This keyword specifies how host lookups are to be performed. It
-# should be followed by one or more lookup methods, separated by
-# commas. Valid methods are bind, hosts, and nis.
-#
-order hosts, bind
-
-
-# Valid values are on and off. If set to on, the resolv+ library
-# will return all valid addresses for a host that appears in the
-# /etc/hosts file, instead of only the first. This is off by
-# default, as it may cause a substantial performance loss at sites
-# with large hosts files.
-#
-multi off
diff --git a/sys-libs/glibc/files/nscd-1 b/sys-libs/glibc/files/nscd-1
deleted file mode 100644
index f69c8e2e..00000000
--- a/sys-libs/glibc/files/nscd-1
+++ /dev/null
@@ -1,85 +0,0 @@
-#!/sbin/openrc-run
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-description="The 'Name Service Cache Daemon' is a daemon that provides a cache"
-description="${description} for the most common name service requests"
-
-extra_started_commands="flush_all flush_hosts flush_group flush_passwd flush_netgroup flush_services"
-
-description_flush_all="Will invalidate hosts, group, passwd, netgroup and services cache"
-description_flush_hosts="Will invalidate hosts cache"
-description_flush_group="Will invalidate group cache"
-description_flush_passwd="Will invalidate passwd cache"
-description_flush_netgroup="Will invalidate netgroup cache"
-description_flush_services="Will invalidate services cache"
-
-pidfile="/run/nscd/nscd.pid"
-command="/usr/sbin/nscd"
-
-depend() {
- use dns ldap net slapd logger
-}
-
-checkconfig() {
- if [ ! -d /run/nscd ] ; then
- checkpath -d -m 755 /run/nscd
- fi
-
- if [ -z "${NSCD_PERMS_OK}" ] && [ "$(stat -c %a /run/nscd)" != "755" ] ; then
- ewarn "nscd run dir is not world readable, you should reset the perms:"
- ewarn "chmod 755 /run/nscd"
- ewarn "chmod a+rw /run/nscd/socket"
- ewarn "To disable this warning, set 'NSCD_PERMS_OK' in /etc/conf.d/nscd"
- fi
-
- if grep -qs '^[[:space:]]*persistent\>' /etc/nscd.conf ; then
- checkpath -d -m 700 /var/db/nscd
- fi
-}
-
-_flush() {
- local table=$1
-
- ebegin "Flushing ${table} table"
- ${command} --invalidate ${table}
- eend $?
-}
-
-flush_all() {
- local has_errors=0
-
- ebegin "Flushing all caches"
-
- local table=
- for table in passwd group hosts netgroup services; do
- ${command} --invalidate ${table}
- [ $? -ne 0 ] && has_errors=1
- done
-
- eend ${has_errors}
-}
-
-flush_hosts() {
- _flush hosts
-}
-
-flush_group() {
- _flush group
-}
-
-flush_passwd() {
- _flush passwd
-}
-
-flush_netgroup() {
- _flush netgroup
-}
-
-flush_services() {
- _flush services
-}
-
-start_pre() {
- checkconfig
-}
diff --git a/sys-libs/glibc/files/nscd.service b/sys-libs/glibc/files/nscd.service
deleted file mode 100644
index 25a3b1d9..00000000
--- a/sys-libs/glibc/files/nscd.service
+++ /dev/null
@@ -1,15 +0,0 @@
-[Unit]
-Description=Name Service Cache Daemon
-After=network.target
-
-[Service]
-ExecStart=/usr/sbin/nscd -F
-ExecStop=/usr/sbin/nscd --shutdown
-ExecReload=/usr/sbin/nscd -i passwd
-ExecReload=/usr/sbin/nscd -i group
-ExecReload=/usr/sbin/nscd -i hosts
-ExecReload=/usr/sbin/nscd -i services
-Restart=always
-
-[Install]
-WantedBy=multi-user.target
diff --git a/sys-libs/glibc/files/nscd.tmpfilesd b/sys-libs/glibc/files/nscd.tmpfilesd
deleted file mode 100644
index 52edbba6..00000000
--- a/sys-libs/glibc/files/nscd.tmpfilesd
+++ /dev/null
@@ -1,4 +0,0 @@
-# Configuration to create /run/nscd directory
-# Used as part of systemd's tmpfiles
-
-d /run/nscd 0755 root root