@ -1,37 +0,0 @@ |
|||
# --- SDE-COPYRIGHT-NOTE-BEGIN --- |
|||
# This copyright note is auto-generated by ./scripts/Create-CopyPatch. |
|||
# |
|||
# Filename: package/.../glibc/allow_Os.patch |
|||
# Copyright (C) 2009 The OpenSDE Project |
|||
# |
|||
# More information can be found in the files COPYING and README. |
|||
# |
|||
# This patch file is dual-licensed. It is available under the license the |
|||
# patched project is licensed under, as long as it is an OpenSource license |
|||
# as defined at http://www.opensource.org/ (e.g. BSD, X11) or under the terms |
|||
# of the GNU General Public License as published by the Free Software |
|||
# Foundation; either version 2 of the License, or (at your option) any later |
|||
# version. |
|||
# --- SDE-COPYRIGHT-NOTE-END --- |
|||
|
|||
http://sourceware.org/bugzilla/show_bug.cgi?id=5203 |
|||
|
|||
objdir-x86_64-unknown-linux-gnu/libc_pic.os: In function `faccessat': |
|||
(.text+0x7fad9): undefined reference to `fstatat64' |
|||
collect2: ld returned 1 exit status |
|||
|
|||
--- ./io/sys/stat.h.orig 2009-09-30 19:04:20.000000000 +0200
|
|||
+++ ./io/sys/stat.h 2009-09-30 19:06:15.000000000 +0200
|
|||
@@ -444,7 +444,11 @@
|
|||
__mode_t __mode, __dev_t *__dev) |
|||
__THROW __nonnull ((3, 5)); |
|||
|
|||
-#if defined __GNUC__ && __GNUC__ >= 2 && defined __USE_EXTERN_INLINES
|
|||
+#if defined __GNUC__ && __GNUC__ >= 2
|
|||
+# ifndef __extern_inline
|
|||
+# define __extern_inline extern inline
|
|||
+# endif
|
|||
+
|
|||
/* Inlined versions of the real stat and mknod functions. */ |
|||
|
|||
__extern_inline int |
@ -1,27 +0,0 @@ |
|||
# --- SDE-COPYRIGHT-NOTE-BEGIN --- |
|||
# This copyright note is auto-generated by ./scripts/Create-CopyPatch. |
|||
# |
|||
# Filename: package/.../glibc/fl_wrapper_testfix.patch |
|||
# Copyright (C) 2004 - 2006 The T2 SDE Project |
|||
# Copyright (C) 1998 - 2003 Clifford Wolf |
|||
# |
|||
# More information can be found in the files COPYING and README. |
|||
# |
|||
# This patch file is dual-licensed. It is available under the license the |
|||
# patched project is licensed under, as long as it is an OpenSource license |
|||
# as defined at http://www.opensource.org/ (e.g. BSD, X11) or under the terms |
|||
# of the GNU General Public License as published by the Free Software |
|||
# Foundation; either version 2 of the License, or (at your option) any later |
|||
# version. |
|||
# --- SDE-COPYRIGHT-NOTE-END --- |
|||
|
|||
--- ./scripts/test-installation.pl.gv Fri Nov 15 13:20:48 2002
|
|||
+++ ./scripts/test-installation.pl Fri Nov 15 13:21:07 2002
|
|||
@@ -156,6 +156,7 @@
|
|||
open LDD, "ldd /tmp/test-prg$$ |" |
|||
or die ("Couldn't execute ldd"); |
|||
while (<LDD>) { |
|||
+ next if (/fl_wrapper/);
|
|||
if (/^\s*lib/) { |
|||
($name, $version1, $version2) = |
|||
/^\s*lib(\w*)\.so\.([0-9\.]*)\s*=>.*\.so\.([0-9\.]*)/; |
@ -1,23 +0,0 @@ |
|||
# --- SDE-COPYRIGHT-NOTE-BEGIN --- |
|||
# This copyright note is auto-generated by ./scripts/Create-CopyPatch. |
|||
# |
|||
# Filename: package/.../glibc/glibc-2.16.0-ldd-rewrite-multilib-1.patch |
|||
# Copyright (C) 2010 - 2012 The OpenSDE Project |
|||
# |
|||
# More information can be found in the files COPYING and README. |
|||
# |
|||
# This patch file is dual-licensed. It is available under the license the |
|||
# patched project is licensed under, as long as it is an OpenSource license |
|||
# as defined at http://www.opensource.org/ (e.g. BSD, X11) or under the terms |
|||
# of the GNU General Public License as published by the Free Software |
|||
# Foundation; either version 2 of the License, or (at your option) any later |
|||
# version. |
|||
# --- SDE-COPYRIGHT-NOTE-END --- |
|||
|
|||
--- glibc-2.16.0/sysdeps/unix/sysv/linux/x86_64/ldd-rewrite.sed.orig 2012-06-30 21:12:34.000000000 +0200
|
|||
+++ glibc-2.16.0/sysdeps/unix/sysv/linux/x86_64/ldd-rewrite.sed 2012-08-05 01:26:04.355022490 +0200
|
|||
@@ -1,3 +1,3 @@
|
|||
/LD_TRACE_LOADED_OBJECTS=1/a\ |
|||
add_env="$add_env LD_LIBRARY_VERSION=\\$verify_out" |
|||
-s_^\(RTLDLIST=\)\(.*lib\)\(\|64\|x32\)\(/[^/]*\)\(-x86-64\|-x32\)\(\.so\.[0-9.]*\)[ ]*$_\1"\2\4\6 \264\4-x86-64\6 \2x32\4-x32\6"_
|
|||
+s_^\(RTLDLIST=\)\(.*lib\)\(\|64\|x32\)\(/[^/]*\)\(-x86-64\|-x32\)\(\.so\.[0-9.]*\)[ ]*$_\1"\232\4\6 \264\4-x86-64\6 \2x32\4-x32\6"_
|
@ -1,75 +0,0 @@ |
|||
# --- SDE-COPYRIGHT-NOTE-BEGIN --- |
|||
# This copyright note is auto-generated by ./scripts/Create-CopyPatch. |
|||
# |
|||
# Filename: package/.../glibc/glibc-2.16.0-res_query_fix-1.patch |
|||
# Copyright (C) 2012 The OpenSDE Project |
|||
# |
|||
# More information can be found in the files COPYING and README. |
|||
# |
|||
# This patch file is dual-licensed. It is available under the license the |
|||
# patched project is licensed under, as long as it is an OpenSource license |
|||
# as defined at http://www.opensource.org/ (e.g. BSD, X11) or under the terms |
|||
# of the GNU General Public License as published by the Free Software |
|||
# Foundation; either version 2 of the License, or (at your option) any later |
|||
# version. |
|||
# --- SDE-COPYRIGHT-NOTE-END --- |
|||
|
|||
Submitted By: Bruce Dubbs <bdubbs_at_linuxfromscratch_dot_org> |
|||
Date: 2012-08-27 |
|||
Initial Package Version: 2.16.0 |
|||
Upstream Status: Not yet applied, but in other distros. |
|||
Origin: http://sourceware.org/bugzilla/attachment.cgi?id=5855 |
|||
Description: Fixes a problem with name resolution with errors |
|||
from some name servers. |
|||
|
|||
--- a/resolv/res_query.c
|
|||
+++ a/resolv/res_query.c
|
|||
@@ -122,6 +122,7 @@ __libc_res_nquery(res_state statp,
|
|||
int *resplen2) |
|||
{ |
|||
HEADER *hp = (HEADER *) answer; |
|||
+ HEADER *hp2;
|
|||
int n, use_malloc = 0; |
|||
u_int oflags = statp->_flags; |
|||
|
|||
@@ -239,26 +240,25 @@ __libc_res_nquery(res_state statp,
|
|||
/* __libc_res_nsend might have reallocated the buffer. */ |
|||
hp = (HEADER *) *answerp; |
|||
|
|||
- /* We simplify the following tests by assigning HP to HP2. It
|
|||
- is easy to verify that this is the same as ignoring all
|
|||
- tests of HP2. */
|
|||
- HEADER *hp2 = answerp2 ? (HEADER *) *answerp2 : hp;
|
|||
-
|
|||
- if (n < (int) sizeof (HEADER) && answerp2 != NULL
|
|||
- && *resplen2 > (int) sizeof (HEADER))
|
|||
+ /* We simplify the following tests by assigning HP to HP2 or
|
|||
+ vice versa. It is easy to verify that this is the same as
|
|||
+ ignoring all tests of HP or HP2. */
|
|||
+ if (answerp2 == NULL || *resplen2 < (int) sizeof (HEADER))
|
|||
{ |
|||
- /* Special case of partial answer. */
|
|||
- assert (hp != hp2);
|
|||
- hp = hp2;
|
|||
+ hp2 = hp;
|
|||
} |
|||
- else if (answerp2 != NULL && *resplen2 < (int) sizeof (HEADER)
|
|||
- && n > (int) sizeof (HEADER))
|
|||
+ else
|
|||
{ |
|||
- /* Special case of partial answer. */
|
|||
- assert (hp != hp2);
|
|||
- hp2 = hp;
|
|||
+ hp2 = (HEADER *) *answerp2;
|
|||
+ if (n < (int) sizeof (HEADER))
|
|||
+ {
|
|||
+ hp = hp2;
|
|||
+ }
|
|||
} |
|||
|
|||
+ /* Make sure both hp and hp2 are defined */
|
|||
+ assert((hp != NULL) && (hp2 != NULL));
|
|||
+
|
|||
if ((hp->rcode != NOERROR || ntohs(hp->ancount) == 0) |
|||
&& (hp2->rcode != NOERROR || ntohs(hp2->ancount) == 0)) { |
|||
#ifdef DEBUG |
@ -0,0 +1,88 @@ |
|||
# --- SDE-COPYRIGHT-NOTE-BEGIN --- |
|||
# This copyright note is auto-generated by ./scripts/Create-CopyPatch. |
|||
# |
|||
# Filename: package/.../glibc/glibc-2.23-fhs-1.patch |
|||
# Copyright (C) 2016 The OpenSDE Project |
|||
# |
|||
# More information can be found in the files COPYING and README. |
|||
# |
|||
# This patch file is dual-licensed. It is available under the license the |
|||
# patched project is licensed under, as long as it is an OpenSource license |
|||
# as defined at http://www.opensource.org/ (e.g. BSD, X11) or under the terms |
|||
# of the GNU General Public License as published by the Free Software |
|||
# Foundation; either version 2 of the License, or (at your option) any later |
|||
# version. |
|||
# --- SDE-COPYRIGHT-NOTE-END --- |
|||
|
|||
Submitted By: Armin K. <krejzi at email dot com> |
|||
Date: 2013-02-11 |
|||
Initial Package Version: 2.17 |
|||
Upstream Status: Not Applicable |
|||
Origin: Self |
|||
Description: This patch removes references to /var/db directory which is not part |
|||
of FHS and replaces them with more suitable directories in /var |
|||
hierarchy - /var/cache/nscd for nscd and /var/lib/nss_db for nss_db. |
|||
|
|||
--- a/Makeconfig 2012-12-25 04:02:13.000000000 +0100
|
|||
+++ b/Makeconfig 2013-02-11 01:32:32.500667439 +0100
|
|||
@@ -250,7 +250,7 @@
|
|||
|
|||
# Directory for the database files and Makefile for nss_db. |
|||
ifndef vardbdir |
|||
-vardbdir = $(localstatedir)/db
|
|||
+vardbdir = $(localstatedir)/lib/nss_db
|
|||
endif |
|||
inst_vardbdir = $(install_root)$(vardbdir) |
|||
|
|||
--- a/nscd/nscd.h 2012-12-25 04:02:13.000000000 +0100
|
|||
+++ b/nscd/nscd.h 2013-02-11 01:32:32.500667439 +0100
|
|||
@@ -112,11 +112,11 @@
|
|||
|
|||
|
|||
/* Paths of the file for the persistent storage. */ |
|||
-#define _PATH_NSCD_PASSWD_DB "/var/db/nscd/passwd"
|
|||
-#define _PATH_NSCD_GROUP_DB "/var/db/nscd/group"
|
|||
-#define _PATH_NSCD_HOSTS_DB "/var/db/nscd/hosts"
|
|||
-#define _PATH_NSCD_SERVICES_DB "/var/db/nscd/services"
|
|||
-#define _PATH_NSCD_NETGROUP_DB "/var/db/nscd/netgroup"
|
|||
+#define _PATH_NSCD_PASSWD_DB "/var/cache/nscd/passwd"
|
|||
+#define _PATH_NSCD_GROUP_DB "/var/cache/nscd/group"
|
|||
+#define _PATH_NSCD_HOSTS_DB "/var/cache/nscd/hosts"
|
|||
+#define _PATH_NSCD_SERVICES_DB "/var/cache/nscd/services"
|
|||
+#define _PATH_NSCD_NETGROUP_DB "/var/cache/nscd/netgroup"
|
|||
|
|||
/* Path used when not using persistent storage. */ |
|||
#define _PATH_NSCD_XYZ_DB_TMP "/var/run/nscd/dbXXXXXX" |
|||
--- a/nss/db-Makefile 2012-12-25 04:02:13.000000000 +0100
|
|||
+++ b/nss/db-Makefile 2013-02-11 01:32:32.500667439 +0100
|
|||
@@ -22,7 +22,7 @@
|
|||
/etc/rpc /etc/services /etc/shadow /etc/gshadow \ |
|||
/etc/netgroup) |
|||
|
|||
-VAR_DB = /var/db
|
|||
+VAR_DB = /var/lib/nss_db
|
|||
|
|||
AWK = awk |
|||
MAKEDB = makedb --quiet |
|||
--- a/sysdeps/generic/paths.h 2012-12-25 04:02:13.000000000 +0100
|
|||
+++ b/sysdeps/generic/paths.h 2013-02-11 01:32:32.500667439 +0100
|
|||
@@ -68,7 +68,7 @@
|
|||
/* Provide trailing slash, since mostly used for building pathnames. */ |
|||
#define _PATH_DEV "/dev/" |
|||
#define _PATH_TMP "/tmp/" |
|||
-#define _PATH_VARDB "/var/db/"
|
|||
+#define _PATH_VARDB "/var/lib/nss_db/"
|
|||
#define _PATH_VARRUN "/var/run/" |
|||
#define _PATH_VARTMP "/var/tmp/" |
|||
|
|||
--- a/sysdeps/unix/sysv/linux/paths.h 2012-12-25 04:02:13.000000000 +0100
|
|||
+++ b/sysdeps/unix/sysv/linux/paths.h 2013-02-11 01:32:32.504000831 +0100
|
|||
@@ -68,7 +68,7 @@
|
|||
/* Provide trailing slash, since mostly used for building pathnames. */ |
|||
#define _PATH_DEV "/dev/" |
|||
#define _PATH_TMP "/tmp/" |
|||
-#define _PATH_VARDB "/var/db/"
|
|||
+#define _PATH_VARDB "/var/lib/nss_db/"
|
|||
#define _PATH_VARRUN "/var/run/" |
|||
#define _PATH_VARTMP "/var/tmp/" |
|||
|
@ -1,359 +0,0 @@ |
|||
From 95f5a9a866695da4e038aa4e6ccbbfd5d9cf63b7 Mon Sep 17 00:00:00 2001 |
|||
From: Joseph Myers <joseph@codesourcery.com> |
|||
Date: Tue, 3 Jul 2012 19:14:59 +0000 |
|||
Subject: [PATCH] Avoid use of libgcc_s and libgcc_eh when building glibc. |
|||
|
|||
---
|
|||
ChangeLog | 47 ++++++++++++++++++++++++++++++ |
|||
Makeconfig | 68 ++++++++++++++++++++++++++++++++++++++------ |
|||
Rules | 45 ++++++++++++++++++++++------- |
|||
elf/Makefile | 6 +++- |
|||
elf/static-stubs.c | 46 +++++++++++++++++++++++++++++ |
|||
ports/ChangeLog.arm | 7 ++++ |
|||
ports/sysdeps/arm/Makefile | 8 +++++ |
|||
7 files changed, 206 insertions(+), 21 deletions(-) |
|||
create mode 100644 elf/static-stubs.c |
|||
|
|||
diff --git a/Makeconfig b/Makeconfig
|
|||
index 417fa50..859b588 100644
|
|||
--- a/Makeconfig
|
|||
+++ b/Makeconfig
|
|||
@@ -415,9 +415,9 @@ LDFLAGS.so += $(hashstyle-LDFLAGS)
|
|||
LDFLAGS-rtld += $(hashstyle-LDFLAGS) |
|||
endif |
|||
|
|||
-# Command for linking programs with the C library.
|
|||
+# Commands for linking programs with the C library.
|
|||
ifndef +link |
|||
-+link = $(CC) -nostdlib -nostartfiles -o $@ \
|
|||
++link-before-libc = $(CC) -nostdlib -nostartfiles -o $@ \
|
|||
$(sysdep-LDFLAGS) $(config-LDFLAGS) $(LDFLAGS) $(LDFLAGS-$(@F)) \ |
|||
$(combreloc-LDFLAGS) $(relro-LDFLAGS) $(hashstyle-LDFLAGS) \ |
|||
$(addprefix $(csu-objpfx),$(start-installed-name)) \ |
|||
@@ -426,7 +426,10 @@ ifndef +link
|
|||
$(start-installed-name))\ |
|||
$(+preinit) $(link-extra-libs) \ |
|||
$(common-objpfx)libc% $(+postinit),$^) \ |
|||
- $(link-extra-libs) $(link-libc) $(+postctor) $(+postinit)
|
|||
+ $(link-extra-libs)
|
|||
++link-after-libc = $(+postctor) $(+postinit)
|
|||
++link = $(+link-before-libc) $(link-libc) $(+link-after-libc)
|
|||
++link-tests = $(+link-before-libc) $(link-libc-tests) $(+link-after-libc)
|
|||
endif |
|||
# Command for linking PIE programs with the C library. |
|||
ifndef +link-pie |
|||
@@ -443,7 +446,7 @@ ifndef +link-pie
|
|||
endif |
|||
# Command for statically linking programs with the C library. |
|||
ifndef +link-static |
|||
-+link-static = $(CC) -nostdlib -nostartfiles -static -o $@ \
|
|||
++link-static-before-libc = $(CC) -nostdlib -nostartfiles -static -o $@ \
|
|||
$(sysdep-LDFLAGS) $(LDFLAGS) $(LDFLAGS-$(@F)) \ |
|||
$(addprefix $(csu-objpfx),$(static-start-installed-name)) \ |
|||
$(+preinit) $(+prector) \ |
|||
@@ -451,7 +454,12 @@ ifndef +link-static
|
|||
$(start-installed-name))\ |
|||
$(+preinit) $(link-extra-libs-static) \ |
|||
$(common-objpfx)libc% $(+postinit),$^) \ |
|||
- $(link-extra-libs-static) $(link-libc-static) $(+postctor) $(+postinit)
|
|||
+ $(link-extra-libs-static) $(link-libc-static)
|
|||
++link-static-after-libc = $(+postctor) $(+postinit)
|
|||
++link-static = $(+link-static-before-libc) $(link-libc-static) \
|
|||
+ $(+link-static-after-libc)
|
|||
++link-static-tests = $(+link-static-before-libc) $(link-libc-static-tests) \
|
|||
+ $(+link-static-after-libc)
|
|||
endif |
|||
# Command for statically linking bounded-pointer programs with the C library. |
|||
ifndef +link-bounded |
|||
@@ -475,10 +483,12 @@ ifeq (yes,$(build-shared))
|
|||
# We need the versioned name of libc.so in the deps of $(others) et al |
|||
# so that the symlink to libc.so is created before anything tries to |
|||
# run the linked programs. |
|||
-link-libc = -Wl,-rpath-link=$(rpath-link) \
|
|||
+link-libc-before-gnulib = -Wl,-rpath-link=$(rpath-link) \
|
|||
$(common-objpfx)libc.so$(libc.so-version) \ |
|||
$(common-objpfx)$(patsubst %,$(libtype.oS),c) \ |
|||
- $(as-needed) $(common-objpfx)elf/ld.so $(no-as-needed) $(gnulib)
|
|||
+ $(as-needed) $(common-objpfx)elf/ld.so $(no-as-needed)
|
|||
+link-libc = $(link-libc-before-gnulib) $(gnulib)
|
|||
+link-libc-tests = $(link-libc-before-gnulib) $(gnulib-tests)
|
|||
# This is how to find at build-time things that will be installed there. |
|||
rpath-dirs = math elf dlfcn nss nis rt resolv crypt |
|||
rpath-link = \ |
|||
@@ -488,6 +498,7 @@ else
|
|||
nssobjdir := $(patsubst ../$(subdir),.,$(common-objpfx)nss) |
|||
resolvobjdir := $(patsubst ../$(subdir),.,$(common-objpfx)resolv) |
|||
link-libc = $(common-objpfx)libc.a $(otherlibs) $(gnulib) $(common-objpfx)libc.a $(gnulib) |
|||
+link-libc-tests = $(common-objpfx)libc.a $(otherlibs) $(gnulib-tests) $(common-objpfx)libc.a $(gnulib-tests)
|
|||
endif |
|||
endif |
|||
|
|||
@@ -513,8 +524,43 @@ endif
|
|||
|
|||
# The static libraries. |
|||
link-libc-static = -Wl,--start-group $(common-objpfx)libc.a $(static-gnulib) -Wl,--end-group |
|||
+link-libc-static-tests = -Wl,--start-group $(common-objpfx)libc.a $(static-gnulib-tests) -Wl,--end-group
|
|||
link-libc-bounded = $(common-objpfx)libc_b.a $(gnulib) $(common-objpfx)libc_b.a |
|||
|
|||
+# How to link against libgcc. Some libgcc functions, such as those
|
|||
+# for "long long" arithmetic or software floating point, can always be
|
|||
+# built without use of C library headers and do not have any global
|
|||
+# state so can safely be linked statically into any executable or
|
|||
+# shared library requiring them; these functions are in libgcc.a.
|
|||
+# Other functions, relating to exception handling, may require C
|
|||
+# library headers to build and it may not be safe to have more than
|
|||
+# one copy of them in a process; these functions are only in
|
|||
+# libgcc_s.so and libgcc_eh.a.
|
|||
+#
|
|||
+# To avoid circular dependencies when bootstrapping, it is desirable
|
|||
+# to avoid use of libgcc_s and libgcc_eh in building glibc. Where any
|
|||
+# glibc functionality (in particular, thread cancellation) requires
|
|||
+# exception handling, this is implemented through dlopen of libgcc_s
|
|||
+# to avoid unnecessary dependencies on libgcc_s by programs not using
|
|||
+# that functionality; executables built with glibc do not use
|
|||
+# exception handling other than through thread cancellation.
|
|||
+#
|
|||
+# Undefined references to functions from libgcc_eh or libgcc_s may
|
|||
+# arise for code built with -fexceptions. In the case of statically
|
|||
+# linked programs installed by glibc, unwinding will never actually
|
|||
+# occur at runtime and the use of elf/static-stubs.c to resolve these
|
|||
+# references is safe. In the case of statically linked test programs
|
|||
+# and test programs built with -fexceptions, unwinding may occur in
|
|||
+# some cases and it is preferable to link with libgcc_eh or libgcc_s
|
|||
+# so that the testing is as similar as possible to how programs will
|
|||
+# be built with the installed glibc.
|
|||
+#
|
|||
+# Some architectures have architecture-specific systems for exception
|
|||
+# handling that may involve undefined references to
|
|||
+# architecture-specific functions. On those architectures,
|
|||
+# gnulib-arch and static-gnulib-arch may be defined in sysdeps
|
|||
+# makefiles to use additional libraries for linking executables and
|
|||
+# shared libraries built by glibc.
|
|||
ifndef gnulib |
|||
ifneq ($(have-cc-with-libunwind),yes) |
|||
libunwind = |
|||
@@ -522,8 +568,12 @@ else
|
|||
libunwind = -lunwind |
|||
endif |
|||
libgcc_eh := -Wl,--as-needed -lgcc_s $(libunwind) -Wl,--no-as-needed |
|||
-gnulib := -lgcc $(libgcc_eh)
|
|||
-static-gnulib := -lgcc -lgcc_eh $(libunwind)
|
|||
+gnulib-arch =
|
|||
+gnulib = -lgcc $(gnulib-arch)
|
|||
+gnulib-tests := -lgcc $(libgcc_eh)
|
|||
+static-gnulib-arch =
|
|||
+static-gnulib = -lgcc $(static-gnulib-arch)
|
|||
+static-gnulib-tests := -lgcc -lgcc_eh $(libunwind)
|
|||
libc.so-gnulib := -lgcc |
|||
endif |
|||
+preinit = $(addprefix $(csu-objpfx),crti.o) |
|||
diff --git a/Rules b/Rules
|
|||
index 3c61a29..17d938e 100644
|
|||
--- a/Rules
|
|||
+++ b/Rules
|
|||
@@ -1,5 +1,4 @@
|
|||
-# Copyright (C) 1991-2000,2002,2003,2004,2005,2006,2011
|
|||
-# Free Software Foundation, Inc.
|
|||
+# Copyright (C) 1991-2012 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 |
|||
@@ -103,29 +102,46 @@ xtests: tests $(xtests:%=$(objpfx)%.out) $(xtests-bp.out)
|
|||
endif |
|||
|
|||
ifeq ($(build-programs),yes) |
|||
-binaries-all = $(others) $(sysdep-others) $(tests) $(xtests) $(test-srcs)
|
|||
-binaries-static = $(others-static) $(tests-static) $(xtests-static)
|
|||
+binaries-all-notests = $(others) $(sysdep-others)
|
|||
+binaries-all-tests = $(tests) $(xtests) $(test-srcs)
|
|||
+binaries-all = $(binaries-all-notests) $(binaries-all-tests)
|
|||
+binaries-static-notests = $(others-static)
|
|||
+binaries-static-tests = $(tests-static) $(xtests-static)
|
|||
+binaries-static = $(binaries-static-notests) $(binaries-static-tests)
|
|||
ifeq (yesyes,$(have-fpie)$(build-shared)) |
|||
binaries-pie = $(others-pie) $(tests-pie) $(xtests-pie) |
|||
else |
|||
binaries-pie = |
|||
endif |
|||
else |
|||
-binaries-all = $(tests) $(xtests) $(test-srcs)
|
|||
+binaries-all-notests =
|
|||
+binaries-all-tests = $(tests) $(xtests) $(test-srcs)
|
|||
+binaries-all = $(binaries-all-tests)
|
|||
+binaries-static-notests =
|
|||
+binaries-static-tests =
|
|||
binaries-static = |
|||
binaries-pie = |
|||
endif |
|||
|
|||
-binaries-shared = $(filter-out $(binaries-pie) $(binaries-static), \
|
|||
- $(binaries-all))
|
|||
+binaries-shared-tests = $(filter-out $(binaries-pie) $(binaries-static), \
|
|||
+ $(binaries-all-tests))
|
|||
+binaries-shared-notests = $(filter-out $(binaries-pie) $(binaries-static), \
|
|||
+ $(binaries-all-notests))
|
|||
|
|||
-ifneq "$(strip $(binaries-shared))" ""
|
|||
-$(addprefix $(objpfx),$(binaries-shared)): %: %.o \
|
|||
+ifneq "$(strip $(binaries-shared-notests))" ""
|
|||
+$(addprefix $(objpfx),$(binaries-shared-notests)): %: %.o \
|
|||
$(sort $(filter $(common-objpfx)lib%,$(link-libc))) \ |
|||
$(addprefix $(csu-objpfx),start.o) $(+preinit) $(+postinit) |
|||
$(+link) |
|||
endif |
|||
|
|||
+ifneq "$(strip $(binaries-shared-tests))" ""
|
|||
+$(addprefix $(objpfx),$(binaries-shared-tests)): %: %.o \
|
|||
+ $(sort $(filter $(common-objpfx)lib%,$(link-libc))) \
|
|||
+ $(addprefix $(csu-objpfx),start.o) $(+preinit) $(+postinit)
|
|||
+ $(+link-tests)
|
|||
+endif
|
|||
+
|
|||
ifneq "$(strip $(binaries-pie))" "" |
|||
$(addprefix $(objpfx),$(binaries-pie)): %: %.o \ |
|||
$(sort $(filter $(common-objpfx)lib%,$(link-libc))) \ |
|||
@@ -133,13 +149,20 @@ $(addprefix $(objpfx),$(binaries-pie)): %: %.o \
|
|||
$(+link-pie) |
|||
endif |
|||
|
|||
-ifneq "$(strip $(binaries-static))" ""
|
|||
-$(addprefix $(objpfx),$(binaries-static)): %: %.o \
|
|||
+ifneq "$(strip $(binaries-static-notests))" ""
|
|||
+$(addprefix $(objpfx),$(binaries-static-notests)): %: %.o \
|
|||
$(sort $(filter $(common-objpfx)lib%,$(link-libc-static))) \ |
|||
$(addprefix $(csu-objpfx),start.o) $(+preinit) $(+postinit) |
|||
$(+link-static) |
|||
endif |
|||
|
|||
+ifneq "$(strip $(binaries-static-tests))" ""
|
|||
+$(addprefix $(objpfx),$(binaries-static-tests)): %: %.o \
|
|||
+ $(sort $(filter $(common-objpfx)lib%,$(link-libc-static-tests))) \
|
|||
+ $(addprefix $(csu-objpfx),start.o) $(+preinit) $(+postinit)
|
|||
+ $(+link-static-tests)
|
|||
+endif
|
|||
+
|
|||
ifeq ($(build-bounded),yes) |
|||
binaries-bounded = $(addsuffix -bp,$(tests) $(xtests) $(test-srcs)) |
|||
$(addprefix $(objpfx),$(binaries-bounded)): %-bp: %.ob \ |
|||
diff --git a/elf/Makefile b/elf/Makefile
|
|||
index 0c26ce5..9054199 100644
|
|||
--- a/elf/Makefile
|
|||
+++ b/elf/Makefile
|
|||
@@ -71,6 +71,8 @@ others = sprof sln pldd
|
|||
install-bin = sprof pldd |
|||
others-static = sln |
|||
install-rootsbin = sln |
|||
+sln-modules := static-stubs
|
|||
+extra-objs += $(sln-modules:=.o)
|
|||
|
|||
ifeq (yes,$(use-ldconfig)) |
|||
ifeq (yes,$(build-shared)) |
|||
@@ -78,7 +80,7 @@ others-static += ldconfig
|
|||
others += ldconfig |
|||
install-rootsbin += ldconfig |
|||
|
|||
-ldconfig-modules := cache readlib xmalloc xstrdup chroot_canon
|
|||
+ldconfig-modules := cache readlib xmalloc xstrdup chroot_canon static-stubs
|
|||
extra-objs += $(ldconfig-modules:=.o) |
|||
endif |
|||
endif |
|||
@@ -411,6 +413,8 @@ $(objpfx)ldd: ldd.bash.in $(common-objpfx)soversions.mk \
|
|||
|
|||
$(objpfx)sprof: $(libdl) |
|||
|
|||
+$(objpfx)sln: $(sln-modules:%=$(objpfx)%.o)
|
|||
+
|
|||
$(objpfx)ldconfig: $(ldconfig-modules:%=$(objpfx)%.o) |
|||
|
|||
$(objpfx)pldd: $(pldd-modules:%=$(objpfx)%.o) |
|||
diff --git a/elf/static-stubs.c b/elf/static-stubs.c
|
|||
new file mode 100644 |
|||
index 0000000..6c5eebc
|
|||
--- /dev/null
|
|||
+++ b/elf/static-stubs.c
|
|||
@@ -0,0 +1,46 @@
|
|||
+/* Stub implementations of functions to link into statically linked
|
|||
+ programs without needing libgcc_eh.
|
|||
+ Copyright (C) 2012 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
|
|||
+ <http://www.gnu.org/licenses/>. */
|
|||
+
|
|||
+/* Avoid backtrace (and so _Unwind_Backtrace) dependencies from
|
|||
+ sysdeps/unix/sysv/linux/libc_fatal.c. */
|
|||
+#include <sysdeps/posix/libc_fatal.c>
|
|||
+
|
|||
+#include <stdlib.h>
|
|||
+#include <unwind.h>
|
|||
+
|
|||
+/* These programs do not use thread cancellation, so _Unwind_Resume
|
|||
+ and the personality routine are never actually called. */
|
|||
+
|
|||
+void
|
|||
+_Unwind_Resume (struct _Unwind_Exception *exc __attribute__ ((unused)))
|
|||
+{
|
|||
+ abort ();
|
|||
+}
|
|||
+
|
|||
+_Unwind_Reason_Code
|
|||
+__gcc_personality_v0 (int version __attribute__ ((unused)),
|
|||
+ _Unwind_Action actions __attribute__ ((unused)),
|
|||
+ _Unwind_Exception_Class exception_class
|
|||
+ __attribute__ ((unused)),
|
|||
+ struct _Unwind_Exception *ue_header
|
|||
+ __attribute__ ((unused)),
|
|||
+ struct _Unwind_Context *context __attribute__ ((unused)))
|
|||
+{
|
|||
+ abort ();
|
|||
+}
|
|||
diff --git a/ports/ChangeLog.arm b/ports/ChangeLog.arm
|
|||
index c411e1c..71e8b1b 100644
|
|||
--- a/ports/ChangeLog.arm
|
|||
+++ b/ports/ChangeLog.arm
|
|||
@@ -1,3 +1,10 @@
|
|||
+2012-07-03 Joseph Myers <joseph@codesourcery.com>
|
|||
+
|
|||
+ * sysdeps/arm/Makefile (gnulib-arch): New variable.
|
|||
+ (static-gnulib-arch): Likewise.
|
|||
+ [subdir = elf] ($(objpfx)libgcc-stubs.a): New rule.
|
|||
+ [subdir = elf] (lib-noranlib): Depend on $(objpfx)libgcc-stubs.a.
|
|||
+
|
|||
2012-06-12 Joseph Myers <joseph@codesourcery.com> |
|||
|
|||
* sysdeps/unix/sysv/linux/arm/setcontext.S (__startcontext): Use |
|||
diff --git a/ports/sysdeps/arm/Makefile b/ports/sysdeps/arm/Makefile
|
|||
index 5fd5136..3bdb6b3 100644
|
|||
--- a/ports/sysdeps/arm/Makefile
|
|||
+++ b/ports/sysdeps/arm/Makefile
|
|||
@@ -1,8 +1,16 @@
|
|||
+gnulib-arch = $(elfobjdir)/libgcc-stubs.a
|
|||
+static-gnulib-arch = $(elfobjdir)/libgcc-stubs.a
|
|||
+
|
|||
ifeq ($(subdir),elf) |
|||
sysdep-dl-routines += tlsdesc dl-tlsdesc |
|||
sysdep_routines += aeabi_unwind_cpp_pr1 find_exidx tlsdesc dl-tlsdesc |
|||
sysdep-rtld-routines += aeabi_unwind_cpp_pr1 tlsdesc dl-tlsdesc |
|||
shared-only-routines += aeabi_unwind_cpp_pr1 |
|||
+
|
|||
+$(objpfx)libgcc-stubs.a: $(objpfx)aeabi_unwind_cpp_pr1.os
|
|||
+ $(build-extra-lib)
|
|||
+
|
|||
+lib-noranlib: $(objpfx)libgcc-stubs.a
|
|||
endif |
|||
|
|||
ifeq ($(subdir),csu) |
|||
--
|
|||
1.7.3.4 |
|||
|
@ -1,40 +0,0 @@ |
|||
# --- SDE-COPYRIGHT-NOTE-BEGIN --- |
|||
# This copyright note is auto-generated by ./scripts/Create-CopyPatch. |
|||
# |
|||
# Filename: package/.../glibc/make-install-lib-all.patch |
|||
# Copyright (C) 2004 - 2006 The T2 SDE Project |
|||
# |
|||
# More information can be found in the files COPYING and README. |
|||
# |
|||
# This patch file is dual-licensed. It is available under the license the |
|||
# patched project is licensed under, as long as it is an OpenSource license |
|||
# as defined at http://www.opensource.org/ (e.g. BSD, X11) or under the terms |
|||
# of the GNU General Public License as published by the Free Software |
|||
# Foundation; either version 2 of the License, or (at your option) any later |
|||
# version. |
|||
# --- SDE-COPYRIGHT-NOTE-END --- |
|||
diff -Naur glibc-2.3.4.orig/Makerules glibc-2.3.4/Makerules
|
|||
--- glibc-2.3.4.orig/Makerules 2004-12-15 20:52:39.000000000 +0200
|
|||
+++ glibc-2.3.4/Makerules 2005-02-19 15:16:31.415125176 +0200
|
|||
@@ -844,6 +844,13 @@
|
|||
installed-libcs := $(foreach o,$(filter-out .os,$(object-suffixes-for-libc)),\ |
|||
$(inst_libdir)/$(patsubst %,$(libtype$o),\ |
|||
$(libprefix)$(libc-name))) |
|||
+
|
|||
+install-lib-all: $(inst_slibdir)/libc.so$(libc.so-version) \
|
|||
+ $(inst_slibdir)/libc-$(version).so \
|
|||
+ $(inst_libdir)/libc.so \
|
|||
+ $(inst_libdir)/libc.a \
|
|||
+ install-lib
|
|||
+
|
|||
install: $(installed-libcs) |
|||
$(installed-libcs): $(inst_libdir)/lib$(libprefix)%: lib $(+force) |
|||
$(make-target-directory) |
|||
@@ -867,6 +874,7 @@
|
|||
install-lib.so := $(filter %.so,$(install-lib:%_pic.a=%.so)) |
|||
install-lib := $(filter-out %.so %_pic.a,$(install-lib)) |
|||
|
|||
+
|
|||
ifeq (yes,$(build-shared)) |
|||
# Find which .so's have versions. |
|||
versioned := $(strip $(foreach so,$(install-lib.so),\ |
@ -1,41 +0,0 @@ |
|||
# --- SDE-COPYRIGHT-NOTE-BEGIN --- |
|||
# This copyright note is auto-generated by ./scripts/Create-CopyPatch. |
|||
# |
|||
# Filename: package/.../glibc/make_shlib_link.patch |
|||
# Copyright (C) 2004 - 2006 The T2 SDE Project |
|||
# Copyright (C) 1998 - 2003 Clifford Wolf |
|||
# |
|||
# More information can be found in the files COPYING and README. |
|||
# |
|||
# This patch file is dual-licensed. It is available under the license the |
|||
# patched project is licensed under, as long as it is an OpenSource license |
|||
# as defined at http://www.opensource.org/ (e.g. BSD, X11) or under the terms |
|||
# of the GNU General Public License as published by the Free Software |
|||
# Foundation; either version 2 of the License, or (at your option) any later |
|||
# version. |
|||
# --- SDE-COPYRIGHT-NOTE-END --- |
|||
|
|||
--- ./Makerules.orig 2002-10-12 11:52:02.000000000 +0200
|
|||
+++ ./Makerules 2002-10-12 11:55:26.000000000 +0200
|
|||
@@ -820,8 +820,7 @@
|
|||
endif |
|||
ifndef make-shlib-link |
|||
define make-shlib-link |
|||
-rm -f $@
|
|||
-$(LN_S) $(<F) $@
|
|||
+ln -sf $(<F) $@
|
|||
endef |
|||
endif |
|||
|
|||
--- ./Makefile.orig 2002-10-13 16:13:47.000000000 +0200
|
|||
+++ ./Makefile 2002-10-13 16:16:26.000000000 +0200
|
|||
@@ -110,7 +110,8 @@
|
|||
install: install-symbolic-link |
|||
.PHONY: install-symbolic-link |
|||
install-symbolic-link: subdir_install |
|||
- $(symbolic-link-prog) $(symbolic-link-list)
|
|||
+ while read from to ; do \
|
|||
+ ln -sf $$from $$to ; done < $(symbolic-link-list)
|
|||
rm -f $(symbolic-link-list) |
|||
|
|||
install: |
@ -1,27 +0,0 @@ |
|||
# --- SDE-COPYRIGHT-NOTE-BEGIN --- |
|||
# This copyright note is auto-generated by ./scripts/Create-CopyPatch. |
|||
# |
|||
# Filename: package/.../glibc/new_make.patch |
|||
# Copyright (C) 2015 The OpenSDE Project |
|||
# |
|||
# More information can be found in the files COPYING and README. |
|||
# |
|||
# This patch file is dual-licensed. It is available under the license the |
|||
# patched project is licensed under, as long as it is an OpenSource license |
|||
# as defined at http://www.opensource.org/ (e.g. BSD, X11) or under the terms |
|||
# of the GNU General Public License as published by the Free Software |
|||
# Foundation; either version 2 of the License, or (at your option) any later |
|||
# version. |
|||
# --- SDE-COPYRIGHT-NOTE-END --- |
|||
|
|||
--- ./configure.orig 2012-06-30 19:12:34.000000000 +0000
|
|||
+++ ./configure 2015-09-23 09:18:27.487788072 +0000
|
|||
@@ -4845,7 +4845,7 @@
|
|||
ac_prog_version=`$MAKE --version 2>&1 | sed -n 's/^.*GNU Make[^0-9]*\([0-9][0-9.]*\).*$/\1/p'` |
|||
case $ac_prog_version in |
|||
'') ac_prog_version="v. ?.??, bad"; ac_verc_fail=yes;; |
|||
- 3.79* | 3.[89]*)
|
|||
+ 3.79* | 3.[89]* | 4.*)
|
|||
ac_prog_version="$ac_prog_version, ok"; ac_verc_fail=no;; |
|||
*) ac_prog_version="$ac_prog_version, bad"; ac_verc_fail=yes;; |
|||
|
@ -1,34 +0,0 @@ |
|||
# --- SDE-COPYRIGHT-NOTE-BEGIN --- |
|||
# This copyright note is auto-generated by ./scripts/Create-CopyPatch. |
|||
# |
|||
# Filename: package/.../glibc/no-binutils-powerpc.patch.cross.disabled |
|||
# Copyright (C) 2010 - 2012 The OpenSDE Project |
|||
# Copyright (C) 2004 - 2006 The T2 SDE Project |
|||
# |
|||
# More information can be found in the files COPYING and README. |
|||
# |
|||
# This patch file is dual-licensed. It is available under the license the |
|||
# patched project is licensed under, as long as it is an OpenSource license |
|||
# as defined at http://www.opensource.org/ (e.g. BSD, X11) or under the terms |
|||
# of the GNU General Public License as published by the Free Software |
|||
# Foundation; either version 2 of the License, or (at your option) any later |
|||
# version. |
|||
# --- SDE-COPYRIGHT-NOTE-END --- |
|||
|
|||
Of course we have no powerpc as for the initial glibc header |
|||
extraction ... |
|||
|
|||
- Rene Rebe <rene@exactcode.de> |
|||
|
|||
diff -ruN glibc-2.11.2-orig/sysdeps/powerpc/configure glibc-2.11.2/sysdeps/powerpc/configure |
|||
--- glibc-2.11.2-orig/sysdeps/powerpc/configure 2010-05-19 22:38:20.000000000 +0200 |
|||
+++ glibc-2.11.2/sysdeps/powerpc/configure 2010-09-01 20:54:09.720325032 +0200 |
|||
@@ -25,7 +25,7 @@ |
|||
fi |
|||
{ $as_echo "$as_me:$LINENO: result: $libc_cv_ppc_machine" >&5 |
|||
$as_echo "$libc_cv_ppc_machine" >&6; } |
|||
-if test $libc_cv_ppc_machine != yes; then |
|||
+if false; then |
|||
{ { $as_echo "$as_me:$LINENO: error: |
|||
*** A binutils version which can handle |
|||
*** .machine \"altivec\" |
@ -1,40 +0,0 @@ |
|||
# --- SDE-COPYRIGHT-NOTE-BEGIN --- |
|||
# This copyright note is auto-generated by ./scripts/Create-CopyPatch. |
|||
# |
|||
# Filename: package/.../glibc/ugly-no-nptl.patch |
|||
# Copyright (C) 2004 - 2006 The T2 SDE Project |
|||
# |
|||
# More information can be found in the files COPYING and README. |
|||
# |
|||
# This patch file is dual-licensed. It is available under the license the |
|||
# patched project is licensed under, as long as it is an OpenSource license |
|||
# as defined at http://www.opensource.org/ (e.g. BSD, X11) or under the terms |
|||
# of the GNU General Public License as published by the Free Software |
|||
# Foundation; either version 2 of the License, or (at your option) any later |
|||
# version. |
|||
# --- SDE-COPYRIGHT-NOTE-END --- |
|||
--- glibc-20050919/nscd/nscd.h.vanilla 2005-11-05 14:47:31.000000000 +0100
|
|||
+++ glibc-20050919/nscd/nscd.h 2005-11-05 14:47:17.000000000 +0100
|
|||
@@ -25,6 +25,7 @@
|
|||
#include <stdbool.h> |
|||
#include <time.h> |
|||
#include <sys/uio.h> |
|||
+#include <sys/socket.h>
|
|||
|
|||
/* The declarations for the request and response types are in the file |
|||
"nscd-client.h", which should contain everything needed by client |
|||
--- glibc-20050919/malloc/memusage.c.vanilla 2005-11-05 13:54:54.000000000 +0100
|
|||
+++ glibc-20050919/malloc/memusage.c 2005-11-05 13:56:00.000000000 +0100
|
|||
@@ -83,7 +83,12 @@
|
|||
static memusage_cntr_t decreasing_mremap; |
|||
static memusage_size_t current_heap; |
|||
static memusage_size_t peak_use[3]; |
|||
+
|
|||
+#ifdef HAVE___THREAD
|
|||
static __thread uintptr_t start_sp; |
|||
+#else
|
|||
+static uintptr_t start_sp;
|
|||
+#endif
|
|||
|
|||
/* A few macros to make the source more readable. */ |
|||
#define peak_heap peak_use[0] |