This is the mail archive of the crossgcc@sources.redhat.com mailing list for the crossgcc project.
See the CrossGCC FAQ for lots more information.
Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
---|---|---|
Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |
Other format: | [Raw text] |
Hinko Kocevar wrote:
Will test other xscale arm combinations as well...
arm-xscale-gcc-4.0-20050305-glibc-2.2.5.sh FAILS at:
In file included from dynamic-link.h:21,
from dl-reloc.c:153:
../sysdeps/arm/dl-machine.h: In function '_dl_relocate_object':
../sysdeps/arm/dl-machine.h:380: error: invalid storage class for function 'fix_bad_pc24'
../sysdeps/arm/dl-machine.h:415: error: invalid storage class for function 'elf_machine_rel'
../sysdeps/arm/dl-machine.h:524: error: invalid storage class for function 'elf_machine_rel_relative'
../sysdeps/arm/dl-machine.h:531: error: invalid storage class for function 'elf_machine_lazy_rel'
Yeah, that's as noted in the release announcement:
http://sources.redhat.com/ml/crossgcc/2005-03/msg00203.html
"Several architectures fail with errors like
dl-machine.h:418: error: invalid storage class for function 'elf_machine_rela'
The fix for this is easy; see e.g.
http://kegel.com/crosstool/crosstool-0.29/patches/glibc-2.3-20050307/glibc-2.3.4-allow-gcc-4.0-powerpc64.patch
Anyone who wants to fix these up, please do, and post the patches to the crossgcc list so I can include them in the next release."
regards, hk
-- hinko <dot> kocevar <at> iskramedical <dot> si Hinko Kocevar, embedded systems developer Iskra Medical d.o.o., Stegne 23, 1k LJ, SLO-EU
--- glibc-2.2.5/sysdeps/arm/dl-machine.h.old 2005-03-31 18:44:49.000000000 +0200 +++ glibc-2.2.5/sysdeps/arm/dl-machine.h 2005-03-31 18:50:23.000000000 +0200 @@ -374,7 +374,14 @@ extern char **_dl_argv; /* Deal with an out-of-range PC24 reloc. */ -static Elf32_Addr +#if __GNUC__ >= 4 + auto inline Elf32_Addr +#else + static inline Elf32_Addr +#endif +#if __GNUC__ >= 4 || (__GNUC__ == 3 && __GNUC_MINOR__ >= 2) + __attribute ((always_inline)) +#endif fix_bad_pc24 (Elf32_Addr *const reloc_addr, Elf32_Addr value) { static void *fix_page; @@ -406,8 +413,14 @@ /* Perform the relocation specified by RELOC and SYM (which is fully resolved). MAP is the object containing the reloc. */ - -static inline void +#if __GNUC__ >= 4 + auto inline void +#else + static inline void +#endif +#if __GNUC__ >= 4 || (__GNUC__ == 3 && __GNUC_MINOR__ >= 2) + __attribute ((always_inline)) +#endif elf_machine_rel (struct link_map *map, const Elf32_Rel *reloc, const Elf32_Sym *sym, const struct r_found_version *version, Elf32_Addr *const reloc_addr) @@ -517,14 +530,28 @@ } } -static inline void +#if __GNUC__ >= 4 + auto inline void +#else + static inline void +#endif +#if __GNUC__ >= 4 || (__GNUC__ == 3 && __GNUC_MINOR__ >= 2) + __attribute ((always_inline)) +#endif elf_machine_rel_relative (Elf32_Addr l_addr, const Elf32_Rel *reloc, Elf32_Addr *const reloc_addr) { *reloc_addr += l_addr; } -static inline void +#if __GNUC__ >= 4 + auto inline void +#else + static inline void +#endif +#if __GNUC__ >= 4 || (__GNUC__ == 3 && __GNUC_MINOR__ >= 2) + __attribute ((always_inline)) +#endif elf_machine_lazy_rel (struct link_map *map, Elf32_Addr l_addr, const Elf32_Rel *reloc) {
------ Want more information? See the CrossGCC FAQ, http://www.objsw.com/CrossGCC/ Want to unsubscribe? Send a note to crossgcc-unsubscribe@sources.redhat.com
Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
---|---|---|
Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |