Accepting request 114966 from Base:System
Fix building for PowerPC and GCC 4.7 (forwarded request 114965 from a_jaeger) OBS-URL: https://build.opensuse.org/request/show/114966 OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/glibc?expand=0&rev=106
This commit is contained in:
commit
f558e5fc0d
@ -1,3 +1,9 @@
|
||||
For backward compatibility with armhf binaries built with the
|
||||
old linker SONAME, we need to fake out the linker to believe
|
||||
the new is the old, until such a point as everything is rebuilt.
|
||||
|
||||
Patch for elf/dl-load.c taken from Debian.
|
||||
|
||||
diff --git a/sysdeps/arm/shlib-versions b/sysdeps/arm/shlib-versions
|
||||
index 491dd0a..5464959 100644
|
||||
--- a/glibc-ports-2.15/sysdeps/arm/shlib-versions
|
||||
@ -8,3 +14,21 @@ index 491dd0a..5464959 100644
|
||||
-arm.*-.*-linux-gnueabi.* ld=ld-linux.so.3
|
||||
+arm.*-.*-linux-gnueabi.* ld=ld-linux-armhf.so.3
|
||||
arm.*-.*-linux.* ld=ld-linux.so.2
|
||||
|
||||
--- glibc-2.15/elf/dl-load.c.~1~ 2011-12-30 23:13:56.000000000 +0100
|
||||
+++ glibc-2.15/elf/dl-load.c 2012-04-18 15:05:33.203485389 +0200
|
||||
@@ -2082,10 +2082,13 @@
|
||||
soname = ((const char *) D_PTR (l, l_info[DT_STRTAB])
|
||||
+ l->l_info[DT_SONAME]->d_un.d_val);
|
||||
if (strcmp (name, soname) != 0)
|
||||
+#ifdef __arm__
|
||||
+ if (strcmp(name, "ld-linux.so.3") || strcmp(soname, "ld-linux-armhf.so.3"))
|
||||
+#endif
|
||||
continue;
|
||||
|
||||
/* We have a match on a new name -- cache it. */
|
||||
- add_name_to_object (l, soname);
|
||||
+ add_name_to_object (l, name);
|
||||
l->l_soname_added = 1;
|
||||
}
|
||||
|
||||
|
@ -1,9 +1,9 @@
|
||||
References: bnc#361697
|
||||
|
||||
Index: sysdeps/posix/getaddrinfo.c
|
||||
Index: glibc-2.15/sysdeps/posix/getaddrinfo.c
|
||||
===================================================================
|
||||
--- sysdeps/posix/getaddrinfo.c.orig
|
||||
+++ sysdeps/posix/getaddrinfo.c
|
||||
--- glibc-2.15.orig/sysdeps/posix/getaddrinfo.c
|
||||
+++ glibc-2.15/sysdeps/posix/getaddrinfo.c
|
||||
@@ -269,7 +269,7 @@ extern service_user *__nss_hosts_databas
|
||||
static int
|
||||
gaih_inet (const char *name, const struct gaih_service *service,
|
||||
|
@ -1,30 +0,0 @@
|
||||
Index: glibc-2.14/elf/soinit.c
|
||||
===================================================================
|
||||
--- glibc-2.14.orig/elf/soinit.c
|
||||
+++ glibc-2.14/elf/soinit.c
|
||||
@@ -26,7 +26,11 @@ void
|
||||
__libc_global_ctors (void)
|
||||
{
|
||||
/* Call constructor functions. */
|
||||
- run_hooks (__CTOR_LIST__);
|
||||
+ void (**tem)();
|
||||
+ asm ("" : "=r" (tem) : "0" (__CTOR_LIST__));
|
||||
+ /* Call destructor functions. */
|
||||
+
|
||||
+ run_hooks (tem);
|
||||
}
|
||||
|
||||
|
||||
@@ -36,7 +40,11 @@ void
|
||||
__libc_fini (void)
|
||||
{
|
||||
/* Call destructor functions. */
|
||||
- run_hooks (__DTOR_LIST__);
|
||||
+ void (**tem)();
|
||||
+ asm ("" : "=r" (tem) : "0" (__DTOR_LIST__));
|
||||
+ /* Call destructor functions. */
|
||||
+
|
||||
+ run_hooks (tem);
|
||||
}
|
||||
|
||||
void (*_fini_ptr) (void) __attribute__ ((section (".fini_array")))
|
@ -11,10 +11,10 @@ Date: Fri Feb 10 21:05:54 2012 +0100
|
||||
* sysdeps/i386/fpu/feupdateenv.c (__feupdateenv) Invoke __feraiseexcept
|
||||
instead of feraiseexcept.
|
||||
|
||||
diff --git a/sysdeps/i386/fpu/feupdateenv.c b/sysdeps/i386/fpu/feupdateenv.c
|
||||
index 70f9ee2..6e2ce35 100644
|
||||
--- a/sysdeps/i386/fpu/feupdateenv.c
|
||||
+++ b/sysdeps/i386/fpu/feupdateenv.c
|
||||
Index: glibc-2.15/sysdeps/i386/fpu/feupdateenv.c
|
||||
===================================================================
|
||||
--- glibc-2.15.orig/sysdeps/i386/fpu/feupdateenv.c
|
||||
+++ glibc-2.15/sysdeps/i386/fpu/feupdateenv.c
|
||||
@@ -1,5 +1,5 @@
|
||||
/* Install given floating-point environment and raise exceptions.
|
||||
- Copyright (C) 1997,99,2000,01,07,2010 Free Software Foundation, Inc.
|
||||
@ -22,7 +22,7 @@ index 70f9ee2..6e2ce35 100644
|
||||
This file is part of the GNU C Library.
|
||||
Contributed by Ulrich Drepper <drepper@cygnus.com>, 1997.
|
||||
|
||||
@@ -44,7 +44,7 @@ __feupdateenv (const fenv_t *envp)
|
||||
@@ -45,7 +45,7 @@ __feupdateenv (const fenv_t *envp)
|
||||
/* Raise the saved exception. Incidently for us the implementation
|
||||
defined format of the values in objects of type fexcept_t is the
|
||||
same as the ones specified using the FE_* constants. */
|
||||
|
795
glibc-2.16-powerpc-initfini.patch
Normal file
795
glibc-2.16-powerpc-initfini.patch
Normal file
@ -0,0 +1,795 @@
|
||||
commit 3add8e1353d62d77fdd9b4ca363cdfe7006b0efb
|
||||
Author: Joseph Myers <joseph@codesourcery.com>
|
||||
Date: Wed Feb 8 01:45:26 2012 +0000
|
||||
|
||||
Support crti.S and crtn.S provided directly by architectures.
|
||||
|
||||
2012-02-08 Joseph Myers <joseph@codesourcery.com>
|
||||
|
||||
Support crti.S and crtn.S provided directly by architectures.
|
||||
* csu/Makefile [crti.S in sysdirs] (generated): Do not append.
|
||||
[crti.S in sysdirs] (omit-deps): Likewise.
|
||||
[crti.S in sysdirs] (CFLAGS-initfini.s): Do not define variable.
|
||||
[crti.S in sysdirs] ($(crtstuff:%=$(objpfx)%.o)): Disable rule.
|
||||
[crti.S in sysdirs] ($(objpfx)initfini.s): Likewise.
|
||||
[crti.S in sysdirs] ($(objpfx)crti.S): Likewise.
|
||||
[crti.S in sysdirs] ($(objpfx)crtn.S): Likewise.
|
||||
[crti.S in sysdirs] ($(patsubst %,$(objpfx)crt%.o,i n)): Likewise.
|
||||
[crti.S in sysdirs] ($(objpfx)defs.h): Likewise.
|
||||
[crti.S in sysdirs] (initfini.c): Remove vpath directive.
|
||||
* sysdeps/i386/crti.S, sysdeps/i386/crtn.S: New files, based on
|
||||
compiler output for sysdeps/generic/initfini.c.
|
||||
* sysdeps/i386/elf/Makefile: Remove file.
|
||||
* sysdeps/i386/Makefile (CFLAGS-initfini.s): Remove variable.
|
||||
|
||||
Index: glibc-2.15/csu/Makefile
|
||||
===================================================================
|
||||
--- glibc-2.15.orig/csu/Makefile
|
||||
+++ glibc-2.15/csu/Makefile
|
||||
@@ -75,10 +75,6 @@ before-compile += $(objpfx)abi-tag.h
|
||||
generated += abi-tag.h
|
||||
endif
|
||||
|
||||
-ifeq ($(have-initfini),yes)
|
||||
-
|
||||
-CPPFLAGS += -DHAVE_INITFINI
|
||||
-
|
||||
# These are the special initializer/finalizer files. They are always the
|
||||
# first and last file in the link. crti.o ... crtn.o define the global
|
||||
# "functions" _init and _fini to run the .init and .fini sections.
|
||||
@@ -86,6 +82,13 @@ crtstuff = crti crtn
|
||||
|
||||
install-lib += $(crtstuff:=.o)
|
||||
extra-objs += $(crtstuff:=.o)
|
||||
+
|
||||
+# Conditionals on the existence of a sysdeps version of crti.S are
|
||||
+# temporary until all targets either have such a file or have been
|
||||
+# removed, after which the old approach of postprocessing compiler
|
||||
+# output will be removed.
|
||||
+ifeq (,$(wildcard $(sysdirs:%=%/crti.S)))
|
||||
+
|
||||
generated += $(crtstuff:=.S) initfini.s defs.h
|
||||
omit-deps += $(crtstuff)
|
||||
|
||||
Index: glibc-2.15/nptl/Makefile
|
||||
===================================================================
|
||||
--- glibc-2.15.orig/nptl/Makefile
|
||||
+++ glibc-2.15/nptl/Makefile
|
||||
@@ -335,15 +335,22 @@ ifneq (,$(patsubst .,,$(multidir)))
|
||||
generated-dirs := $(firstword $(subst /, , $(multidir)))
|
||||
crti-objs += $(multidir)/crti.o
|
||||
crtn-objs += $(multidir)/crtn.o
|
||||
+# Conditionals on the existence of a sysdeps version of crti.S are
|
||||
+# temporary until all targets either have such a file or have been
|
||||
+# removed, after which the old approach of postprocessing compiler
|
||||
+# output will be removed.
|
||||
+ifeq (,$(wildcard $(sysdirs:%=%/crti.S)))
|
||||
omit-deps += $(multidir)/crti $(multidir)/crtn
|
||||
+endif
|
||||
$(objpfx)$(multidir):
|
||||
mkdir -p $@
|
||||
endif
|
||||
extra-objs += $(crti-objs) $(crtn-objs)
|
||||
+ifeq (,$(wildcard $(sysdirs:%=%/crti.S)))
|
||||
omit-deps += crti crtn
|
||||
-
|
||||
CFLAGS-pt-initfini.s = -g0 -fPIC -fno-inline-functions $(fno-unit-at-a-time) -fno-unwind-tables -fno-asynchronous-unwind-tables
|
||||
endif
|
||||
+endif
|
||||
|
||||
CFLAGS-flockfile.c = -D_IO_MTSAFE_IO
|
||||
CFLAGS-ftrylockfile.c = -D_IO_MTSAFE_IO
|
||||
@@ -543,15 +550,24 @@ $(addprefix $(objpfx),$(tests) $(test-sr
|
||||
endif
|
||||
|
||||
ifeq ($(build-shared),yes)
|
||||
+ifeq (,$(wildcard $(sysdirs:%=%/crti.S)))
|
||||
vpath pt-initfini.c $(sysdirs)
|
||||
|
||||
$(objpfx)pt-initfini.s: pt-initfini.c
|
||||
$(compile.c) -S $(CFLAGS-pt-initfini.s) -finhibit-size-directive \
|
||||
$(patsubst -f%,-fno-%,$(exceptions)) -o $@
|
||||
+endif
|
||||
|
||||
$(objpfx)tst-cleanup0.out: /dev/null $(objpfx)tst-cleanup0
|
||||
$(make-test-out) 2>&1 | cmp - tst-cleanup0.expect > $@
|
||||
|
||||
+ifneq (,$(wildcard $(sysdirs:%=%/crti.S)))
|
||||
+
|
||||
+$(objpfx)crti.o: $(objpfx)pt-crti.o
|
||||
+ ln -f $< $@
|
||||
+
|
||||
+else
|
||||
+
|
||||
# We only have one kind of startup code files. Static binaries and
|
||||
# shared libraries are build using the PIC version.
|
||||
$(objpfx)crti.S: $(objpfx)pt-initfini.s
|
||||
@@ -573,6 +589,8 @@ $(objpfx)crti.o: $(objpfx)crti.S $(objpf
|
||||
$(objpfx)crtn.o: $(objpfx)crtn.S $(objpfx)defs.h
|
||||
$(compile.S) -g0 $(ASFLAGS-.os) -o $@
|
||||
|
||||
+endif
|
||||
+
|
||||
ifneq ($(multidir),.)
|
||||
$(objpfx)$(multidir)/crti.o: $(objpfx)crti.o $(objpfx)$(multidir)/
|
||||
ln -f $< $@
|
||||
Index: glibc-2.15/nptl/pt-crti.S
|
||||
===================================================================
|
||||
--- /dev/null
|
||||
+++ glibc-2.15/nptl/pt-crti.S
|
||||
@@ -0,0 +1,44 @@
|
||||
+/* Special .init and .fini section support for libpthread.
|
||||
+ 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.
|
||||
+
|
||||
+ In addition to the permissions in the GNU Lesser General Public
|
||||
+ License, the Free Software Foundation gives you unlimited
|
||||
+ permission to link the compiled version of this file with other
|
||||
+ programs, and to distribute those programs without any restriction
|
||||
+ coming from the use of this file. (The GNU Lesser General Public
|
||||
+ License restrictions do apply in other respects; for example, they
|
||||
+ cover modification of the file, and distribution when not linked
|
||||
+ into another program.)
|
||||
+
|
||||
+ Note that people who make modified versions of this file are not
|
||||
+ obligated to grant this special exception for their modified
|
||||
+ versions; it is their choice whether to do so. The GNU Lesser
|
||||
+ General Public License gives permission to release a modified
|
||||
+ version without this exception; this exception also makes it
|
||||
+ possible to release a modified version which carries forward this
|
||||
+ exception.
|
||||
+
|
||||
+ 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. */
|
||||
+
|
||||
+/* Arrange for __pthread_initialize_minimal_internal to be called at
|
||||
+ libpthread startup, instead of conditionally calling
|
||||
+ __gmon_start__. */
|
||||
+
|
||||
+#define PREINIT_FUNCTION __pthread_initialize_minimal_internal
|
||||
+#define PREINIT_FUNCTION_WEAK 0
|
||||
+
|
||||
+#include <crti.S>
|
||||
Index: glibc-2.15/sysdeps/i386/Makefile
|
||||
===================================================================
|
||||
--- glibc-2.15.orig/sysdeps/i386/Makefile
|
||||
+++ glibc-2.15/sysdeps/i386/Makefile
|
||||
@@ -5,12 +5,6 @@ asm-CPPFLAGS += -DGAS_SYNTAX
|
||||
# The i386 `long double' is a distinct type we support.
|
||||
long-double-fcts = yes
|
||||
|
||||
-ifeq ($(subdir),csu)
|
||||
-# On i686 we must avoid generating the trampoline functions generated
|
||||
-# to get the GOT pointer.
|
||||
-CFLAGS-initfini.s += -march=i386 -mtune=i386
|
||||
-endif
|
||||
-
|
||||
ifeq ($(subdir),gmon)
|
||||
sysdep_routines += i386-mcount
|
||||
endif
|
||||
Index: glibc-2.15/sysdeps/i386/crti.S
|
||||
===================================================================
|
||||
--- /dev/null
|
||||
+++ glibc-2.15/sysdeps/i386/crti.S
|
||||
@@ -0,0 +1,85 @@
|
||||
+/* Special .init and .fini section support for x86.
|
||||
+ Copyright (C) 1995-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.
|
||||
+
|
||||
+ In addition to the permissions in the GNU Lesser General Public
|
||||
+ License, the Free Software Foundation gives you unlimited
|
||||
+ permission to link the compiled version of this file with other
|
||||
+ programs, and to distribute those programs without any restriction
|
||||
+ coming from the use of this file. (The GNU Lesser General Public
|
||||
+ License restrictions do apply in other respects; for example, they
|
||||
+ cover modification of the file, and distribution when not linked
|
||||
+ into another program.)
|
||||
+
|
||||
+ Note that people who make modified versions of this file are not
|
||||
+ obligated to grant this special exception for their modified
|
||||
+ versions; it is their choice whether to do so. The GNU Lesser
|
||||
+ General Public License gives permission to release a modified
|
||||
+ version without this exception; this exception also makes it
|
||||
+ possible to release a modified version which carries forward this
|
||||
+ exception.
|
||||
+
|
||||
+ 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. */
|
||||
+
|
||||
+/* crti.S puts a function prologue at the beginning of the .init and
|
||||
+ .fini sections and defines global symbols for those addresses, so
|
||||
+ they can be called as functions. The symbols _init and _fini are
|
||||
+ magic and cause the linker to emit DT_INIT and DT_FINI. */
|
||||
+
|
||||
+#include <libc-symbols.h>
|
||||
+#include <sysdep.h>
|
||||
+
|
||||
+#ifndef PREINIT_FUNCTION
|
||||
+# define PREINIT_FUNCTION __gmon_start__
|
||||
+#endif
|
||||
+
|
||||
+#ifndef PREINIT_FUNCTION_WEAK
|
||||
+# define PREINIT_FUNCTION_WEAK 1
|
||||
+#endif
|
||||
+
|
||||
+#if PREINIT_FUNCTION_WEAK
|
||||
+ weak_extern (PREINIT_FUNCTION)
|
||||
+#else
|
||||
+ .hidden PREINIT_FUNCTION
|
||||
+#endif
|
||||
+
|
||||
+ .section .init,"ax",@progbits
|
||||
+ .p2align 2
|
||||
+ .globl _init
|
||||
+ .type _init, @function
|
||||
+_init:
|
||||
+ pushl %ebx
|
||||
+ /* Maintain 16-byte stack alignment for called functions. */
|
||||
+ subl $8, %esp
|
||||
+ LOAD_PIC_REG (bx)
|
||||
+#if PREINIT_FUNCTION_WEAK
|
||||
+ movl PREINIT_FUNCTION@GOT(%ebx), %eax
|
||||
+ testl %eax, %eax
|
||||
+ je .Lno_weak_fn
|
||||
+ call PREINIT_FUNCTION@PLT
|
||||
+.Lno_weak_fn:
|
||||
+#else
|
||||
+ call PREINIT_FUNCTION
|
||||
+#endif
|
||||
+
|
||||
+ .section .fini,"ax",@progbits
|
||||
+ .p2align 2
|
||||
+ .globl _fini
|
||||
+ .type _fini, @function
|
||||
+_fini:
|
||||
+ pushl %ebx
|
||||
+ subl $8, %esp
|
||||
+ LOAD_PIC_REG (bx)
|
||||
Index: glibc-2.15/sysdeps/i386/crtn.S
|
||||
===================================================================
|
||||
--- /dev/null
|
||||
+++ glibc-2.15/sysdeps/i386/crtn.S
|
||||
@@ -0,0 +1,48 @@
|
||||
+/* Special .init and .fini section support for x86.
|
||||
+ Copyright (C) 1995-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.
|
||||
+
|
||||
+ In addition to the permissions in the GNU Lesser General Public
|
||||
+ License, the Free Software Foundation gives you unlimited
|
||||
+ permission to link the compiled version of this file with other
|
||||
+ programs, and to distribute those programs without any restriction
|
||||
+ coming from the use of this file. (The GNU Lesser General Public
|
||||
+ License restrictions do apply in other respects; for example, they
|
||||
+ cover modification of the file, and distribution when not linked
|
||||
+ into another program.)
|
||||
+
|
||||
+ Note that people who make modified versions of this file are not
|
||||
+ obligated to grant this special exception for their modified
|
||||
+ versions; it is their choice whether to do so. The GNU Lesser
|
||||
+ General Public License gives permission to release a modified
|
||||
+ version without this exception; this exception also makes it
|
||||
+ possible to release a modified version which carries forward this
|
||||
+ exception.
|
||||
+
|
||||
+ 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. */
|
||||
+
|
||||
+/* crtn.S puts function epilogues in the .init and .fini sections
|
||||
+ corresponding to the prologues in crti.S. */
|
||||
+
|
||||
+ .section .init,"ax",@progbits
|
||||
+ addl $8, %esp
|
||||
+ popl %ebx
|
||||
+ ret
|
||||
+
|
||||
+ .section .fini,"ax",@progbits
|
||||
+ addl $8, %esp
|
||||
+ popl %ebx
|
||||
+ ret
|
||||
Index: glibc-2.15/sysdeps/i386/elf/Makefile
|
||||
===================================================================
|
||||
--- glibc-2.15.orig/sysdeps/i386/elf/Makefile
|
||||
+++ /dev/null
|
||||
@@ -1,4 +0,0 @@
|
||||
-ifeq ($(subdir),csu)
|
||||
-# Turn off -fasynchronous-unwind-tables
|
||||
-CFLAGS-initfini.s += -fno-asynchronous-unwind-tables
|
||||
-endif
|
||||
Index: glibc-2.15/Makeconfig
|
||||
===================================================================
|
||||
--- glibc-2.15.orig/Makeconfig
|
||||
+++ glibc-2.15/Makeconfig
|
||||
@@ -394,11 +394,6 @@ ifndef asm-CPPFLAGS
|
||||
asm-CPPFLAGS =
|
||||
endif
|
||||
|
||||
-# ELF always supports init/fini sections
|
||||
-ifeq ($(elf),yes)
|
||||
-have-initfini = yes
|
||||
-endif
|
||||
-
|
||||
ifeq ($(have-as-needed),yes)
|
||||
as-needed := -Wl,--as-needed
|
||||
no-as-needed := -Wl,--no-as-needed
|
||||
@@ -412,14 +407,8 @@ no-whole-archive = -Wl,--no-whole-archiv
|
||||
whole-archive = -Wl,--whole-archive
|
||||
|
||||
# Installed name of the startup code.
|
||||
-ifneq ($(have-initfini),yes)
|
||||
-# When not having init/fini, there is just one startfile, called crt0.o.
|
||||
-start-installed-name = crt0.o
|
||||
-else
|
||||
-# On systems having init/fini, crt0.o is called crt1.o, and there are
|
||||
-# some additional bizarre files.
|
||||
+# The ELF convention is that the startfile is called crt1.o
|
||||
start-installed-name = crt1.o
|
||||
-endif
|
||||
# On systems that do not need a special startfile for statically linked
|
||||
# binaries, simply set it to the normal name.
|
||||
ifndef static-start-installed-name
|
||||
Index: glibc-2.15/config.h.in
|
||||
===================================================================
|
||||
--- glibc-2.15.orig/config.h.in
|
||||
+++ glibc-2.15/config.h.in
|
||||
@@ -42,9 +42,6 @@
|
||||
assembler instructions per line. Default is `;' */
|
||||
#undef ASM_LINE_SEP
|
||||
|
||||
-/* Define if not using ELF, but `.init' and `.fini' sections are available. */
|
||||
-#undef HAVE_INITFINI
|
||||
-
|
||||
/* Define if __attribute__((section("foo"))) puts quotes around foo. */
|
||||
#undef HAVE_SECTION_QUOTES
|
||||
|
||||
Index: glibc-2.15/config.make.in
|
||||
===================================================================
|
||||
--- glibc-2.15.orig/config.make.in
|
||||
+++ glibc-2.15/config.make.in
|
||||
@@ -48,11 +48,9 @@ all-warnings = @all_warnings@
|
||||
elf = @elf@
|
||||
have-z-combreloc = @libc_cv_z_combreloc@
|
||||
have-z-execstack = @libc_cv_z_execstack@
|
||||
-have-initfini = @libc_cv_have_initfini@
|
||||
have-Bgroup = @libc_cv_Bgroup@
|
||||
have-as-needed = @libc_cv_as_needed@
|
||||
libgcc_s_suffix = @libc_cv_libgcc_s_suffix@
|
||||
-need-nopic-initfini = @nopic_initfini@
|
||||
with-fp = @with_fp@
|
||||
old-glibc-headers = @old_glibc_headers@
|
||||
unwind-find-fde = @libc_cv_gcc_unwind_find_fde@
|
||||
Index: glibc-2.15/configure
|
||||
===================================================================
|
||||
--- glibc-2.15.orig/configure
|
||||
+++ glibc-2.15/configure
|
||||
@@ -610,7 +610,6 @@ RELEASE
|
||||
VERSION
|
||||
mach_interface_list
|
||||
DEFINES
|
||||
-nopic_initfini
|
||||
static_nss
|
||||
bounded
|
||||
omitfp
|
||||
@@ -7995,7 +7994,6 @@ $as_echo "$libc_cv_pic_default" >&6; }
|
||||
|
||||
|
||||
|
||||
-
|
||||
|
||||
|
||||
|
||||
Index: glibc-2.15/configure.in
|
||||
===================================================================
|
||||
--- glibc-2.15.orig/configure.in
|
||||
+++ glibc-2.15/configure.in
|
||||
@@ -2377,7 +2377,6 @@ AC_SUBST(profile)
|
||||
AC_SUBST(omitfp)
|
||||
AC_SUBST(bounded)
|
||||
AC_SUBST(static_nss)
|
||||
-AC_SUBST(nopic_initfini)
|
||||
|
||||
AC_SUBST(DEFINES)
|
||||
|
||||
Index: glibc-2.15/csu/gmon-start.c
|
||||
===================================================================
|
||||
--- glibc-2.15.orig/csu/gmon-start.c
|
||||
+++ glibc-2.15/csu/gmon-start.c
|
||||
@@ -1,5 +1,5 @@
|
||||
/* Code to enable profiling at program startup.
|
||||
- Copyright (C) 1995,1996,1997,2000,2001,2002 Free Software Foundation, Inc.
|
||||
+ Copyright (C) 1995,1996,1997,2000,2001,2002,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
|
||||
@@ -43,23 +43,14 @@ extern char etext[];
|
||||
# endif
|
||||
#endif
|
||||
|
||||
-#ifndef HAVE_INITFINI
|
||||
-/* This function gets called at startup by the normal constructor
|
||||
- mechanism. We link this file together with start.o to produce gcrt1.o,
|
||||
- so this constructor will be first in the list. */
|
||||
-
|
||||
-extern void __gmon_start__ (void) __attribute__ ((constructor));
|
||||
-#else
|
||||
-/* In ELF and COFF, we cannot use the normal constructor mechanism to call
|
||||
+/* We cannot use the normal constructor mechanism to call
|
||||
__gmon_start__ because gcrt1.o appears before crtbegin.o in the link.
|
||||
- Instead crti.o calls it specially (see initfini.c). */
|
||||
+ Instead crti.o calls it specially. */
|
||||
extern void __gmon_start__ (void);
|
||||
-#endif
|
||||
|
||||
void
|
||||
__gmon_start__ (void)
|
||||
{
|
||||
-#ifdef HAVE_INITFINI
|
||||
/* Protect from being called more than once. Since crti.o is linked
|
||||
into every shared library, each of their init functions will call us. */
|
||||
static int called;
|
||||
@@ -68,7 +59,6 @@ __gmon_start__ (void)
|
||||
return;
|
||||
|
||||
called = 1;
|
||||
-#endif
|
||||
|
||||
/* Start keeping profiling records. */
|
||||
__monstartup ((u_long) TEXT_START, (u_long) &etext);
|
||||
Index: glibc-2.15/sysdeps/powerpc/powerpc32/crti.S
|
||||
===================================================================
|
||||
--- /dev/null
|
||||
+++ glibc-2.15/sysdeps/powerpc/powerpc32/crti.S
|
||||
@@ -0,0 +1,90 @@
|
||||
+/* Special .init and .fini section support for PowerPC.
|
||||
+ 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.
|
||||
+
|
||||
+ In addition to the permissions in the GNU Lesser General Public
|
||||
+ License, the Free Software Foundation gives you unlimited
|
||||
+ permission to link the compiled version of this file with other
|
||||
+ programs, and to distribute those programs without any restriction
|
||||
+ coming from the use of this file. (The GNU Lesser General Public
|
||||
+ License restrictions do apply in other respects; for example, they
|
||||
+ cover modification of the file, and distribution when not linked
|
||||
+ into another program.)
|
||||
+
|
||||
+ Note that people who make modified versions of this file are not
|
||||
+ obligated to grant this special exception for their modified
|
||||
+ versions; it is their choice whether to do so. The GNU Lesser
|
||||
+ General Public License gives permission to release a modified
|
||||
+ version without this exception; this exception also makes it
|
||||
+ possible to release a modified version which carries forward this
|
||||
+ exception.
|
||||
+
|
||||
+ 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. */
|
||||
+
|
||||
+/* crti.S puts a function prologue at the beginning of the .init and
|
||||
+ .fini sections and defines global symbols for those addresses, so
|
||||
+ they can be called as functions. The symbols _init and _fini are
|
||||
+ magic and cause the linker to emit DT_INIT and DT_FINI. */
|
||||
+
|
||||
+#include <libc-symbols.h>
|
||||
+#include <sysdep.h>
|
||||
+
|
||||
+#ifndef PREINIT_FUNCTION
|
||||
+# define PREINIT_FUNCTION __gmon_start__
|
||||
+#endif
|
||||
+
|
||||
+#ifndef PREINIT_FUNCTION_WEAK
|
||||
+# define PREINIT_FUNCTION_WEAK 1
|
||||
+#endif
|
||||
+
|
||||
+#if PREINIT_FUNCTION_WEAK
|
||||
+ weak_extern (PREINIT_FUNCTION)
|
||||
+#else
|
||||
+ .hidden PREINIT_FUNCTION
|
||||
+#endif
|
||||
+
|
||||
+ .section .init,"ax",@progbits
|
||||
+ .align 2
|
||||
+ .globl _init
|
||||
+ .type _init, @function
|
||||
+_init:
|
||||
+ stwu r1, -16(r1)
|
||||
+ mflr r0
|
||||
+ stw r0, 20(r1)
|
||||
+ stw r30, 8(r1)
|
||||
+ SETUP_GOT_ACCESS (r30, .Lgot_label_i)
|
||||
+ addis r30, r30, _GLOBAL_OFFSET_TABLE_-.Lgot_label_i@ha
|
||||
+ addi r30, r30, _GLOBAL_OFFSET_TABLE_-.Lgot_label_i@l
|
||||
+#if PREINIT_FUNCTION_WEAK
|
||||
+ lwz r0, PREINIT_FUNCTION@got(r30)
|
||||
+ cmpwi cr7, r0, 0
|
||||
+ beq+ cr7, 1f
|
||||
+ bl PREINIT_FUNCTION@plt
|
||||
+1:
|
||||
+#else
|
||||
+ bl PREINIT_FUNCTION@local
|
||||
+#endif
|
||||
+
|
||||
+ .section .fini,"ax",@progbits
|
||||
+ .align 2
|
||||
+ .globl _fini
|
||||
+ .type _fini, @function
|
||||
+_fini:
|
||||
+ stwu r1, -16(r1)
|
||||
+ mflr r0
|
||||
+ stw r0, 20(r1)
|
||||
+ stw r30, 8(r1)
|
||||
+ SETUP_GOT_ACCESS (r30, .Lgot_label_f)
|
||||
Index: glibc-2.15/sysdeps/powerpc/powerpc32/crtn.S
|
||||
===================================================================
|
||||
--- /dev/null
|
||||
+++ glibc-2.15/sysdeps/powerpc/powerpc32/crtn.S
|
||||
@@ -0,0 +1,54 @@
|
||||
+/* Special .init and .fini section support for PowerPC.
|
||||
+ 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.
|
||||
+
|
||||
+ In addition to the permissions in the GNU Lesser General Public
|
||||
+ License, the Free Software Foundation gives you unlimited
|
||||
+ permission to link the compiled version of this file with other
|
||||
+ programs, and to distribute those programs without any restriction
|
||||
+ coming from the use of this file. (The GNU Lesser General Public
|
||||
+ License restrictions do apply in other respects; for example, they
|
||||
+ cover modification of the file, and distribution when not linked
|
||||
+ into another program.)
|
||||
+
|
||||
+ Note that people who make modified versions of this file are not
|
||||
+ obligated to grant this special exception for their modified
|
||||
+ versions; it is their choice whether to do so. The GNU Lesser
|
||||
+ General Public License gives permission to release a modified
|
||||
+ version without this exception; this exception also makes it
|
||||
+ possible to release a modified version which carries forward this
|
||||
+ exception.
|
||||
+
|
||||
+ 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. */
|
||||
+
|
||||
+/* crtn.S puts function epilogues in the .init and .fini sections
|
||||
+ corresponding to the prologues in crti.S. */
|
||||
+
|
||||
+#include <sysdep.h>
|
||||
+
|
||||
+ .section .init,"ax",@progbits
|
||||
+ lwz r0, 20(r1)
|
||||
+ mtlr r0
|
||||
+ lwz r30, 8(r1)
|
||||
+ addi r1, r1, 16
|
||||
+ blr
|
||||
+
|
||||
+ .section .fini,"ax",@progbits
|
||||
+ lwz r0, 20(r1)
|
||||
+ mtlr r0
|
||||
+ lwz r30, 8(r1)
|
||||
+ addi r1, r1, 16
|
||||
+ blr
|
||||
Index: glibc-2.15/sysdeps/powerpc/powerpc64/crti.S
|
||||
===================================================================
|
||||
--- /dev/null
|
||||
+++ glibc-2.15/sysdeps/powerpc/powerpc64/crti.S
|
||||
@@ -0,0 +1,107 @@
|
||||
+/* Special .init and .fini section support for PowerPC64.
|
||||
+ 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.
|
||||
+
|
||||
+ In addition to the permissions in the GNU Lesser General Public
|
||||
+ License, the Free Software Foundation gives you unlimited
|
||||
+ permission to link the compiled version of this file with other
|
||||
+ programs, and to distribute those programs without any restriction
|
||||
+ coming from the use of this file. (The GNU Lesser General Public
|
||||
+ License restrictions do apply in other respects; for example, they
|
||||
+ cover modification of the file, and distribution when not linked
|
||||
+ into another program.)
|
||||
+
|
||||
+ Note that people who make modified versions of this file are not
|
||||
+ obligated to grant this special exception for their modified
|
||||
+ versions; it is their choice whether to do so. The GNU Lesser
|
||||
+ General Public License gives permission to release a modified
|
||||
+ version without this exception; this exception also makes it
|
||||
+ possible to release a modified version which carries forward this
|
||||
+ exception.
|
||||
+
|
||||
+ 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. */
|
||||
+
|
||||
+/* crti.S puts a function prologue at the beginning of the .init and
|
||||
+ .fini sections and defines global symbols for those addresses, so
|
||||
+ they can be called as functions. The symbols _init and _fini are
|
||||
+ magic and cause the linker to emit DT_INIT and DT_FINI. */
|
||||
+
|
||||
+#include <libc-symbols.h>
|
||||
+#include <sysdep.h>
|
||||
+
|
||||
+#ifndef PREINIT_FUNCTION
|
||||
+# define PREINIT_FUNCTION __gmon_start__
|
||||
+#endif
|
||||
+
|
||||
+#ifndef PREINIT_FUNCTION_WEAK
|
||||
+# define PREINIT_FUNCTION_WEAK 1
|
||||
+#endif
|
||||
+
|
||||
+#if PREINIT_FUNCTION_WEAK
|
||||
+ weak_extern (PREINIT_FUNCTION)
|
||||
+#else
|
||||
+ .hidden PREINIT_FUNCTION
|
||||
+#endif
|
||||
+
|
||||
+#if PREINIT_FUNCTION_WEAK
|
||||
+ .section ".toc", "aw"
|
||||
+.LC0:
|
||||
+ .tc PREINIT_FUNCTION[TC], PREINIT_FUNCTION
|
||||
+#endif
|
||||
+ .type BODY_LABEL (_init), @function
|
||||
+ .globl _init
|
||||
+ .section ".opd", "aw"
|
||||
+ .align 3
|
||||
+_init: OPD_ENT (_init)
|
||||
+#ifdef HAVE_ASM_GLOBAL_DOT_NAME
|
||||
+ .globl BODY_LABEL (_init)
|
||||
+ .size _init, 24
|
||||
+#else
|
||||
+ .type _init, @function
|
||||
+#endif
|
||||
+ .section ".init", "ax", @progbits
|
||||
+ .align ALIGNARG (2)
|
||||
+BODY_LABEL (_init):
|
||||
+ mflr 0
|
||||
+ std 0, 16(r1)
|
||||
+ stdu r1, -112(r1)
|
||||
+#if PREINIT_FUNCTION_WEAK
|
||||
+ addis r9, r2, .LC0@toc@ha
|
||||
+ ld r0, .LC0@toc@l(r9)
|
||||
+ cmpdi cr7, r0, 0
|
||||
+ beq+ cr7, 1f
|
||||
+#endif
|
||||
+ bl JUMPTARGET (PREINIT_FUNCTION)
|
||||
+ nop
|
||||
+1:
|
||||
+
|
||||
+ .type BODY_LABEL (_fini), @function
|
||||
+ .globl _fini
|
||||
+ .section ".opd", "aw"
|
||||
+ .align 3
|
||||
+_fini: OPD_ENT (_fini)
|
||||
+#ifdef HAVE_ASM_GLOBAL_DOT_NAME
|
||||
+ .globl BODY_LABEL (_fini)
|
||||
+ .size _fini, 24
|
||||
+#else
|
||||
+ .type _fini, @function
|
||||
+#endif
|
||||
+ .section ".fini", "ax", @progbits
|
||||
+ .align ALIGNARG (2)
|
||||
+BODY_LABEL (_fini):
|
||||
+ mflr 0
|
||||
+ std 0, 16(r1)
|
||||
+ stdu r1, -112(r1)
|
||||
Index: glibc-2.15/sysdeps/powerpc/powerpc64/crtn.S
|
||||
===================================================================
|
||||
--- /dev/null
|
||||
+++ glibc-2.15/sysdeps/powerpc/powerpc64/crtn.S
|
||||
@@ -0,0 +1,52 @@
|
||||
+/* Special .init and .fini section support for PowerPC64.
|
||||
+ 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.
|
||||
+
|
||||
+ In addition to the permissions in the GNU Lesser General Public
|
||||
+ License, the Free Software Foundation gives you unlimited
|
||||
+ permission to link the compiled version of this file with other
|
||||
+ programs, and to distribute those programs without any restriction
|
||||
+ coming from the use of this file. (The GNU Lesser General Public
|
||||
+ License restrictions do apply in other respects; for example, they
|
||||
+ cover modification of the file, and distribution when not linked
|
||||
+ into another program.)
|
||||
+
|
||||
+ Note that people who make modified versions of this file are not
|
||||
+ obligated to grant this special exception for their modified
|
||||
+ versions; it is their choice whether to do so. The GNU Lesser
|
||||
+ General Public License gives permission to release a modified
|
||||
+ version without this exception; this exception also makes it
|
||||
+ possible to release a modified version which carries forward this
|
||||
+ exception.
|
||||
+
|
||||
+ 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. */
|
||||
+
|
||||
+/* crtn.S puts function epilogues in the .init and .fini sections
|
||||
+ corresponding to the prologues in crti.S. */
|
||||
+
|
||||
+#include <sysdep.h>
|
||||
+
|
||||
+ .section .init,"ax",@progbits
|
||||
+ addi r1, r1, 112
|
||||
+ ld r0, 16(r1)
|
||||
+ mtlr r0
|
||||
+ blr
|
||||
+
|
||||
+ .section .fini,"ax",@progbits
|
||||
+ addi r1, r1, 112
|
||||
+ ld r0, 16(r1)
|
||||
+ mtlr r0
|
||||
+ blr
|
@ -3,10 +3,10 @@ Wed Jun 4 14:29:07 CEST 2003 - kukuk@suse.de
|
||||
|
||||
- Make --no-archive default for localedef
|
||||
|
||||
Index: locale/programs/localedef.c
|
||||
Index: glibc-2.15/locale/programs/localedef.c
|
||||
===================================================================
|
||||
--- locale/programs/localedef.c.orig
|
||||
+++ locale/programs/localedef.c
|
||||
--- glibc-2.15.orig/locale/programs/localedef.c
|
||||
+++ glibc-2.15/locale/programs/localedef.c
|
||||
@@ -82,7 +82,7 @@ const char *alias_file;
|
||||
static struct localedef_t *locales;
|
||||
|
||||
|
@ -2,12 +2,10 @@
|
||||
|
||||
* nscd/nscd.h: Move persistent storage back to /var/run/nscd
|
||||
|
||||
Index: nscd/nscd.h
|
||||
Index: glibc-2.15/nscd/nscd.h
|
||||
===================================================================
|
||||
diff --git a/nscd/nscd.h b/nscd/nscd.h
|
||||
index fdaf01b..23b6a94 100644
|
||||
--- nscd/nscd.h
|
||||
+++ nscd/nscd.h
|
||||
--- glibc-2.15.orig/nscd/nscd.h
|
||||
+++ glibc-2.15/nscd/nscd.h
|
||||
@@ -113,11 +113,11 @@ struct database_dyn
|
||||
|
||||
|
||||
|
@ -1,7 +1,7 @@
|
||||
Index: sunrpc/bindrsvprt.c
|
||||
Index: glibc-2.15/sunrpc/bindrsvprt.c
|
||||
===================================================================
|
||||
--- sunrpc/bindrsvprt.c.orig
|
||||
+++ sunrpc/bindrsvprt.c
|
||||
--- glibc-2.15.orig/sunrpc/bindrsvprt.c
|
||||
+++ glibc-2.15/sunrpc/bindrsvprt.c
|
||||
@@ -29,28 +29,108 @@
|
||||
* OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||
*/
|
||||
|
@ -1,7 +1,7 @@
|
||||
Index: intl/loadmsgcat.c
|
||||
Index: glibc-2.15/intl/loadmsgcat.c
|
||||
===================================================================
|
||||
--- intl/loadmsgcat.c.orig
|
||||
+++ intl/loadmsgcat.c
|
||||
--- glibc-2.15.orig/intl/loadmsgcat.c
|
||||
+++ glibc-2.15/intl/loadmsgcat.c
|
||||
@@ -806,8 +806,52 @@ _nl_load_domain (domain_file, domainbind
|
||||
if (domain_file->filename == NULL)
|
||||
goto out;
|
||||
|
@ -1,3 +1,3 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:23c4a947e7dee14c05556bc30c1dded5458a7b9ba8b306cb7bce93dd57fb9b96
|
||||
size 329206
|
||||
oid sha256:fe966fc1d1082da024fda16d4ad1e8e2b73f30d646701d24a27882ec653b5807
|
||||
size 329247
|
||||
|
@ -1,38 +0,0 @@
|
||||
Index: nscd/nscd.conf
|
||||
===================================================================
|
||||
--- nscd/nscd.conf.orig 2010-01-18 18:01:41.000000000 +0100
|
||||
+++ nscd/nscd.conf 2010-02-14 14:58:08.000000000 +0100
|
||||
@@ -61,11 +61,11 @@
|
||||
auto-propagate group yes
|
||||
|
||||
enable-cache hosts yes
|
||||
- positive-time-to-live hosts 3600
|
||||
- negative-time-to-live hosts 20
|
||||
+ positive-time-to-live hosts 600
|
||||
+ negative-time-to-live hosts 0
|
||||
suggested-size hosts 211
|
||||
check-files hosts yes
|
||||
- persistent hosts yes
|
||||
+ persistent hosts no
|
||||
shared hosts yes
|
||||
max-db-size hosts 33554432
|
||||
|
||||
Index: nscd/nscd_stat.c
|
||||
===================================================================
|
||||
--- nscd/nscd_stat.c.orig 2010-01-18 18:01:41.000000000 +0100
|
||||
+++ nscd/nscd_stat.c 2010-02-14 15:02:41.000000000 +0100
|
||||
@@ -37,8 +37,13 @@
|
||||
#endif /* HAVE_SELINUX */
|
||||
|
||||
|
||||
-/* We use this to make sure the receiver is the same. */
|
||||
+/* We use this to make sure the receiver is the same. Capture mtime
|
||||
+ of this file if possible. */
|
||||
+#if defined(__TIMESTAMP__)
|
||||
+static const char compilation[21] = __TIMESTAMP__;
|
||||
+#else
|
||||
static const char compilation[21] = __DATE__ " " __TIME__;
|
||||
+#endif
|
||||
|
||||
/* Statistic data for one database. */
|
||||
struct dbstat
|
@ -1,7 +1,7 @@
|
||||
Index: locale/iso-4217.def
|
||||
Index: glibc-2.15/locale/iso-4217.def
|
||||
===================================================================
|
||||
--- locale/iso-4217.def.orig
|
||||
+++ locale/iso-4217.def
|
||||
--- glibc-2.15.orig/locale/iso-4217.def
|
||||
+++ glibc-2.15/locale/iso-4217.def
|
||||
@@ -8,6 +8,7 @@
|
||||
*
|
||||
* !!! The list has to be sorted !!!
|
||||
|
@ -2,10 +2,10 @@ This is required for too noisy rpmlint:
|
||||
glibc.i586: E: hardlink-across-partition (Badness: 10000) /usr/lib/getconf/POSIX_V7_ILP32_OFFBIG /usr/bin/getconf
|
||||
|
||||
|
||||
Index: posix/Makefile
|
||||
Index: glibc-2.15/posix/Makefile
|
||||
===================================================================
|
||||
--- posix/Makefile.orig
|
||||
+++ posix/Makefile
|
||||
--- glibc-2.15.orig/posix/Makefile
|
||||
+++ glibc-2.15/posix/Makefile
|
||||
@@ -316,8 +316,7 @@ $(inst_libexecdir)/getconf: $(inst_bindi
|
||||
$(addprefix $(..)./scripts/mkinstalldirs ,\
|
||||
$(filter-out $(wildcard $@),$@))
|
||||
|
@ -1,7 +1,7 @@
|
||||
Index: bits/sched.h
|
||||
Index: glibc-2.15/bits/sched.h
|
||||
===================================================================
|
||||
--- bits/sched.h.orig
|
||||
+++ bits/sched.h
|
||||
--- glibc-2.15.orig/bits/sched.h
|
||||
+++ glibc-2.15/bits/sched.h
|
||||
@@ -54,7 +54,7 @@ struct __sched_param
|
||||
#if defined _SCHED_H && !defined __cpu_set_t_defined
|
||||
# define __cpu_set_t_defined
|
||||
@ -11,10 +11,10 @@ Index: bits/sched.h
|
||||
# define __NCPUBITS (8 * sizeof (__cpu_mask))
|
||||
|
||||
/* Type for array elements in 'cpu_set_t'. */
|
||||
Index: sysdeps/unix/sysv/linux/bits/sched.h
|
||||
Index: glibc-2.15/sysdeps/unix/sysv/linux/bits/sched.h
|
||||
===================================================================
|
||||
--- sysdeps/unix/sysv/linux/bits/sched.h.orig
|
||||
+++ sysdeps/unix/sysv/linux/bits/sched.h
|
||||
--- glibc-2.15.orig/sysdeps/unix/sysv/linux/bits/sched.h
|
||||
+++ glibc-2.15/sysdeps/unix/sysv/linux/bits/sched.h
|
||||
@@ -113,7 +113,7 @@ struct __sched_param
|
||||
#if defined _SCHED_H && !defined __cpu_set_t_defined
|
||||
# define __cpu_set_t_defined
|
||||
|
@ -1,7 +1,8 @@
|
||||
diff -ru elf~/dl-close.c elf/dl-close.c
|
||||
--- elf~/dl-close.c 2011-02-04 00:35:03.000000000 +0100
|
||||
+++ elf/dl-close.c 2011-02-22 02:16:12.367883000 +0100
|
||||
@@ -180,24 +186,28 @@
|
||||
Index: glibc-2.15/elf/dl-close.c
|
||||
===================================================================
|
||||
--- glibc-2.15.orig/elf/dl-close.c
|
||||
+++ glibc-2.15/elf/dl-close.c
|
||||
@@ -180,24 +180,28 @@ _dl_close_worker (struct link_map *map)
|
||||
/* Signal the object is still needed. */
|
||||
l->l_idx = IDX_STILL_USED;
|
||||
|
||||
@ -42,7 +43,7 @@ diff -ru elf~/dl-close.c elf/dl-close.c
|
||||
++lp;
|
||||
}
|
||||
}
|
||||
@@ -206,19 +216,25 @@
|
||||
@@ -206,19 +210,25 @@ _dl_close_worker (struct link_map *map)
|
||||
for (unsigned int j = 0; j < l->l_reldeps->act; ++j)
|
||||
{
|
||||
struct link_map *jmap = l->l_reldeps->list[j];
|
||||
|
@ -1,7 +1,7 @@
|
||||
Index: sysdeps/x86_64/elf/initfini.c
|
||||
Index: glibc-2.15/sysdeps/x86_64/elf/initfini.c
|
||||
===================================================================
|
||||
--- sysdeps/x86_64/elf/initfini.c.orig 2004-08-16 06:50:55.000000000 +0200
|
||||
+++ sysdeps/x86_64/elf/initfini.c 2010-04-16 16:41:11.000000000 +0200
|
||||
--- glibc-2.15.orig/sysdeps/x86_64/elf/initfini.c
|
||||
+++ glibc-2.15/sysdeps/x86_64/elf/initfini.c
|
||||
@@ -44,6 +44,25 @@
|
||||
* crtn.s puts the corresponding function epilogues
|
||||
in the .init and .fini sections. */
|
||||
|
@ -1,19 +0,0 @@
|
||||
Index: glibc-2.11.3/elf/dl-close.c
|
||||
===================================================================
|
||||
--- glibc-2.11.3.orig/elf/dl-close.c 2011-05-27 15:08:23.000000000 +0200
|
||||
+++ glibc-2.11.3/elf/dl-close.c 2011-07-13 19:28:52.000000000 +0200
|
||||
@@ -127,7 +127,13 @@ _dl_close_worker (struct link_map *map)
|
||||
{
|
||||
struct link_map **oldp = map->l_initfini;
|
||||
map->l_initfini = map->l_orig_initfini;
|
||||
- _dl_scope_free (oldp);
|
||||
+ /* We can't remove the l_initfini memory because
|
||||
+ it's shared with l_searchlist.r_list. We don't clear
|
||||
+ the latter so when we dlopen this object again that
|
||||
+ entry would point to stale memory. And we don't want
|
||||
+ to recompute it as it would involve a new call to
|
||||
+ map_object_deps.
|
||||
+ _dl_scope_free (oldp); */
|
||||
}
|
||||
}
|
||||
|
@ -1,5 +1,7 @@
|
||||
--- posix/gai.conf~ 2010-05-12 04:10:58.087661000 +0200
|
||||
+++ posix/gai.conf 2010-05-12 04:14:40.638820000 +0200
|
||||
Index: glibc-2.15/posix/gai.conf
|
||||
===================================================================
|
||||
--- glibc-2.15.orig/posix/gai.conf
|
||||
+++ glibc-2.15/posix/gai.conf
|
||||
@@ -67,11 +67,66 @@
|
||||
#scopev4 ::ffff:192.168.0.0/112 5
|
||||
#scopev4 ::ffff:0.0.0.0/96 14
|
||||
|
@ -1,3 +1,23 @@
|
||||
Index: glibc-2.15/nscd/nscd_stat.c
|
||||
===================================================================
|
||||
--- glibc-2.15/nscd/nscd_stat.c.orig 2010-01-18 18:01:41.000000000 +0100
|
||||
+++ glibc-2.15/nscd/nscd_stat.c 2010-02-14 15:02:41.000000000 +0100
|
||||
@@ -37,8 +37,13 @@
|
||||
#endif /* HAVE_SELINUX */
|
||||
|
||||
|
||||
-/* We use this to make sure the receiver is the same. */
|
||||
+/* We use this to make sure the receiver is the same. Capture mtime
|
||||
+ of this file if possible. */
|
||||
+#if defined(__TIMESTAMP__)
|
||||
+static const char compilation[21] = __TIMESTAMP__;
|
||||
+#else
|
||||
static const char compilation[21] = __DATE__ " " __TIME__;
|
||||
+#endif
|
||||
|
||||
/* Statistic data for one database. */
|
||||
struct dbstat
|
||||
|
||||
Index: glibc-2.15/csu/Makefile
|
||||
===================================================================
|
||||
--- glibc-2.15.orig/csu/Makefile
|
||||
|
@ -1,10 +1,10 @@
|
||||
See:
|
||||
http://sourceware.org/bugzilla/show_bug.cgi?id=11928
|
||||
|
||||
diff --git a/nscd/aicache.c b/nscd/aicache.c
|
||||
index 3cb2208..2e92929 100644
|
||||
--- a/nscd/aicache.c
|
||||
+++ b/nscd/aicache.c
|
||||
Index: glibc-2.15/nscd/aicache.c
|
||||
===================================================================
|
||||
--- glibc-2.15.orig/nscd/aicache.c
|
||||
+++ glibc-2.15/nscd/aicache.c
|
||||
@@ -26,6 +26,7 @@
|
||||
#include <time.h>
|
||||
#include <unistd.h>
|
||||
@ -13,7 +13,7 @@ index 3cb2208..2e92929 100644
|
||||
|
||||
#include "dbg_log.h"
|
||||
#include "nscd.h"
|
||||
@@ -103,6 +104,8 @@ addhstaiX (struct database_dyn *db, int fd, request_header *req,
|
||||
@@ -103,6 +104,8 @@ addhstaiX (struct database_dyn *db, int
|
||||
|
||||
if (__res_maybe_init (&_res, 0) == -1)
|
||||
no_more = 1;
|
||||
@ -22,11 +22,11 @@ index 3cb2208..2e92929 100644
|
||||
|
||||
/* If we are looking for both IPv4 and IPv6 address we don't want
|
||||
the lookup functions to automatically promote IPv4 addresses to
|
||||
diff --git a/resolv/res_hconf.c b/resolv/res_hconf.c
|
||||
index ed55bec..c79b85a 100644
|
||||
--- a/resolv/res_hconf.c
|
||||
+++ b/resolv/res_hconf.c
|
||||
@@ -84,7 +84,9 @@ static const struct cmd
|
||||
Index: glibc-2.15/resolv/res_hconf.c
|
||||
===================================================================
|
||||
--- glibc-2.15.orig/resolv/res_hconf.c
|
||||
+++ glibc-2.15/resolv/res_hconf.c
|
||||
@@ -83,7 +83,9 @@ static const struct cmd
|
||||
};
|
||||
|
||||
/* Structure containing the state. */
|
||||
|
19
glibc-nscd.conf.patch
Normal file
19
glibc-nscd.conf.patch
Normal file
@ -0,0 +1,19 @@
|
||||
Index: glibc-2.15/nscd/nscd.conf
|
||||
===================================================================
|
||||
--- glibc-2.15.orig/nscd/nscd.conf
|
||||
+++ glibc-2.15/nscd/nscd.conf
|
||||
@@ -61,11 +61,11 @@
|
||||
auto-propagate group yes
|
||||
|
||||
enable-cache hosts yes
|
||||
- positive-time-to-live hosts 3600
|
||||
- negative-time-to-live hosts 20
|
||||
+ positive-time-to-live hosts 600
|
||||
+ negative-time-to-live hosts 0
|
||||
suggested-size hosts 211
|
||||
check-files hosts yes
|
||||
- persistent hosts yes
|
||||
+ persistent hosts no
|
||||
shared hosts yes
|
||||
max-db-size hosts 33554432
|
||||
|
@ -1,8 +1,8 @@
|
||||
diff --git a/resolv/res_hconf.c b/resolv/res_hconf.c
|
||||
index ed55bec..f06db75 100644
|
||||
--- a/resolv/res_hconf.c
|
||||
+++ b/resolv/res_hconf.c
|
||||
@@ -243,9 +243,12 @@ parse_line (const char *fname, int line_num, const char *str)
|
||||
Index: glibc-2.15/resolv/res_hconf.c
|
||||
===================================================================
|
||||
--- glibc-2.15.orig/resolv/res_hconf.c
|
||||
+++ glibc-2.15/resolv/res_hconf.c
|
||||
@@ -242,9 +242,12 @@ parse_line (const char *fname, int line_
|
||||
if (c == NULL)
|
||||
{
|
||||
char *buf;
|
||||
|
@ -72,9 +72,10 @@ Content-Transfer-Encoding: 7bit
|
||||
Content-Disposition: inline;
|
||||
filename="glibc-2.5-resolvconf.patch"
|
||||
|
||||
diff -ur resolv.orig/res_libc.c resolv/res_libc.c
|
||||
--- resolv.orig/res_libc.c 2005-11-01 01:06:40.000000000 +0100
|
||||
+++ resolv/res_libc.c 2010-03-15 14:13:18.000000000 +0100
|
||||
Index: glibc-2.15/resolv/res_libc.c
|
||||
===================================================================
|
||||
--- glibc-2.15.orig/resolv/res_libc.c
|
||||
+++ glibc-2.15/resolv/res_libc.c
|
||||
@@ -22,7 +22,7 @@
|
||||
#include <arpa/nameser.h>
|
||||
#include <resolv.h>
|
||||
@ -84,7 +85,7 @@ diff -ur resolv.orig/res_libc.c resolv/res_libc.c
|
||||
|
||||
/* The following bit is copied from res_data.c (where it is #ifdef'ed
|
||||
out) since res_init() should go into libc.so but the rest of that
|
||||
@@ -89,12 +89,34 @@
|
||||
@@ -89,12 +89,34 @@ res_init(void) {
|
||||
return (__res_vinit(&_res, 1));
|
||||
}
|
||||
|
||||
@ -119,6 +120,3 @@ diff -ur resolv.orig/res_libc.c resolv/res_libc.c
|
||||
if (__res_initstamp != resp->_u._ext.initstamp) {
|
||||
if (resp->nscount > 0)
|
||||
__res_iclose (resp, true);
|
||||
|
||||
|
||||
--------------060407080409020101000002--
|
||||
|
@ -1,9 +1,9 @@
|
||||
test-lfs runs for ever on ReiserFS. Let's disable it completely.
|
||||
|
||||
Index: io/Makefile
|
||||
Index: glibc-2.15/io/Makefile
|
||||
===================================================================
|
||||
--- io/Makefile.orig
|
||||
+++ io/Makefile
|
||||
--- glibc-2.15.orig/io/Makefile
|
||||
+++ glibc-2.15/io/Makefile
|
||||
@@ -64,7 +64,7 @@ static-only-routines = stat fstat lstat
|
||||
|
||||
others := pwd
|
||||
|
@ -1,8 +1,3 @@
|
||||
Refused by Ulrich Drepper:
|
||||
http://sourceware.org/ml/libc-alpha/2011-07/msg00046.html
|
||||
|
||||
We have to keep it until gcc handles this better.
|
||||
|
||||
2009-11-06 Petr Baudis <pasky@suse.cz>
|
||||
|
||||
* include/sys/uio.h: Change __vector to __iovec to avoid clash
|
||||
|
@ -1,8 +1,8 @@
|
||||
Index: csu/version.c
|
||||
Index: glibc-2.15/csu/version.c
|
||||
===================================================================
|
||||
--- csu/version.c.orig
|
||||
+++ csu/version.c
|
||||
@@ -25,19 +25,20 @@ static const char __libc_release[] = REL
|
||||
--- glibc-2.15.orig/csu/version.c
|
||||
+++ glibc-2.15/csu/version.c
|
||||
@@ -25,11 +25,12 @@ static const char __libc_release[] = REL
|
||||
static const char __libc_version[] = VERSION;
|
||||
|
||||
static const char banner[] =
|
||||
@ -16,11 +16,3 @@ Index: csu/version.c
|
||||
Compiled by GNU CC version "__VERSION__".\n"
|
||||
#include "version-info.h"
|
||||
#ifdef LIBC_ABIS_STRING
|
||||
LIBC_ABIS_STRING
|
||||
#endif
|
||||
#ifdef GLIBC_OLDEST_ABI
|
||||
"The oldest ABI supported: " GLIBC_OLDEST_ABI ".\n"
|
||||
#endif
|
||||
"For bug reporting instructions, please see:\n\
|
||||
<http://www.gnu.org/software/libc/bugs.html>.\n";
|
||||
|
||||
|
@ -1,3 +1,35 @@
|
||||
-------------------------------------------------------------------
|
||||
Sun Apr 22 11:35:05 UTC 2012 - aj@suse.de
|
||||
|
||||
- gcc 4.7 does not build crt files properly on powerpc64, backport
|
||||
patch from upstream to handle this
|
||||
(glibc-2.16-powerpc-initfini.patch)
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Fri Apr 20 18:28:18 UTC 2012 - aj@suse.de
|
||||
|
||||
- Disable patch x86-cpuid-level2.patch, this should be fixed in
|
||||
valgrind now.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Thu Apr 19 11:12:43 UTC 2012 - aj@suse.de
|
||||
|
||||
- Reorder patches, refresh to apply cleanly with -p1.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Wed Apr 18 11:35:48 UTC 2012 - aj@suse.de
|
||||
|
||||
- Build profiled libs only for base.
|
||||
- Cleanup patches.
|
||||
- Remove glibc-2.14-fix-ctors.patch, we have proper support in
|
||||
binutils now.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Tue Apr 17 12:35:21 UTC 2012 - aj@suse.de
|
||||
|
||||
- The dynamic linker for armv7 hardware float is called
|
||||
/lib/ld-linux-armhf.so.3. Provide symlink for old location.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Tue Apr 17 08:29:21 UTC 2012 - aj@suse.de
|
||||
|
||||
|
331
glibc.spec
331
glibc.spec
@ -120,17 +120,17 @@ Source: glibc-%{version}-%{git_id}.tar.bz2
|
||||
Source2: glibc-ports-%{glibc_ports_ver}-%{ports_git_id}.tar.bz2
|
||||
Source3: noversion.tar.bz2
|
||||
Source4: manpages.tar.bz2
|
||||
Source8: nsswitch.conf
|
||||
Source9: nscd.init
|
||||
Source10: bindresvport.blacklist
|
||||
Source12: glibc_post_upgrade.c
|
||||
Source15: glibc.rpmlintrc
|
||||
Source16: baselibs.conf
|
||||
Source5: nsswitch.conf
|
||||
Source6: nscd.init
|
||||
Source7: bindresvport.blacklist
|
||||
Source8: glibc_post_upgrade.c
|
||||
Source9: glibc.rpmlintrc
|
||||
Source10: baselibs.conf
|
||||
# For systemd
|
||||
Source20: nscd.conf
|
||||
Source21: nscd.service
|
||||
Source22: nscd.socket
|
||||
#
|
||||
# crypt_blowfish
|
||||
Source50: http://www.openwall.com/crypt/crypt_blowfish-%{crypt_bf_version}.tar.gz
|
||||
Source51: http://www.openwall.com/crypt/crypt_blowfish-%{crypt_bf_version}.tar.gz.sign
|
||||
|
||||
@ -146,8 +146,8 @@ NoSource: 0
|
||||
#
|
||||
|
||||
###
|
||||
# Patches are ordered as:
|
||||
# Patches that we will never upstream or which have not been looked at: 0000-0999
|
||||
# Patches are ordered in the following groups:
|
||||
# Patches that we will never upstream or which have not been looked at: 0-999
|
||||
# Patches taken from upstream: 1000-2000
|
||||
# Patches that are going upstream, waiting approval: 2000-3000
|
||||
###
|
||||
@ -155,96 +155,95 @@ NoSource: 0
|
||||
###
|
||||
# Patches that upstream will not accept
|
||||
###
|
||||
# PATCH-FIX-OPENSUSE remove lfs test from testsuite aj@suse.de
|
||||
Patch0: glibc-testsuite.patch
|
||||
# PATCH-FIX-OPENSUSE handle glibc binaries
|
||||
Patch1: glibc-2.3.90-noversion.diff
|
||||
# PATCH-FIX-OPENSUSE reload /etc/resolv.conf on change
|
||||
Patch3: glibc-resolv-reload.diff
|
||||
# PATCH-MISSING-TAG -- See http://en.opensuse.org/openSUSE:Packaging_Patches_guidelines
|
||||
Patch4: glibc-2.3.locales.diff.bz2
|
||||
|
||||
###
|
||||
# openSUSE specific patches - won't go upstream
|
||||
###
|
||||
### openSUSE extensions, configuration
|
||||
# PATCH-FEATURE-OPENSUSE -- add crypt_blowfish support - bnc#700876
|
||||
Patch5: glibc-2.14-crypt.diff
|
||||
Patch1: glibc-2.14-crypt.diff
|
||||
# PATCH-FEATURE-OPENSUSE -- use separate symbol version for Owl extensions - lnussel@suse.de
|
||||
Patch6: glibc-2.14-crypt-versioning.diff
|
||||
# PATCH-FIX-OPENSUSE add some extra information to version output - kukuk@suse.de
|
||||
Patch7: glibc-version.diff
|
||||
# PATCH-MISSING-TAG -- See http://en.opensuse.org/openSUSE:Packaging_Patches_guidelines
|
||||
Patch8: glibc-2.4.90-revert-only-euro.diff
|
||||
# PATCH-MISSING-TAG -- See http://en.opensuse.org/openSUSE:Packaging_Patches_guidelines
|
||||
Patch12: glibc-2.3.2.no_archive.diff
|
||||
# PATCH-MISSING-TAG -- See http://en.opensuse.org/openSUSE:Packaging_Patches_guidelines
|
||||
Patch14: glibc-2.3.90-bindresvport.blacklist.diff
|
||||
# PATCH-MISSING-TAG -- See http://en.opensuse.org/openSUSE:Packaging_Patches_guidelines
|
||||
Patch16: glibc-2.4.90-no_NO.diff
|
||||
# PATCH-MISSING-TAG -- See http://en.opensuse.org/openSUSE:Packaging_Patches_guidelines
|
||||
Patch20: glibc-2.4-china.diff
|
||||
# PATCH-FIX-OPENSUSE Fix gb18030 code bnc#54080
|
||||
Patch21: gb18030.patch.bz2
|
||||
# PATCH-FIX-OPENSUSE Handle timestamp, adjust nscd.conf
|
||||
Patch22: glibc-2.4.90-nscd.diff
|
||||
# PATCH-FIX-OPENSUSE Fix path for nscd databases
|
||||
Patch23: glibc-2.3.3-nscd-db-path.diff
|
||||
# PATCH-FIX-OPENSUSE prefer -lang rpm packages
|
||||
Patch25: glibc-2.3.90-langpackdir.diff
|
||||
# PATCH-FIX-OPENSUSE Fix hangs in UDP RPC calls bso#5379 bnc#257745 aj@suse.de
|
||||
Patch28: glibc-2.2-sunrpc.diff
|
||||
# PATCH-FIX-OPENSUSE Do not generate hardlink for getconf
|
||||
Patch29: glibc-2.8-getconf.diff
|
||||
# PATCH-FIX-OPENSUSE only use ipv6 if real ipv6 address exists bnc#361697, bnc#684534
|
||||
Patch30: getaddrinfo-ipv6-sanity.diff
|
||||
# PATCH-FIX-OPENSUSE add option --enable-runbinaries to disable running of compiled binaries
|
||||
Patch33: glibc-compiled-binaries.diff
|
||||
# PATCH-MISSING-TAG -- See http://en.opensuse.org/openSUSE:Packaging_Patches_guidelines
|
||||
Patch36: glibc-no-unwind-tables.diff
|
||||
# PATCH-FEATURE-SLE increase cpusetsize to 4096, needs to be kept for compatibility kukuk@suse.de
|
||||
Patch38: glibc-cpusetsize.diff
|
||||
# PATCH-MISSING-TAG -- See http://en.opensuse.org/openSUSE:Packaging_Patches_guidelines
|
||||
Patch45: glibc-gai-private4.diff
|
||||
# PATCH-MISSING-TAG -- See http://en.opensuse.org/openSUSE:Packaging_Patches_guidelines
|
||||
Patch46: glibc-resolv-mdnshint.diff
|
||||
# PATCH-MISSING-TAG -- See http://en.opensuse.org/openSUSE:Packaging_Patches_guidelines
|
||||
Patch47: glibc-nscd-hconf.diff
|
||||
# PATCH-MISSING-TAG -- See http://en.opensuse.org/openSUSE:Packaging_Patches_guidelines
|
||||
Patch49: glibc-fini-unwind.diff
|
||||
# PATCH-FIX-OPENSUSE bnc#657627, http://sourceware.org/bugzilla/show_bug.cgi?id=12561
|
||||
Patch52: glibc-elf-localscope.diff
|
||||
# FIX-OPENSUSE compile some files with -fno-strict-aliasing
|
||||
Patch58: glibc-strict-aliasing.diff
|
||||
# PATCH-FIX-OPENSUSE disable rewriting ::1 to 127.0.0.1 for /etc/hosts bnc#684534, bnc#706719
|
||||
Patch65: glibc-fix-double-loopback.diff
|
||||
# PATCH-FEATURE-OPENSUSE Revert sunrpc removal aj@suse.de
|
||||
Patch66: glibc2.14-revert-sunrpc-removal.patch
|
||||
# PATCH-FIX-OPENSUSE revert seeking on fclose for now bnc#711829 matz@suse.de
|
||||
Patch67: glibc-revert-fseek-on-fclose.diff
|
||||
# PATCH-FIX-OPENSUSE Fix crash (access-after-free) in dl_lookup_x bnc#703140, bso#13579 matz@suse.de
|
||||
Patch68: glibc-fix-lookup-crash.patch
|
||||
# PATCH-FIX-OPENSUSE Fix crash (access-after-free) in dl_lookup_x bnc#703140, bso#13579 matz@suse.de
|
||||
Patch69: glibc-fix-noload.patch
|
||||
# PATCH-FIX-OPENSUSE Do not trigger an abort when an i586 Intel CPU is running the i686 library, as valgrind does. bnc#681398 aj@suse.de
|
||||
Patch71: x86-cpuid-level2.patch
|
||||
# PATCH-FIX-OPENSUSE Run ctors (bnc#717671) aj@suse.de
|
||||
Patch74: glibc-2.14-fix-ctors.patch
|
||||
Patch2: glibc-2.14-crypt-versioning.diff
|
||||
# PATCH-FEATURE-OPENSUSE -- add sha support to crypt_blowfish lnussel@suse.de
|
||||
Patch80: crypt_blowfish-1.2-sha.diff
|
||||
Patch3: crypt_blowfish-1.2-sha.diff
|
||||
# PATCH-FEATURE-OPENSUSE -- use separate symbol version for Owl extensions - lnussel@suse.de
|
||||
Patch81: crypt_blowfish-1.2-versioning.diff
|
||||
Patch4: crypt_blowfish-1.2-versioning.diff
|
||||
# PATCH-FIX-OPENSUSE Avoid build failure on noexecstack marker on ARM dmueller@suse.de
|
||||
Patch82: crypt_blowfish-1.2-hack_around_arm.diff
|
||||
# PATCH-FIX-OPENSUSE avoid false positive warning that triggers brp postcheck fail
|
||||
Patch84: nscd-avoid-gcc-warning.diff
|
||||
# PATCH-FIX-OPENSUSE fixed build-compare by omitting one more date - meissner@suse.de
|
||||
Patch87: glibc-nodate.patch
|
||||
# PATCH-FIX-OPENSUSE revert pthread-cond-wait change since it causes hangs - aj@suse.de
|
||||
Patch88: pthread-cond-wait-revert.patch
|
||||
# PATCH-FIX-OPENSUSE Fix cycle detection - aj@suse.de
|
||||
Patch95: cycle-detection.patch
|
||||
# PATCH-FIX-OPENSUSE Fix LD_PROFILE (glibc bug#13818) - aj@suse.de
|
||||
Patch96: glibc-ld-profile.patch
|
||||
Patch5: crypt_blowfish-1.2-hack_around_arm.diff
|
||||
# PATCH-FIX-OPENSUSE Fix path for nscd databases
|
||||
Patch6: glibc-2.3.3-nscd-db-path.diff
|
||||
# PATCH-FIX-OPENSUSE Fix path for nss_db (bnc#753657) - aj@suse.de
|
||||
Patch97: nss-db-path.patch
|
||||
# PATCH-FIX-OPENSUSE Fix cycle detection 2 (from Fedora) - aj@suse.de
|
||||
Patch100: glibc-sw13618-2.patch
|
||||
Patch7: nss-db-path.patch
|
||||
# PATCH-FIX-OPENSUSE adjust nscd.conf
|
||||
Patch8: glibc-nscd.conf.patch
|
||||
# PATCH-FIX-OPENSUSE do not use compile time in binaries
|
||||
Patch9: glibc-nodate.patch
|
||||
# PATCH-FIX-OPENSUSE -- add some extra information to version output - kukuk@suse.de
|
||||
Patch10: glibc-version.diff
|
||||
# PATCH-FIX-OPENSUSE remove lfs test from testsuite aj@suse.de
|
||||
Patch11: glibc-testsuite.patch
|
||||
# PATCH-FIX-OPENSUSE handle old glibc binaries
|
||||
Patch12: glibc-2.3.90-noversion.diff
|
||||
# PATCH-FIX-OPENSUSE -- Make --no-archive default for localedef - kukuk@suse.de
|
||||
Patch13: glibc-2.3.2.no_archive.diff
|
||||
# PATCH-FIX-OPENSUSE -- add blacklist for bindresvport
|
||||
Patch14: glibc-2.3.90-bindresvport.blacklist.diff
|
||||
# PATCH-FIX-OPENSUSE prefer -lang rpm packages
|
||||
Patch15: glibc-2.3.90-langpackdir.diff
|
||||
# PATCH-FIX-OPENSUSE Do not generate hardlink for getconf
|
||||
Patch16: glibc-2.8-getconf.diff
|
||||
# PATCH-FIX-OPENSUSE add option --enable-runbinaries to disable running of compiled binaries
|
||||
Patch17: glibc-compiled-binaries.diff
|
||||
# PATCH-FEATURE-SLE increase cpusetsize to 4096, needs to be kept for compatibility kukuk@suse.de (XXX: Review)
|
||||
Patch18: glibc-cpusetsize.diff
|
||||
# PATCH-FIX-OPENSUSE Do not trigger an abort when an i586 Intel CPU is running the i686 library, as valgrind does. bnc#681398 aj@suse.de
|
||||
# According the the Debian bug report, this is fixed in valgrind now, so disable
|
||||
# this patch.
|
||||
Patch19: x86-cpuid-level2.patch
|
||||
|
||||
### Locale related patches
|
||||
# PATCH-FIX-OPENSUSE Add additional locales
|
||||
Patch100: glibc-2.3.locales.diff.bz2
|
||||
# PATCH-FIX-OPENSUSE Support pre-EURO currencies (XXX: Still needed?)
|
||||
Patch101: glibc-2.4.90-revert-only-euro.diff
|
||||
# PATCH-FIX-OPENSUSE -- Add no_NO back (XXX: Still needed?)
|
||||
Patch102: glibc-2.4.90-no_NO.diff
|
||||
# PATCH-FIX-OPENSUSE -- Renames for China
|
||||
Patch103: glibc-2.4-china.diff
|
||||
# PATCH-FIX-OPENSUSE Fix gb18030 code bnc#54080
|
||||
Patch104: gb18030.patch.bz2
|
||||
|
||||
### Broken patches in glibc that we revert for now:
|
||||
# PATCH-FEATURE-OPENSUSE Revert sunrpc removal aj@suse.de
|
||||
Patch200: glibc2.14-revert-sunrpc-removal.patch
|
||||
# PATCH-FIX-OPENSUSE revert seeking on fclose for now bnc#711829 matz@suse.de
|
||||
Patch201: glibc-revert-fseek-on-fclose.diff
|
||||
# PATCH-FIX-OPENSUSE revert pthread-cond-wait change since it causes hangs - aj@suse.de
|
||||
Patch202: pthread-cond-wait-revert.patch
|
||||
|
||||
### Network related patches
|
||||
# PATCH-FIX-OPENSUSE reload /etc/resolv.conf on change
|
||||
Patch300: glibc-resolv-reload.diff
|
||||
# PATCH-FIX-OPENSUSE Fix hangs in UDP RPC calls bso#5379 bnc#257745 aj@suse.de
|
||||
Patch301: glibc-2.2-sunrpc.diff
|
||||
# PATCH-FIX-OPENSUSE only use ipv6 if real ipv6 address exists bnc#361697, bnc#684534
|
||||
Patch302: getaddrinfo-ipv6-sanity.diff
|
||||
# PATCH-FIX-OPENSUSE Consider private IPv4 addresses as global-scope in gai.conf [bnc#597616]
|
||||
Patch303: glibc-gai-private4.diff
|
||||
# PATCH-FIX-OPENSUSE Warn about usage of mdns in resolv.conv
|
||||
Patch304: glibc-resolv-mdnshint.diff
|
||||
# PATCH-FIX-OPENSUSE nscd does not account for 'multi on' in /etc/host.conf when ai-resolving host bso#11928
|
||||
Patch305: glibc-nscd-hconf.diff
|
||||
# PATCH-FIX-OPENSUSE disable rewriting ::1 to 127.0.0.1 for /etc/hosts bnc#684534, bnc#706719
|
||||
Patch306: glibc-fix-double-loopback.diff
|
||||
|
||||
### Misc patches
|
||||
# PATCH-FIX-OPENSUSE don't use unwind tables for initfini (solved differently for glibc 2.16)
|
||||
Patch400: glibc-no-unwind-tables.diff
|
||||
# FIX-OPENSUSE compile some files with -fno-strict-aliasing
|
||||
Patch401: glibc-strict-aliasing.diff
|
||||
# PATCH-FIX-OPENSUSE avoid false positive warning that triggers brp postcheck fail
|
||||
Patch402: nscd-avoid-gcc-warning.diff
|
||||
|
||||
###
|
||||
# Patches from upstream
|
||||
@ -269,6 +268,8 @@ Patch1007: glibc-2.16-fix-check-abi.patch
|
||||
Patch1008: glibc-2.16-fix-check-localplt.patch
|
||||
# PATCH-FIX-UPSTREAM - Allow compilation with -altivec aj@suse.de
|
||||
Patch1009: glibc-uio-cell.diff
|
||||
# PATCH-FIX-UPSTREAM - do not use initfini anymore
|
||||
Patch1010: glibc-2.16-powerpc-initfini.patch
|
||||
|
||||
###
|
||||
# Patches awaiting upstream approval
|
||||
@ -279,6 +280,18 @@ Patch2001: glibc-resolv-assert.diff
|
||||
Patch2002: armhf-ld-so.patch
|
||||
# PATCH-FIX-UPSTREAM Fix crash when nscd is not running (bso#135949) - aj@suse.de
|
||||
Patch2003: glibc-nscd-crash-bso13594.patch
|
||||
# PATCH-FIX-OPENSUSE Fix crash (access-after-free) in dl_lookup_x bnc#703140, bso#13579 matz@suse.de
|
||||
Patch2004: glibc-fix-noload.patch
|
||||
# PATCH-FIX-OPENSUSE bnc#657627, http://sourceware.org/bugzilla/show_bug.cgi?id=12561
|
||||
Patch2005: glibc-elf-localscope.diff
|
||||
# PATCH-FIX-OPENSUSE Fix cycle detection - aj@suse.de
|
||||
Patch2006: cycle-detection.patch
|
||||
# PATCH-FIX-OPENSUSE Fix cycle detection 2 (from Fedora) - aj@suse.de
|
||||
Patch2007: glibc-sw13618-2.patch
|
||||
# PATCH-FIX-OPENSUSE Fix LD_PROFILE (glibc bug#13818) - aj@suse.de
|
||||
Patch2008: glibc-ld-profile.patch
|
||||
# PATCH-FIX-OPENSUSE _fini does not have proper unwinding information on x86_64 bso#11610
|
||||
Patch2009: glibc-fini-unwind.diff
|
||||
|
||||
%description
|
||||
The GNU C Library provides the most important standard libraries used
|
||||
@ -460,81 +473,87 @@ versions of your software.
|
||||
# Owl crypt_blowfish
|
||||
tar -xzf %SOURCE50
|
||||
pushd crypt_blowfish-%{crypt_bf_version}
|
||||
%patch80 -p1
|
||||
%patch81 -p1
|
||||
%patch82
|
||||
%patch3 -p1
|
||||
%patch4 -p1
|
||||
%patch5
|
||||
popd
|
||||
mv crypt/{crypt.h,gnu-crypt.h}
|
||||
mv crypt_blowfish-%crypt_bf_version/*.[chS] crypt/
|
||||
#
|
||||
%patch0
|
||||
# libNoVersion part is only active on ix86
|
||||
%patch1 -p1
|
||||
%patch3
|
||||
%patch4
|
||||
%patch5 -p1
|
||||
%patch2 -p1
|
||||
%patch6 -p1
|
||||
%patch7
|
||||
%patch8
|
||||
%patch12
|
||||
%patch14
|
||||
%patch16 -p1
|
||||
%patch20 -p1
|
||||
%patch21 -p1
|
||||
%patch7 -p1
|
||||
%patch8 -p1
|
||||
# avoid changing nscd_stat.c mtime to avoid code generation
|
||||
# differences on each rebuild
|
||||
touch -r nscd/nscd_stat.c nscd/s-stamp
|
||||
%patch22
|
||||
%patch23
|
||||
%patch9 -p1
|
||||
touch -r nscd/s-stamp nscd/nscd_stat.c
|
||||
rm nscd/s-stamp
|
||||
%patch25
|
||||
%patch28 -p1
|
||||
%patch29
|
||||
%patch30
|
||||
%patch33 -p1
|
||||
%patch36 -p1
|
||||
%patch38
|
||||
%patch1009 -p1
|
||||
%patch45
|
||||
%patch46 -p1
|
||||
%patch47 -p1
|
||||
%patch49
|
||||
# XXX: Does not pass testsuite, still there's no better solution yet
|
||||
%patch52
|
||||
%patch58 -p1
|
||||
%patch65 -p1
|
||||
%patch66 -p1
|
||||
%patch67 -p1
|
||||
# XXX Patch 69 replaces 68, remove soon
|
||||
#%patch68 -p1
|
||||
%patch69 -p1
|
||||
%patch71 -p1
|
||||
%patch2001 -p1
|
||||
%patch74 -p1
|
||||
%patch10 -p1
|
||||
%patch11 -p1
|
||||
%patch12 -p1
|
||||
%patch13 -p1
|
||||
%patch14 -p1
|
||||
%patch15 -p1
|
||||
%patch16 -p1
|
||||
%patch17 -p1
|
||||
%patch18 -p1
|
||||
# This should be fixed in valgrind now
|
||||
#%patch19 -p1
|
||||
|
||||
%patch100 -p1
|
||||
%patch101 -p1
|
||||
%patch102 -p1
|
||||
%patch103 -p1
|
||||
%patch104 -p1
|
||||
|
||||
%patch200 -p1
|
||||
%patch201 -p1
|
||||
%patch202 -p1 -R
|
||||
|
||||
%patch300 -p1
|
||||
%patch301 -p1
|
||||
%patch302 -p1
|
||||
%patch303 -p1
|
||||
%patch304 -p1
|
||||
%patch305 -p1
|
||||
%patch306 -p1
|
||||
|
||||
%patch400 -p1
|
||||
%patch401 -p1
|
||||
%patch402 -p1
|
||||
|
||||
%patch1000 -p1
|
||||
%patch84 -p1
|
||||
%patch87 -p1
|
||||
%patch88 -p1 -R
|
||||
%patch1001 -p1
|
||||
%patch1002 -p1
|
||||
%patch1003 -p1
|
||||
%patch1004 -p1
|
||||
%patch1005 -p1
|
||||
%patch95 -p1
|
||||
# XXX Disable, it breaks the testsuite, test elf/tst-audit2
|
||||
# %patch96 -p1
|
||||
%patch97 -p1
|
||||
%patch2003 -p1
|
||||
%patch1006 -p1
|
||||
%patch100 -p1
|
||||
%patch1007 -p1
|
||||
%patch1008 -p1
|
||||
%ifarch armv7l
|
||||
# Disable for now
|
||||
#%patch2002 -p1
|
||||
%patch1009 -p1
|
||||
%ifarch ppc ppc64
|
||||
# to support further architectures, some more changes are needed
|
||||
%patch1010 -p1
|
||||
%endif
|
||||
|
||||
%patch2001 -p1
|
||||
%ifarch armv7l
|
||||
%patch2002 -p1
|
||||
%endif
|
||||
%patch2003 -p1
|
||||
%patch2004 -p1
|
||||
# XXX: Does not pass testsuite, still there's no better solution yet
|
||||
%patch2005 -p1
|
||||
%patch2006 -p1
|
||||
%patch2007 -p1
|
||||
# XXX Disable, it breaks the testsuite, test elf/tst-audit2
|
||||
# %patch2008 -p1
|
||||
%patch2009 -p1
|
||||
|
||||
#
|
||||
# Inconsistency detected by ld.so: dl-close.c: 719: _dl_close: Assertion `map->l_init_called' failed!
|
||||
#
|
||||
@ -664,13 +683,17 @@ configure_and_build_glibc() {
|
||||
conf_cflags="$cflags"
|
||||
%endif
|
||||
|
||||
profile="--disable-profile"
|
||||
%if %{build_profile}
|
||||
if [ "$dirname" = "base" ] ; then
|
||||
profile="--enable-profile"
|
||||
fi
|
||||
%endif
|
||||
CFLAGS="$conf_cflags" CC="$BuildCC" CXX="$BuildCCplus" ../configure \
|
||||
--prefix=%{_prefix} \
|
||||
--libexecdir=%{_libdir} --infodir=%{_infodir} \
|
||||
--enable-add-ons=nptl$addons \
|
||||
%if %{build_profile}
|
||||
--enable-profile \
|
||||
%endif
|
||||
$profile \
|
||||
"$@" \
|
||||
%if %{enable_stackguard_randomization}
|
||||
--enable-stackguard-randomization \
|
||||
@ -916,8 +939,8 @@ cp -av bits/stdio-lock.h %{buildroot}%{_includedir}/bits/stdio-lock.h
|
||||
|
||||
install -m 0700 glibc_post_upgrade %{buildroot}%{_sbindir}
|
||||
|
||||
install -m 644 $RPM_SOURCE_DIR/bindresvport.blacklist %{buildroot}/etc
|
||||
install -m 644 $RPM_SOURCE_DIR/nsswitch.conf %{buildroot}/etc
|
||||
install -m 644 %{SOURCE7} %{buildroot}/etc
|
||||
install -m 644 %{SOURCE5} %{buildroot}/etc
|
||||
install -m 644 posix/gai.conf %{buildroot}/etc
|
||||
|
||||
mkdir -p %{buildroot}/etc/default
|
||||
@ -944,7 +967,7 @@ popd
|
||||
|
||||
cp nscd/nscd.conf %{buildroot}/etc
|
||||
mkdir -p %{buildroot}/etc/init.d
|
||||
install -m 755 $RPM_SOURCE_DIR/nscd.init %{buildroot}/etc/init.d/nscd
|
||||
install -m 755 %{SOURCE6} %{buildroot}/etc/init.d/nscd
|
||||
ln -sf /etc/init.d/nscd %{buildroot}/usr/sbin/rcnscd
|
||||
mkdir -p %{buildroot}/var/run/nscd
|
||||
touch %{buildroot}/var/run/nscd/{passwd,group,hosts}
|
||||
@ -998,7 +1021,7 @@ install -m 644 %{SOURCE22} %{buildroot}/lib/systemd/system
|
||||
|
||||
%ifarch armv7l
|
||||
# Provide compatibility link
|
||||
# XXX ln -s ld-%{version}.so %{buildroot}/lib/ld-linux.so.3
|
||||
ln -s ld-%{version}.so %{buildroot}/lib/ld-linux.so.3
|
||||
%endif
|
||||
|
||||
#######################################################################
|
||||
@ -1077,7 +1100,7 @@ exit 0
|
||||
# Each architecture has a different name for the dynamic linker:
|
||||
%ifarch %arm
|
||||
%ifarch armv7l
|
||||
#XXX /%{_lib}/ld-linux-armhf.so.3
|
||||
/%{_lib}/ld-linux-armhf.so.3
|
||||
# Keep compatibility link
|
||||
/%{_lib}/ld-linux.so.3
|
||||
%else
|
||||
|
Loading…
Reference in New Issue
Block a user