diff options
author | Ned Ludd <solar@gentoo.org> | 2003-11-21 06:02:17 +0000 |
---|---|---|
committer | Ned Ludd <solar@gentoo.org> | 2003-11-21 06:02:17 +0000 |
commit | 4e2361c425fa344b3acd686edac0f32377bf1182 (patch) | |
tree | da9a1046d76a1cfc12023e2604c53c3f00b3b126 /dev-libs/uclibc | |
parent | updated etdyn patches. no major functionality changes to revision bump, remov... (diff) | |
download | gentoo-2-4e2361c425fa344b3acd686edac0f32377bf1182.tar.gz gentoo-2-4e2361c425fa344b3acd686edac0f32377bf1182.tar.bz2 gentoo-2-4e2361c425fa344b3acd686edac0f32377bf1182.zip |
updated etdyn patches. no major functionality changes to revision bump, removed buggy 0.9.22 code from portage
Diffstat (limited to 'dev-libs/uclibc')
-rw-r--r-- | dev-libs/uclibc/ChangeLog | 9 | ||||
-rw-r--r-- | dev-libs/uclibc/Manifest | 2 | ||||
-rw-r--r-- | dev-libs/uclibc/files/0.9.23/uClibc-0.9.23-etdyn.patch | 27 | ||||
-rw-r--r-- | dev-libs/uclibc/files/0.9.23/uClibc-0.9.23-flipturn.patch | 28 | ||||
-rw-r--r-- | dev-libs/uclibc/files/digest-uclibc-0.9.22 | 1 | ||||
-rw-r--r-- | dev-libs/uclibc/files/uClibc-0.9.22-etdyn.patch | 151 | ||||
-rw-r--r-- | dev-libs/uclibc/files/uClibc-0.9.22-pax.patch | 82 | ||||
-rw-r--r-- | dev-libs/uclibc/uclibc-0.9.22.ebuild | 54 |
8 files changed, 37 insertions, 317 deletions
diff --git a/dev-libs/uclibc/ChangeLog b/dev-libs/uclibc/ChangeLog index a19775642e7d..8305bb0d661d 100644 --- a/dev-libs/uclibc/ChangeLog +++ b/dev-libs/uclibc/ChangeLog @@ -1,6 +1,13 @@ # ChangeLog for dev-libs/uclibc # Copyright 2002-2003 Gentoo Technologies, Inc.; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/dev-libs/uclibc/ChangeLog,v 1.10 2003/11/16 00:20:59 solar Exp $ +# $Header: /var/cvsroot/gentoo-x86/dev-libs/uclibc/ChangeLog,v 1.11 2003/11/21 06:02:14 solar Exp $ + + 21 Nov 2003; <solar@gentoo.org> uclibc-0.9.22.ebuild, + files/uClibc-0.9.22-etdyn.patch, files/uClibc-0.9.22-pax.patch, + files/0.9.23/uClibc-0.9.23-etdyn.patch, + files/0.9.23/uClibc-0.9.23-flipturn.patch: + updated etdyn patches. no major functional changes to revision bump, removed + buggy 0.9.22 code from portage *uclibc-0.9.23 (15 Nov 2003) diff --git a/dev-libs/uclibc/Manifest b/dev-libs/uclibc/Manifest index 98240c61672c..06ef4a807411 100644 --- a/dev-libs/uclibc/Manifest +++ b/dev-libs/uclibc/Manifest @@ -1,4 +1,4 @@ -MD5 45021570ef2f0dc653b8b038fdb9a549 ChangeLog 2601 +MD5 683db2b580f55787892de48d27ee9505 ChangeLog 2601 MD5 d376f22663da6a652b88a001974e1ee4 uclibc-0.9.19.ebuild 1003 MD5 41a8b11a4a34ad8ec8f82e77c2285a9c uclibc-0.9.20.ebuild 1072 MD5 a142a3231675fe38e60530e5204df538 uclibc-0.9.23.ebuild 1396 diff --git a/dev-libs/uclibc/files/0.9.23/uClibc-0.9.23-etdyn.patch b/dev-libs/uclibc/files/0.9.23/uClibc-0.9.23-etdyn.patch index f0e00371b63a..e841e2726a7c 100644 --- a/dev-libs/uclibc/files/0.9.23/uClibc-0.9.23-etdyn.patch +++ b/dev-libs/uclibc/files/0.9.23/uClibc-0.9.23-etdyn.patch @@ -1,6 +1,6 @@ diff -Nru uClibc-0.9.23/libc/misc/internals/Makefile uClibc-0.9.23-etdyn/libc/misc/internals/Makefile --- uClibc-0.9.23/libc/misc/internals/Makefile 2003-10-18 06:18:58.000000000 -0400 -+++ uClibc-0.9.23-etdyn/libc/misc/internals/Makefile 2003-11-15 18:56:41.000000000 -0500 ++++ uClibc-0.9.23-etdyn/libc/misc/internals/Makefile 2003-11-21 00:51:26.000000000 -0500 @@ -47,6 +47,7 @@ interp.o: interp.c $(CC) $(CFLAGS) -c $< -o $@ @@ -11,7 +11,7 @@ diff -Nru uClibc-0.9.23/libc/misc/internals/Makefile uClibc-0.9.23-etdyn/libc/mi $(CC) $(CFLAGS) -c $< -o $@ diff -Nru uClibc-0.9.23/libc/sysdeps/linux/i386/Makefile uClibc-0.9.23-etdyn/libc/sysdeps/linux/i386/Makefile --- uClibc-0.9.23/libc/sysdeps/linux/i386/Makefile 2003-11-08 16:21:19.000000000 -0500 -+++ uClibc-0.9.23-etdyn/libc/sysdeps/linux/i386/Makefile 2003-11-15 18:56:41.000000000 -0500 ++++ uClibc-0.9.23-etdyn/libc/sysdeps/linux/i386/Makefile 2003-11-21 00:51:26.000000000 -0500 @@ -25,6 +25,9 @@ CRT0_DEPS=gmon-start.S CTOR_TARGETS=$(TOPDIR)lib/crti.o $(TOPDIR)lib/crtn.o @@ -49,8 +49,8 @@ diff -Nru uClibc-0.9.23/libc/sysdeps/linux/i386/Makefile uClibc-0.9.23-etdyn/lib $(STRIPTOOL) -x -R .note -R .comment $*.o diff -Nru uClibc-0.9.23/libc/sysdeps/linux/i386/crt0S.S uClibc-0.9.23-etdyn/libc/sysdeps/linux/i386/crt0S.S --- uClibc-0.9.23/libc/sysdeps/linux/i386/crt0S.S 1969-12-31 19:00:00.000000000 -0500 -+++ uClibc-0.9.23-etdyn/libc/sysdeps/linux/i386/crt0S.S 2003-11-15 19:01:04.000000000 -0500 -@@ -0,0 +1,116 @@ ++++ uClibc-0.9.23-etdyn/libc/sysdeps/linux/i386/crt0S.S 2003-11-21 00:53:58.000000000 -0500 +@@ -0,0 +1,113 @@ +/* Copyright (C) 1991, 1992 Free Software Foundation, Inc. +This file is part of the GNU C Library. + @@ -71,7 +71,9 @@ diff -Nru uClibc-0.9.23/libc/sysdeps/linux/i386/crt0S.S uClibc-0.9.23-etdyn/libc + + +/* Based on the code from GNU libc, but hacked up by John Beppu and Erik Andersen */ -+/* crt0.S adapted by Pax Team for ET_DYN binaries */ ++/* crt0S.S adapted by the Pax Team, solar@gentoo,org, Peter S. Mazinger ++ * for ET_DYN executable shared objects binaries ++ */ + +/* + When we enter this piece of code, the program stack looks like this: @@ -144,26 +146,21 @@ diff -Nru uClibc-0.9.23/libc/sysdeps/linux/i386/crt0S.S uClibc-0.9.23-etdyn/libc + pushl %ecx /* And the argument count */ + + /* Ok, now run uClibc's main() -- shouldn't return */ -+ pushl .hlt@GOT(%edx) -+ pushl __uClibc_start_main@GOT(%edx) -+ ret ++ call *__uClibc_start_main@GOT(%edx) +#else -+ /* Push envp, argc, and argc arguments to __uClibc_start_main() on the stack */ ++ /* Push envp, argc, and argc arguments to __uClibc_main() on the stack */ + pushl %eax /* Environment pointer */ + pushl %ebx /* Argument pointer */ + pushl %ecx /* And the argument count */ + -+ pushl .hlt@GOT(%edx) -+ pushl __uClibc_main@GOT(%edx) -+ ret ++ call *__uClibc_main@GOT(%edx) +#endif + + /* Crash if somehow `exit' returns anyways. */ + hlt +.size _start,.-_start + -+/* We disable profiling in crt0S.S, because it introduces text relocations. -+#if defined L_gcrt1 && defined __UCLIBC_PROFILING__ ++/* We disable profiling in crt0S.S, because it introduces text relocations. */ ++#if 0 && defined L_gcrt1 && defined __UCLIBC_PROFILING__ +# include "./gmon-start.S" +#endif -+*/ diff --git a/dev-libs/uclibc/files/0.9.23/uClibc-0.9.23-flipturn.patch b/dev-libs/uclibc/files/0.9.23/uClibc-0.9.23-flipturn.patch index b58f8cb13db9..db6bb8e73ff1 100644 --- a/dev-libs/uclibc/files/0.9.23/uClibc-0.9.23-flipturn.patch +++ b/dev-libs/uclibc/files/0.9.23/uClibc-0.9.23-flipturn.patch @@ -1,6 +1,6 @@ -diff -ur -x '*.[oa]' /tmp/uClibc-0.9.23/libc/misc/gnu/obstack.c /opt/src/buildroot/build_i386/uClibc-0.9.23/libc/misc/gnu/obstack.c ---- libc/misc/gnu/obstack.c 2003-09-03 03:23:15.000000000 -0400 -+++ /opt/src/buildroot/build_i386/uClibc-0.9.23/libc/misc/gnu/obstack.c 2003-11-14 14:06:19.000000000 -0500 +diff -Nru uClibc-0.9.23/libc/misc/gnu/obstack.c uClibc-0.9.23-flipturn/libc/misc/gnu/obstack.c +--- uClibc-0.9.23/libc/misc/gnu/obstack.c 2003-09-03 03:23:15.000000000 -0400 ++++ uClibc-0.9.23-flipturn/libc/misc/gnu/obstack.c 2003-11-17 07:24:33.000000000 -0500 @@ -466,6 +466,7 @@ /* # if (HAVE_LIBINTL_H && ENABLE_NLS) || defined _LIBC */ # ifdef __UCLIBC_HAS_GETTEXT_AWARENESS__ @@ -9,18 +9,22 @@ diff -ur -x '*.[oa]' /tmp/uClibc-0.9.23/libc/misc/gnu/obstack.c /opt/src/buildro # ifndef _ # define _(Str) __dcgettext (NULL, Str, LC_MESSAGES) # endif -diff -ur -x '*.[oa]' /tmp/uClibc-0.9.23/libc/misc/wchar/Makefile /opt/src/buildroot/build_i386/uClibc-0.9.23/libc/misc/wchar/Makefile ---- libc/misc/wchar/Makefile 2003-11-08 03:06:04.000000000 -0500 -+++ /opt/src/buildroot/build_i386/uClibc-0.9.23/libc/misc/wchar/Makefile 2003-11-15 07:34:30.000000000 -0500 -@@ -30,7 +30,7 @@ +diff -Nru uClibc-0.9.23/libc/misc/wchar/Makefile uClibc-0.9.23-flipturn/libc/misc/wchar/Makefile +--- uClibc-0.9.23/libc/misc/wchar/Makefile 2003-11-08 03:06:04.000000000 -0500 ++++ uClibc-0.9.23-flipturn/libc/misc/wchar/Makefile 2003-11-17 07:24:39.000000000 -0500 +@@ -29,9 +29,9 @@ + wcsrtombs.o _wchar_utf8sntowcs.o _wchar_wcsntoutf8s.o \ __mbsnrtowcs.o __wcsnrtombs.o wcwidth.o wcswidth.o - #ifeq ($(UCLIBC_HAS_LOCALE),y) +-#ifeq ($(UCLIBC_HAS_LOCALE),y) -# MOBJ1 += iconv.o +-#endif ++ifeq ($(UCLIBC_HAS_LOCALE),y) + MOBJ1 += iconv.o - #endif ++endif MSRC2= wstdio.c + MOBJ2= fwide.o \ @@ -67,3 +67,6 @@ clean: $(RM) *.[oa] *~ core #iconv.target @@ -28,9 +32,9 @@ diff -ur -x '*.[oa]' /tmp/uClibc-0.9.23/libc/misc/wchar/Makefile /opt/src/buildr + +.PHONY: print-% +print-%: ; @ echo $* = $($*) -diff -ur -x '*.[oa]' /tmp/uClibc-0.9.23/utils/ldconfig.c /opt/src/buildroot/build_i386/uClibc-0.9.23/utils/ldconfig.c ---- utils/ldconfig.c 2003-11-06 17:38:46.000000000 -0500 -+++ /opt/src/buildroot/build_i386/uClibc-0.9.23/utils/ldconfig.c 2003-11-14 19:00:30.000000000 -0500 +diff -Nru uClibc-0.9.23/utils/ldconfig.c uClibc-0.9.23-flipturn/utils/ldconfig.c +--- uClibc-0.9.23/utils/ldconfig.c 2003-11-06 17:38:46.000000000 -0500 ++++ uClibc-0.9.23-flipturn/utils/ldconfig.c 2003-11-17 07:24:33.000000000 -0500 @@ -189,8 +189,7 @@ char buff[4096]; diff --git a/dev-libs/uclibc/files/digest-uclibc-0.9.22 b/dev-libs/uclibc/files/digest-uclibc-0.9.22 deleted file mode 100644 index afe9ab8986f2..000000000000 --- a/dev-libs/uclibc/files/digest-uclibc-0.9.22 +++ /dev/null @@ -1 +0,0 @@ -MD5 6fd10952eb57bd2dda724bf38bb71915 uClibc-0.9.22.tar.bz2 1579108 diff --git a/dev-libs/uclibc/files/uClibc-0.9.22-etdyn.patch b/dev-libs/uclibc/files/uClibc-0.9.22-etdyn.patch deleted file mode 100644 index 2702c1491802..000000000000 --- a/dev-libs/uclibc/files/uClibc-0.9.22-etdyn.patch +++ /dev/null @@ -1,151 +0,0 @@ -diff -Nru uClibc-0.9.22.orig/libc/sysdeps/linux/i386/Makefile uClibc-0.9.22/libc/sysdeps/linux/i386/Makefile ---- uClibc-0.9.22.orig/libc/sysdeps/linux/i386/Makefile 2003-11-04 19:29:20.000000000 -0500 -+++ uClibc-0.9.22/libc/sysdeps/linux/i386/Makefile 2003-11-10 01:30:32.000000000 -0500 -@@ -32,7 +32,7 @@ - endif - SOBJS=$(patsubst %.S,%.o, $(SSRC)) - --CSRC=brk.c sigaction.c -+CSRC=brk.c sigaction.c interp.c - COBJS=$(patsubst %.c,%.o, $(CSRC)) - - OBJS=$(SOBJS) $(COBJS) -@@ -83,6 +83,13 @@ - $(TOPDIR)lib/crtn.o: crtn.o - $(INSTALL) -d $(TOPDIR)lib/ - cp crtn.o $(TOPDIR)lib/ -+ -+crt1S.o: crt1S.S -+ $(CC) $(SAFECFLAGS) -c crt1S.S -o crt1S.o -+ -+$(TOPDIR)lib/crt1S.o: crt1S.o -+ $(INSTALL) -d $(TOPDIR)lib/ -+ cp crt1S.o $(TOPDIR)lib/ - else - $(TOPDIR)lib/crti.o: - $(INSTALL) -d $(TOPDIR)lib/ -diff -Nru uClibc-0.9.22.orig/libc/sysdeps/linux/i386/crt1S.S uClibc-0.9.22/libc/sysdeps/linux/i386/crt1S.S ---- uClibc-0.9.22.orig/libc/sysdeps/linux/i386/crt1S.S 1969-12-31 19:00:00.000000000 -0500 -+++ uClibc-0.9.22/libc/sysdeps/linux/i386/crt1S.S 2003-11-10 01:22:51.000000000 -0500 -@@ -0,0 +1,112 @@ -+/* Copyright (C) 1991, 1992 Free Software Foundation, Inc. -+This file was based in part on 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 Library General Public License as -+published by the Free Software Foundation; either version 2 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 -+Library General Public License for more details. -+ -+You should have received a copy of the GNU Library General Public -+License along with the GNU C Library; see the file COPYING.LIB. If -+not, write to the Free Software Foundation, Inc., 675 Mass Ave, -+Cambridge, MA 02139, USA. */ -+ -+ -+/* Based on the code from GNU libc, but hacked up by John Beppu and Erik Andersen and the PaX Team */ -+ -+/* -+ When we enter this piece of code, the program stack looks like this: -+ argc argument counter (integer) -+ argv[0] program name (pointer) -+ argv[1...N] program args (pointers) -+ argv[argc-1] end of args (integer) -+ NULL -+ env[0...N] environment variables (pointers) -+ NULL -+*/ -+ -+#include <features.h> -+ -+.text -+ .align 4 -+ -+ .global _start -+ .type _start,%function -+#if defined L_crt0 || ! defined __UCLIBC_CTOR_DTOR__ -+ .type __uClibc_main,%function -+#else -+ .weak _init -+ .weak _fini -+ .type __uClibc_start_main,%function -+#endif -+/* Stick in a dummy reference to main(), so that if an application -+ * is linking when the main() function is in a static library (.a) -+ * we can be sure that main() actually gets linked in */ -+ .type main,%function -+ -+_start: -+ /* locate the start of the environment variables */ -+ popl %ecx /* Store argc into %ecx */ -+ movl %esp,%ebx /* Store argv into ebx */ -+ movl %esp,%eax /* Store argv into eax as well*/ -+ movl %ecx,%edx /* Stick argc into %edx so we can do some math in a sec */ -+ leal 4(%eax,%edx,4),%eax -+ -+ /* [ register layout ] -+ -+ sizeof(char*) == 4 -+ %ecx = argc ; 0(esp) -+ %ebx = argv ; 4(esp) -+ %eax = env ; argv + (argc * 4) + 4 -+ */ -+ -+ /* Set up an invalid (NULL return address, NULL frame pointer) -+ callers stack frame so anybody unrolling the stack knows where -+ to stop */ -+ xorl %ebp,%ebp /* NULL */ -+ pushl %ebp /* callers %cs */ -+ pushl %ebp /* callers %eip (return address) */ -+ pushl %ebp /* callers %ebp (frame pointer) */ -+ movl %esp,%ebp /* mark callers stack frame as invalid */ -+ -+ call .L1 -+.L1: -+ pop %edx -+ addl $_GLOBAL_OFFSET_TABLE_+[.-.L1],%edx -+ -+#if (defined L_crt1 || defined L_gcrt1 ) && defined __UCLIBC_CTOR_DTOR__ -+ /* Push .init and .fini arguments to __uClibc_start_main() on the stack */ -+ pushl _fini@GOT(%edx) -+ pushl _init@GOT(%edx) -+ -+ /* Push envp, argc, and argc arguments to __uClibc_start_main() on the stack */ -+ pushl %eax /* Environment pointer */ -+ pushl %ebx /* Argument pointer */ -+ pushl %ecx /* And the argument count */ -+ -+ /* Ok, now run uClibc's main() -- shouldn't return */ -+ call *__uClibc_start_main@GOT(%edx) -+#else -+ /* Push envp, argc, and argc arguments to __uClibc_start_main() on the stack */ -+ pushl %eax /* Environment pointer */ -+ pushl %ebx /* Argument pointer */ -+ pushl %ecx /* And the argument count */ -+ -+ call *__uClibc_main@GOT(%edx) -+#endif -+ -+ /* Crash if somehow `exit' returns anyways. */ -+.hlt: -+ hlt -+.size _start,.-_start -+ -+ -+#if defined L_gcrt1 && defined __UCLIBC_PROFILING__ -+# include "./gmon-start.S" -+#endif -+ -diff -Nru uClibc-0.9.22.orig/libc/sysdeps/linux/i386/interp.c uClibc-0.9.22/libc/sysdeps/linux/i386/interp.c ---- uClibc-0.9.22.orig/libc/sysdeps/linux/i386/interp.c 1969-12-31 19:00:00.000000000 -0500 -+++ uClibc-0.9.22/libc/sysdeps/linux/i386/interp.c 2003-11-10 01:28:10.000000000 -0500 -@@ -0,0 +1,5 @@ -+#ifdef UCLIBC_LD_INTERP -+const char __invoke_dynamic_linker__[] __attribute__ ((section (".interp"))) = UCLIBC_LD_INTERP; -+#else -+const char __invoke_dynamic_linker__[] __attribute__ ((section (".interp"))) = "/lib/ld-uClibc.so.0"; -+#endif diff --git a/dev-libs/uclibc/files/uClibc-0.9.22-pax.patch b/dev-libs/uclibc/files/uClibc-0.9.22-pax.patch deleted file mode 100644 index 15303ffb5316..000000000000 --- a/dev-libs/uclibc/files/uClibc-0.9.22-pax.patch +++ /dev/null @@ -1,82 +0,0 @@ -diff -Nurp -x config -x .config uClibc-0.9.22/ldso/ldso/ldso.c uClibc-0.9.22-pax/ldso/ldso/ldso.c ---- uClibc-0.9.22/ldso/ldso/ldso.c 2003-10-04 19:31:22.000000000 +0200 -+++ uClibc-0.9.22-pax/ldso/ldso/ldso.c 2003-11-09 01:52:56.000000000 +0100 -@@ -403,11 +403,24 @@ LD_BOOT(unsigned long args) - { - ElfW(Phdr) *ppnt; - int i; -+ unsigned long bias = 0UL; - - ppnt = (ElfW(Phdr) *) auxvt[AT_PHDR].a_un.a_ptr; -- for (i = 0; i < auxvt[AT_PHNUM].a_un.a_val; i++, ppnt++) -+ for (i = 0; i < auxvt[AT_PHNUM].a_un.a_val; i++, ppnt++) { -+ if (ppnt->p_type == PT_PHDR) { -+ bias = auxvt[AT_PHDR].a_un.a_ptr - ppnt->p_vaddr; -+#ifdef __SUPPORT_LD_DEBUG_EARLY__ -+ SEND_STDERR("bias: "); -+ SEND_ADDRESS_STDERR(bias, 1); -+#endif -+ } -+ - if (ppnt->p_type == PT_DYNAMIC) { -- dpnt = (Elf32_Dyn *) ppnt->p_vaddr; -+ dpnt = (Elf32_Dyn *) (ppnt->p_vaddr + bias); -+#ifdef __SUPPORT_LD_DEBUG_EARLY__ -+ SEND_STDERR("dpnt: "); -+ SEND_ADDRESS_STDERR(dpnt, 1); -+#endif - while (dpnt->d_tag) { - #if defined(__mips__) - if (dpnt->d_tag == DT_MIPS_GOTSYM) -@@ -447,6 +460,7 @@ LD_BOOT(unsigned long args) - dpnt++; - } - } -+ } - } - - #ifdef __SUPPORT_LD_DEBUG_EARLY__ -@@ -658,7 +672,7 @@ static void _dl_get_ready_to_run(struct - struct dyn_elf *rpnt; - struct elf_resolve *tcurr; - struct elf_resolve *tpnt1; -- unsigned long brk_addr, *lpnt; -+ unsigned long brk_addr, *lpnt, bias = 0UL; - int (*_dl_atexit) (void *); - #if defined (__SUPPORT_LD_DEBUG__) - int (*_dl_on_exit) (void (*FUNCTION)(int STATUS, void *ARG),void*); -@@ -714,9 +728,12 @@ static void _dl_get_ready_to_run(struct - - ppnt = (ElfW(Phdr) *) auxvt[AT_PHDR].a_un.a_ptr; - for (i = 0; i < auxvt[AT_PHNUM].a_un.a_val; i++, ppnt++) { -+ if (ppnt->p_type == PT_PHDR) { -+ bias = auxvt[AT_PHDR].a_un.a_ptr - ppnt->p_vaddr; -+ } - if (ppnt->p_type == PT_LOAD) { -- if (ppnt->p_vaddr + ppnt->p_memsz > brk_addr) -- brk_addr = ppnt->p_vaddr + ppnt->p_memsz; -+ if (ppnt->p_vaddr + bias + ppnt->p_memsz > brk_addr) -+ brk_addr = ppnt->p_vaddr + bias + ppnt->p_memsz; - } - if (ppnt->p_type == PT_DYNAMIC) { - #ifndef ALLOW_ZERO_PLTGOT -@@ -725,8 +742,8 @@ static void _dl_get_ready_to_run(struct - continue; - #endif - /* OK, we have what we need - slip this one into the list. */ -- app_tpnt = _dl_add_elf_hash_table("", 0, -- app_tpnt->dynamic_info, ppnt->p_vaddr, ppnt->p_filesz); -+ app_tpnt = _dl_add_elf_hash_table("", bias, -+ app_tpnt->dynamic_info, ppnt->p_vaddr + bias, ppnt->p_filesz); - _dl_loaded_modules->libtype = elf_executable; - _dl_loaded_modules->ppnt = (ElfW(Phdr) *) auxvt[AT_PHDR].a_un.a_ptr; - _dl_loaded_modules->n_phent = auxvt[AT_PHNUM].a_un.a_val; -@@ -735,7 +752,7 @@ static void _dl_get_ready_to_run(struct - rpnt->dyn = _dl_loaded_modules; - app_tpnt->usage_count++; - app_tpnt->symbol_scope = _dl_symbol_tables; -- lpnt = (unsigned long *) (app_tpnt->dynamic_info[DT_PLTGOT]); -+ lpnt = (unsigned long *) (app_tpnt->dynamic_info[DT_PLTGOT] + bias); - #ifdef ALLOW_ZERO_PLTGOT - if (lpnt) - #endif diff --git a/dev-libs/uclibc/uclibc-0.9.22.ebuild b/dev-libs/uclibc/uclibc-0.9.22.ebuild deleted file mode 100644 index cdbbfcd7e8c0..000000000000 --- a/dev-libs/uclibc/uclibc-0.9.22.ebuild +++ /dev/null @@ -1,54 +0,0 @@ -# Copyright 1999-2003 Gentoo Technologies, Inc. -# Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/dev-libs/uclibc/uclibc-0.9.22.ebuild,v 1.1 2003/11/11 09:18:34 solar Exp $ - -inherit eutils - -MY_P="${P/ucl/uCl}" -DESCRIPTION="C library for developing embedded Linux systems" -HOMEPAGE="http://www.uclibc.org/" -SRC_URI="http://www.kernel.org/pub/linux/libs/uclibc/${MY_P}.tar.bz2" -IUSE="etdyn" -LICENSE="LGPL-2" -SLOT="0" -KEYWORDS="~x86 ~ppc ~sparc ~mips" - -DEPEND="sys-devel/gcc" -PROVIDE="virtual/glibc" - -S=${WORKDIR}/${MY_P} - -src_unpack() { - use etdyn && PATCHES="uClibc-${PV}-pax.patch uClibc-${PV}-etdyn.patch" - unpack ${A} - cd ${S} - - for p in ${PATCHES} ; do - [ -f ${FILESDIR}/${p} ] && epatch ${FILESDIR}/${p} - done - - # fixup for install - mv Makefile{,.orig} - sed -e "s:-fa:-dRf:g" < Makefile.orig > Makefile - - make defconfig || die "could not config" - for def in UCLIBC_{HAS_LOCALE,PROFILING} DO{DEBUG,ASSERTS} SUPPORT_LD_DEBUG{,_EARLY} ; do - sed -i "s:${def}=y:# ${def} is not set:" .config - done - cp .config myconfig - - for f in `grep -Rl 'subst -g' *` ; do - sed -i -e "/subst -g/s:-g:\\' -g \\':" ${f} - done - - emake clean || die "could not clean" -} - -src_compile() { - mv myconfig .config - make || die "could not make" -} - -src_install() { - make PREFIX=${D} install || die "install failed" -} |