1.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
1.2 +++ b/patches/glibc/2.3.3/glibc-2.3.3-allow-gcc-4.0-x86_64.patch Wed May 23 21:08:24 2007 +0000
1.3 @@ -0,0 +1,60 @@
1.4 +Fixes
1.5 +
1.6 +In file included from dynamic-link.h:22,
1.7 + from dl-reloc.c:265:
1.8 +../sysdeps/x86_64/dl-machine.h: In function '_dl_relocate_object':
1.9 +../sysdeps/x86_64/dl-machine.h:361: error: invalid storage class for function 'elf_machine_rela'
1.10 +../sysdeps/x86_64/dl-machine.h:525: error: invalid storage class for function 'elf_machine_rela_relative'
1.11 +../sysdeps/x86_64/dl-machine.h:534: error: invalid storage class for function 'elf_machine_lazy_rel'
1.12 +make[2]: *** [/home/dank/queue/jobdir.fast/crosstool-dev/build/x86_64-unknown-linux-gnu/gcc-4.0-20050305-glibc-2.3.3/build-glibc/elf/dl-reloc.o] Error 1
1.13 +
1.14 +--- glibc-2.3.3/sysdeps/x86_64/dl-machine.h.old Wed Mar 16 16:19:15 2005
1.15 ++++ glibc-2.3.3/sysdeps/x86_64/dl-machine.h Wed Mar 16 16:22:09 2005
1.16 +@@ -354,7 +354,14 @@
1.17 + /* Perform the relocation specified by RELOC and SYM (which is fully resolved).
1.18 + MAP is the object containing the reloc. */
1.19 +
1.20 +-static inline void
1.21 ++#if __GNUC__ >= 4
1.22 ++ auto inline void
1.23 ++#else
1.24 ++ static inline void
1.25 ++#endif
1.26 ++#if __GNUC__ >= 4 || (__GNUC__ == 3 && __GNUC_MINOR__ >= 2)
1.27 ++ __attribute ((always_inline))
1.28 ++#endif
1.29 + elf_machine_rela (struct link_map *map, const Elf64_Rela *reloc,
1.30 + const Elf64_Sym *sym, const struct r_found_version *version,
1.31 + void *const reloc_addr_arg)
1.32 +@@ -519,7 +526,14 @@
1.33 + }
1.34 + }
1.35 +
1.36 +-static inline void
1.37 ++#if __GNUC__ >= 4
1.38 ++ auto inline void
1.39 ++#else
1.40 ++ static inline void
1.41 ++#endif
1.42 ++#if __GNUC__ >= 4 || (__GNUC__ == 3 && __GNUC_MINOR__ >= 2)
1.43 ++ __attribute ((always_inline))
1.44 ++#endif
1.45 + elf_machine_rela_relative (Elf64_Addr l_addr, const Elf64_Rela *reloc,
1.46 + void *const reloc_addr_arg)
1.47 + {
1.48 +@@ -528,7 +542,14 @@
1.49 + *reloc_addr = l_addr + reloc->r_addend;
1.50 + }
1.51 +
1.52 +-static inline void
1.53 ++#if __GNUC__ >= 4
1.54 ++ auto inline void
1.55 ++#else
1.56 ++ static inline void
1.57 ++#endif
1.58 ++#if __GNUC__ >= 4 || (__GNUC__ == 3 && __GNUC_MINOR__ >= 2)
1.59 ++ __attribute ((always_inline))
1.60 ++#endif
1.61 + elf_machine_lazy_rel (struct link_map *map,
1.62 + Elf64_Addr l_addr, const Elf64_Rela *reloc)
1.63 + {