1.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
1.2 +++ b/patches/glibc/2.2.5/glibc-2.2.5-allow-gcc-4.0-elf.patch Sun May 20 09:27:05 2007 +0000
1.3 @@ -0,0 +1,39 @@
1.4 +Fixes
1.5 +
1.6 +dl-load.c: In function '_dl_map_object_from_fd':
1.7 +dl-load.c:1089: error: invalid lvalue in assignment
1.8 +dl-load.c:1109: error: invalid lvalue in assignment
1.9 +make[2]: *** [/home/dank/queue/jobdir.fast2/crosstool-dev/build/i686-unknown-linux-gnu/gcc-4.0-20050305-glibc-2.2.5/build-glibc/elf/dl-load.o] Error 1
1.10 +
1.11 +http://sourceware.org/cgi-bin/cvsweb.cgi/libc/elf/dl-load.c.diff?r1=1.235&r2=1.236&cvsroot=glibc
1.12 +rediffed against glibc-2.2.5
1.13 +
1.14 +Revision 1.236, Sat Feb 21 18:25:41 2004 UTC by aj
1.15 +Branch: MAIN
1.16 +Changes since 1.235: +2 -2 lines
1.17 +Diff to previous 1.235 (colored)
1.18 +
1.19 +(_dl_map_object_from_fd): Fix casts used as lvalue.
1.20 +
1.21 +
1.22 +diff -ur glibc-2.2.5/elf/dl-load.c glibc-2.2.5-patched/elf/dl-load.c
1.23 +--- glibc-2.2.5/elf/dl-load.c 2001-11-10 14:43:10.000000000 -0800
1.24 ++++ glibc-2.2.5-patched/elf/dl-load.c 2005-03-11 13:48:18.211982328 -0800
1.25 +@@ -1086,7 +1086,7 @@
1.26 + }
1.27 + else
1.28 + /* Adjust the PT_PHDR value by the runtime load address. */
1.29 +- (ElfW(Addr)) l->l_phdr += l->l_addr;
1.30 ++ l->l_phdr = (ElfW(Phdr) *) ((ElfW(Addr)) l->l_phdr + l->l_addr);
1.31 + }
1.32 +
1.33 + /* We are done mapping in the file. We no longer need the descriptor. */
1.34 +@@ -1106,7 +1106,7 @@
1.35 + }
1.36 + }
1.37 + else
1.38 +- (ElfW(Addr)) l->l_ld += l->l_addr;
1.39 ++ l->l_ld = (ElfW(Dyn) *) ((ElfW(Addr)) l->l_ld + l->l_addr);
1.40 +
1.41 + l->l_entry += l->l_addr;
1.42 +