aboutsummaryrefslogtreecommitdiffstats
path: root/glibc/glibc-cvs
diff options
context:
space:
mode:
Diffstat (limited to 'glibc/glibc-cvs')
-rw-r--r--glibc/glibc-cvs/arm-ioperm.patch13
-rw-r--r--glibc/glibc-cvs/arm-longlong.patch59
-rw-r--r--glibc/glibc-cvs/arm-machine-gmon.patch11
-rw-r--r--glibc/glibc-cvs/arm-no-hwcap.patch11
-rw-r--r--glibc/glibc-cvs/dyn-ldconfig.patch62
-rw-r--r--glibc/glibc-cvs/fhs-linux-paths.patch11
-rw-r--r--glibc/glibc-cvs/ldconfig.patch37
-rw-r--r--glibc/glibc-cvs/ldd.patch38
-rw-r--r--glibc/glibc-cvs/ldsocache-varrun.patch18
-rw-r--r--glibc/glibc-cvs/makeconfig.patch15
-rw-r--r--glibc/glibc-cvs/mips-no-throw.patch22
-rw-r--r--glibc/glibc-cvs/noinfo.patch52
12 files changed, 349 insertions, 0 deletions
diff --git a/glibc/glibc-cvs/arm-ioperm.patch b/glibc/glibc-cvs/arm-ioperm.patch
index e69de29bb2..ae9423ef55 100644
--- a/glibc/glibc-cvs/arm-ioperm.patch
+++ b/glibc/glibc-cvs/arm-ioperm.patch
@@ -0,0 +1,13 @@
+--- sysdeps/unix/sysv/linux/arm/ioperm.c 20 Feb 2003 22:22:35 -0000 1.6
++++ sysdeps/unix/sysv/linux/arm/ioperm.c 24 Oct 2003 20:59:38 -0000
+@@ -100,8 +100,8 @@
+ {
+ char systype[256];
+ int i, n;
+- static int iobase_name[] = { CTL_BUS, BUS_ISA, BUS_ISA_PORT_BASE };
+- static int ioshift_name[] = { CTL_BUS, BUS_ISA, BUS_ISA_PORT_SHIFT };
++ static int iobase_name[] = { CTL_BUS, CTL_BUS_ISA, BUS_ISA_PORT_BASE };
++ static int ioshift_name[] = { CTL_BUS, CTL_BUS_ISA, BUS_ISA_PORT_SHIFT };
+ size_t len = sizeof(io.base);
+
+ if (! sysctl (iobase_name, 3, &io.io_base, &len, NULL, 0)
diff --git a/glibc/glibc-cvs/arm-longlong.patch b/glibc/glibc-cvs/arm-longlong.patch
index e69de29bb2..dfb9309b7b 100644
--- a/glibc/glibc-cvs/arm-longlong.patch
+++ b/glibc/glibc-cvs/arm-longlong.patch
@@ -0,0 +1,59 @@
+--- stdlib/longlong.h~ 2002-09-29 18:45:58.000000000 +0100
++++ stdlib/longlong.h 2004-03-20 19:16:44.000000000 +0000
+@@ -210,6 +210,14 @@
+ "rI" ((USItype) (bh)), \
+ "r" ((USItype) (al)), \
+ "rI" ((USItype) (bl)))
++/* v3m and all higher arches have long multiply support. */
++#if !defined(__ARM_ARCH_2__) && !defined(__ARM_ARCH_3__)
++#define umul_ppmm(xh, xl, a, b) \
++ __asm__ ("umull %0,%1,%2,%3" : "=&r" (xl), "=&r" (xh) : "r" (a), "r" (b))
++#define UMUL_TIME 5
++#define smul_ppmm(xh, xl, a, b) \
++ __asm__ ("smull %0,%1,%2,%3" : "=&r" (xl), "=&r" (xh) : "r" (a), "r" (b))
++#else
+ #define umul_ppmm(xh, xl, a, b) \
+ {register USItype __t0, __t1, __t2; \
+ __asm__ ("%@ Inlined umul_ppmm\n" \
+@@ -231,7 +239,14 @@
+ : "r" ((USItype) (a)), \
+ "r" ((USItype) (b)));}
+ #define UMUL_TIME 20
++#endif
+ #define UDIV_TIME 100
++
++#if defined(__ARM_ARCH_5__) || defined(__ARM_ARCH_5T__) || defined(__ARM_ARCH_5TE__)
++#define count_leading_zeros(COUNT,X) ((COUNT) = __builtin_clz (X))
++#define COUNT_LEADING_ZEROS_0 32
++#endif
++
+ #endif /* __arm__ */
+
+ #if defined (__hppa) && W_TYPE_SIZE == 32
+--- /dev/null 2004-02-02 20:32:13.000000000 +0000
++++ sysdeps/arm/mp_clz_tab.c 2004-03-20 19:24:26.000000000 +0000
+@@ -0,0 +1,24 @@
++/* __clz_tab -- support for longlong.h
++ Copyright (C) 2004 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, write to the Free
++ Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
++ 02111-1307 USA. */
++
++#if defined(__ARM_ARCH_5__) || defined(__ARM_ARCH_5T__) || defined(__ARM_ARCH_5TE__)
++/* Nothing required. */
++#else
++#include <sysdeps/generic/mp_clz_tab.c>
++#endif
diff --git a/glibc/glibc-cvs/arm-machine-gmon.patch b/glibc/glibc-cvs/arm-machine-gmon.patch
index e69de29bb2..0fa789d86b 100644
--- a/glibc/glibc-cvs/arm-machine-gmon.patch
+++ b/glibc/glibc-cvs/arm-machine-gmon.patch
@@ -0,0 +1,11 @@
+--- sysdeps/arm/machine-gmon.h~ 2001-07-06 00:55:48.000000000 -0400
++++ sysdeps/arm/machine-gmon.h 2004-04-25 03:56:20.000000000 -0400
+@@ -35,7 +35,7 @@
+ static void mcount_internal (u_long frompc, u_long selfpc);
+
+ #define _MCOUNT_DECL(frompc, selfpc) \
+-static void mcount_internal (u_long frompc, u_long selfpc)
++static __attribute__((used)) void mcount_internal (u_long frompc, u_long selfpc)
+
+ /* This macro/func MUST save r0, r1 because the compiler inserts
+ blind calls to _mount(), ignoring the fact that _mcount may
diff --git a/glibc/glibc-cvs/arm-no-hwcap.patch b/glibc/glibc-cvs/arm-no-hwcap.patch
index e69de29bb2..17bfdcd125 100644
--- a/glibc/glibc-cvs/arm-no-hwcap.patch
+++ b/glibc/glibc-cvs/arm-no-hwcap.patch
@@ -0,0 +1,11 @@
+--- sysdeps/unix/sysv/linux/arm/dl-procinfo.h Mon Jul 23 12:57:23 2001
++++ sysdeps/unix/sysv/linux/arm/dl-procinfo.h Sun Feb 10 06:37:00 2002
+@@ -67,7 +67,7 @@
+ HWCAP_ARM_VFP = 1 << 6,
+ HWCAP_ARM_EDSP = 1 << 7,
+
+- HWCAP_IMPORTANT = (HWCAP_ARM_HALF | HWCAP_ARM_FAST_MULT)
++ HWCAP_IMPORTANT = HWCAP_ARM_FAST_MULT
+ };
+
+ static inline int
diff --git a/glibc/glibc-cvs/dyn-ldconfig.patch b/glibc/glibc-cvs/dyn-ldconfig.patch
index e69de29bb2..1041965d05 100644
--- a/glibc/glibc-cvs/dyn-ldconfig.patch
+++ b/glibc/glibc-cvs/dyn-ldconfig.patch
@@ -0,0 +1,62 @@
+--- elf/Makefile 13 Mar 2003 21:50:57 -0000 1.258
++++ elf/Makefile 27 Mar 2003 20:36:07 -0000
+@@ -109,12 +109,13 @@
+
+ ifeq (yes,$(use-ldconfig))
+ ifeq (yes,$(build-shared))
+-others-static += ldconfig
++#others-static += ldconfig
+ others += ldconfig
+ install-rootsbin += ldconfig
+
+ ldconfig-modules := cache readlib xmalloc xstrdup chroot_canon
+ extra-objs += $(ldconfig-modules:=.o)
++CPPFLAGS-readlib.c = -DNOT_IN_libc=1
+
+ # To find xmalloc.c and xstrdup.c
+ vpath %.c ../locale/programs
+--- elf/ldconfig.c 13 Jan 2003 08:53:14 -0000 1.31
++++ elf/ldconfig.c 27 Mar 2003 20:36:09 -0000
+@@ -149,6 +149,9 @@
+ static int
+ is_hwcap_platform (const char *name)
+ {
++#if 1
++ return 0;
++#else
+ int hwcap_idx = _dl_string_hwcap (name);
+
+ if (hwcap_idx != -1 && ((1 << hwcap_idx) & hwcap_mask))
+@@ -164,6 +167,7 @@
+ #endif
+
+ return 0;
++#endif
+ }
+
+ /* Get hwcap (including platform) encoding of path. */
+@@ -175,6 +179,7 @@
+ uint64_t hwcap = 0;
+ uint64_t h;
+
++#if 0
+ size_t len;
+
+ len = strlen (str);
+@@ -210,6 +215,7 @@
+ *ptr = '\0';
+ }
+
++#endif
+ free (str);
+ return hwcap;
+ }
+--- elf/Versions.old 2004-06-26 13:18:35.000000000 +0100
++++ elf/Versions 2004-06-26 14:41:09.000000000 +0100
+@@ -54,5 +54,6 @@
+ _dl_get_tls_static_info; _dl_allocate_tls_init;
+ _dl_tls_setup; _dl_rtld_di_serinfo;
+ _dl_make_stack_executable;
++ _dl_cache_libcmp;
+ }
+ }
diff --git a/glibc/glibc-cvs/fhs-linux-paths.patch b/glibc/glibc-cvs/fhs-linux-paths.patch
index e69de29bb2..1f32f6d7f2 100644
--- a/glibc/glibc-cvs/fhs-linux-paths.patch
+++ b/glibc/glibc-cvs/fhs-linux-paths.patch
@@ -0,0 +1,11 @@
+--- glibc-2.1.1/sysdeps/unix/sysv/linux/paths.h~ Thu May 27 13:16:33 1999
++++ glibc-2.1.1/sysdeps/unix/sysv/linux/paths.h Thu May 27 13:17:55 1999
+@@ -71,7 +71,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/misc/"
+ #define _PATH_VARRUN "/var/run/"
+ #define _PATH_VARTMP "/var/tmp/"
+
diff --git a/glibc/glibc-cvs/ldconfig.patch b/glibc/glibc-cvs/ldconfig.patch
index e69de29bb2..c60b9b1432 100644
--- a/glibc/glibc-cvs/ldconfig.patch
+++ b/glibc/glibc-cvs/ldconfig.patch
@@ -0,0 +1,37 @@
+--- elf/ldconfig.c 2003-07-08 23:26:27.000000000 +0900
++++ elf/ldconfig.c.debian 2003-07-08 23:29:43.000000000 +0900
+@@ -920,26 +920,24 @@
+ {
+ FILE *file = NULL;
+ char *line = NULL;
+- const char *canon;
++ const char *canon = filename;
+ size_t len = 0;
++ int file_fd;
+
+ if (opt_chroot)
+ {
+ canon = chroot_canon (opt_chroot, filename);
+- if (canon)
+- file = fopen (canon, "r");
+- else
++ if (!canon)
+ canon = filename;
+ }
+- else
+- {
+- canon = filename;
+- file = fopen (filename, "r");
+- }
++
++ if ((file_fd = open(canon, O_RDONLY | O_EXCL, 0022)) != -1)
++ file = fdopen (file_fd, "r");
+
+ if (file == NULL)
+ {
+- error (0, errno, _("Can't open configuration file %s"), canon);
++ if (opt_verbose)
++ error (0, errno, _("Can't open configuration file %s"), canon);
+ if (canon != filename)
+ free ((char *) canon);
+ return;
diff --git a/glibc/glibc-cvs/ldd.patch b/glibc/glibc-cvs/ldd.patch
index e69de29bb2..01719dbe08 100644
--- a/glibc/glibc-cvs/ldd.patch
+++ b/glibc/glibc-cvs/ldd.patch
@@ -0,0 +1,38 @@
+--- elf/ldd.bash.in~ Tue Apr 3 21:43:31 2001
++++ elf/ldd.bash.in Tue Apr 3 21:54:15 2001
+@@ -32,6 +32,7 @@
+ warn=
+ bind_now=
+ verbose=
++filename_magic_regex="((^|/)lib|.so$)"
+
+ while test $# -gt 0; do
+ case "$1" in
+@@ -123,8 +124,11 @@
+ echo "ldd: ${file}:" $"No such file or directory" >&2
+ result=1
+ elif test -r "$file"; then
+- test -x "$file" || echo 'ldd:' $"\
+-warning: you do not have execution permission for" "\`$file'" >&2
++ if test ! -x "$file" && eval echo "$file" \
++ | egrep -v "$filename_magic_regex" > /dev/null; then
++ echo 'ldd:' $"warning: you do not have execution permission for"\
++ "\`$file'" >&2
++ fi
+ RTLD=
+ for rtld in ${RTLDLIST}; do
+ if test -x $rtld; then
+@@ -143,7 +147,12 @@
+ fi
+ case $ret in
+ 0)
+- eval $add_env '"$file"' || result=1
++ if [ ! -x "$file" ] && eval file -L "$file" 2>/dev/null \
++ | sed 10q | egrep "$file_magic_regex" > /dev/null; then
++ eval $add_env ${RTLD} '"$file"' || result=1
++ else
++ eval $add_env '"$file"' || result=1
++ fi
+ ;;
+ 1)
+ # This can be a non-ELF binary or no binary at all.
diff --git a/glibc/glibc-cvs/ldsocache-varrun.patch b/glibc/glibc-cvs/ldsocache-varrun.patch
index e69de29bb2..9994d4f879 100644
--- a/glibc/glibc-cvs/ldsocache-varrun.patch
+++ b/glibc/glibc-cvs/ldsocache-varrun.patch
@@ -0,0 +1,18 @@
+This patch moves ld.so.cache from /etc to /var/run. This is for devices
+where /etc is JFFS2 or CRAMFS but /var is a ramdisk.
+
+#
+# Patch managed by http://www.mn-logistik.de/unsupported/pxa250/patcher
+#
+
+--- libc/sysdeps/generic/dl-cache.h~ldsocache-varrun
++++ libc/sysdeps/generic/dl-cache.h
+@@ -29,7 +29,7 @@
+ #endif
+
+ #ifndef LD_SO_CACHE
+-# define LD_SO_CACHE SYSCONFDIR "/ld.so.cache"
++# define LD_SO_CACHE "/var/run/ld.so.cache"
+ #endif
+
+ #ifndef add_system_dir
diff --git a/glibc/glibc-cvs/makeconfig.patch b/glibc/glibc-cvs/makeconfig.patch
index e69de29bb2..4365878e95 100644
--- a/glibc/glibc-cvs/makeconfig.patch
+++ b/glibc/glibc-cvs/makeconfig.patch
@@ -0,0 +1,15 @@
+--- Makeconfig~ 2001/09/12 18:49:45 1.265
++++ Makeconfig 2001/10/07 20:56:17
+@@ -532,10 +532,11 @@
+ $(subst $(empty) ,:,$(strip $(patsubst -Wl$(comma)-rpath-link=%, %,\
+ $(filter -Wl$(comma)-rpath-link=%,\
+ $(sysdep-LDFLAGS)))))
++ld_envlib_path = $(shell test x$$LD_LIBRARY_PATH = x || echo -n :$$LD_LIBRARY_PATH)
+ run-program-prefix = $(if $(filter $(notdir $(built-program-file)),\
+ $(tests-static)),, \
+ $(elf-objpfx)$(rtld-installed-name) \
+- --library-path $(rpath-link)$(patsubst %,:%,$(sysdep-library-path)))
++ --library-path $(rpath-link)$(patsubst %,:%,$(sysdep-library-path))$(ld_envlib_path))
+ else
+ run-program-prefix =
+ endif
diff --git a/glibc/glibc-cvs/mips-no-throw.patch b/glibc/glibc-cvs/mips-no-throw.patch
index e69de29bb2..99a316eeac 100644
--- a/glibc/glibc-cvs/mips-no-throw.patch
+++ b/glibc/glibc-cvs/mips-no-throw.patch
@@ -0,0 +1,22 @@
+--- sysdeps/unix/sysv/linux/mips/bits/socket.h.orig 2004-09-15 14:27:06.342572280 +0200
++++ sysdeps/unix/sysv/linux/mips/bits/socket.h 2004-09-15 14:27:28.162255184 +0200
+@@ -261,7 +261,7 @@
+ # define _EXTERN_INLINE extern __inline
+ # endif
+ _EXTERN_INLINE struct cmsghdr *
+-__cmsg_nxthdr (struct msghdr *__mhdr, struct cmsghdr *__cmsg) __THROW
++__cmsg_nxthdr (struct msghdr *__mhdr, struct cmsghdr *__cmsg)
+ {
+ if ((size_t) __cmsg->cmsg_len < sizeof (struct cmsghdr))
+ /* The kernel header does this so there may be a reason. */
+--- sysdeps/unix/sysv/linux/mips/sys/tas.h.orig 2004-09-15 14:27:41.809180536 +0200
++++ sysdeps/unix/sysv/linux/mips/sys/tas.h 2004-09-15 14:27:53.245441960 +0200
+@@ -35,7 +35,7 @@
+ # endif
+
+ _EXTERN_INLINE int
+-_test_and_set (int *p, int v) __THROW
++_test_and_set (int *p, int v)
+ {
+ int r, t;
+
diff --git a/glibc/glibc-cvs/noinfo.patch b/glibc/glibc-cvs/noinfo.patch
index e69de29bb2..6aa0e64d96 100644
--- a/glibc/glibc-cvs/noinfo.patch
+++ b/glibc/glibc-cvs/noinfo.patch
@@ -0,0 +1,52 @@
+--- glibc-2.3.2/manual/Makefile~noinfo
++++ glibc-2.3.2/manual/Makefile
+@@ -25,7 +25,7 @@
+ INSTALL_INFO = install-info
+
+ .PHONY: all dvi pdf info html
+-all: dvi
++all:
+ dvi: libc.dvi
+ pdf: libc.pdf
+
+@@ -41,7 +41,7 @@
+ TEXI2PDF = texi2dvi --pdf
+
+ ifneq ($(strip $(MAKEINFO)),:)
+-all: info
++all:
+ info: libc.info dir-add.info
+ endif
+
+@@ -176,28 +176,14 @@
+ -rm -f top-menu.texi chapters.texi
+
+ .PHONY: install subdir_install installdirs install-data
+-install-data subdir_install: install
++install-data subdir_install:
+ ifneq ($(strip $(MAKEINFO)),:)
+ # There are two variants of install-info out there. The GNU version
+ # knows about the INFO-DIR-SECTION tag, the Debian version doesn't.
+ ifneq ($(OLD_DEBIAN_INSTALL_INFO),yes)
+-install: $(inst_infodir)/libc.info dir-add.info
+- @if $(SHELL) -c '$(INSTALL_INFO) --version' >/dev/null 2>&1; then \
+- test -f $(inst_infodir)/dir || $(INSTALL_DATA) dir $(inst_infodir);\
+- $(INSTALL_INFO) --info-dir=$(inst_infodir) $(inst_infodir)/libc.info;\
+- $(INSTALL_INFO) --info-dir=$(inst_infodir) dir-add.info;\
+- else : ; fi
++install:
+ else
+-install: $(inst_infodir)/libc.info dir-add.info
+- @if $(SHELL) -c '$(INSTALL_INFO) --version' >/dev/null 2>&1; then \
+- test -f $(inst_infodir)/dir || $(INSTALL_DATA) dir $(inst_infodir);\
+- $(INSTALL_INFO) --info-dir=$(inst_infodir) \
+- --section '^GNU Libraries:' 'GNU Libraries:' \
+- $(inst_infodir)/libc.info;\
+- $(INSTALL_INFO) --info-dir=$(inst_infodir) \
+- --section '^GNU C Library functions:' 'GNU C Library functions:' \
+- dir-add.info;\
+- else : ; fi
++install:
+ endif
+ endif
+ # Catchall implicit rule for other installation targets from the parent.