yann@1
|
1 |
Fixes
|
yann@1
|
2 |
|
yann@1
|
3 |
In file included from dynamic-link.h:22,
|
yann@1
|
4 |
from dl-reloc.c:265:
|
yann@1
|
5 |
../sysdeps/x86_64/dl-machine.h: In function '_dl_relocate_object':
|
yann@1
|
6 |
../sysdeps/x86_64/dl-machine.h:361: error: invalid storage class for function 'elf_machine_rela'
|
yann@1
|
7 |
../sysdeps/x86_64/dl-machine.h:525: error: invalid storage class for function 'elf_machine_rela_relative'
|
yann@1
|
8 |
../sysdeps/x86_64/dl-machine.h:534: error: invalid storage class for function 'elf_machine_lazy_rel'
|
yann@1
|
9 |
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
|
yann@1
|
10 |
|
yann@1
|
11 |
--- glibc-2.3.3/sysdeps/x86_64/dl-machine.h.old Wed Mar 16 16:19:15 2005
|
yann@1
|
12 |
+++ glibc-2.3.3/sysdeps/x86_64/dl-machine.h Wed Mar 16 16:22:09 2005
|
yann@1
|
13 |
@@ -354,7 +354,14 @@
|
yann@1
|
14 |
/* Perform the relocation specified by RELOC and SYM (which is fully resolved).
|
yann@1
|
15 |
MAP is the object containing the reloc. */
|
yann@1
|
16 |
|
yann@1
|
17 |
-static inline void
|
yann@1
|
18 |
+#if __GNUC__ >= 4
|
yann@1
|
19 |
+ auto inline void
|
yann@1
|
20 |
+#else
|
yann@1
|
21 |
+ static inline void
|
yann@1
|
22 |
+#endif
|
yann@1
|
23 |
+#if __GNUC__ >= 4 || (__GNUC__ == 3 && __GNUC_MINOR__ >= 2)
|
yann@1
|
24 |
+ __attribute ((always_inline))
|
yann@1
|
25 |
+#endif
|
yann@1
|
26 |
elf_machine_rela (struct link_map *map, const Elf64_Rela *reloc,
|
yann@1
|
27 |
const Elf64_Sym *sym, const struct r_found_version *version,
|
yann@1
|
28 |
void *const reloc_addr_arg)
|
yann@1
|
29 |
@@ -519,7 +526,14 @@
|
yann@1
|
30 |
}
|
yann@1
|
31 |
}
|
yann@1
|
32 |
|
yann@1
|
33 |
-static inline void
|
yann@1
|
34 |
+#if __GNUC__ >= 4
|
yann@1
|
35 |
+ auto inline void
|
yann@1
|
36 |
+#else
|
yann@1
|
37 |
+ static inline void
|
yann@1
|
38 |
+#endif
|
yann@1
|
39 |
+#if __GNUC__ >= 4 || (__GNUC__ == 3 && __GNUC_MINOR__ >= 2)
|
yann@1
|
40 |
+ __attribute ((always_inline))
|
yann@1
|
41 |
+#endif
|
yann@1
|
42 |
elf_machine_rela_relative (Elf64_Addr l_addr, const Elf64_Rela *reloc,
|
yann@1
|
43 |
void *const reloc_addr_arg)
|
yann@1
|
44 |
{
|
yann@1
|
45 |
@@ -528,7 +542,14 @@
|
yann@1
|
46 |
*reloc_addr = l_addr + reloc->r_addend;
|
yann@1
|
47 |
}
|
yann@1
|
48 |
|
yann@1
|
49 |
-static inline void
|
yann@1
|
50 |
+#if __GNUC__ >= 4
|
yann@1
|
51 |
+ auto inline void
|
yann@1
|
52 |
+#else
|
yann@1
|
53 |
+ static inline void
|
yann@1
|
54 |
+#endif
|
yann@1
|
55 |
+#if __GNUC__ >= 4 || (__GNUC__ == 3 && __GNUC_MINOR__ >= 2)
|
yann@1
|
56 |
+ __attribute ((always_inline))
|
yann@1
|
57 |
+#endif
|
yann@1
|
58 |
elf_machine_lazy_rel (struct link_map *map,
|
yann@1
|
59 |
Elf64_Addr l_addr, const Elf64_Rela *reloc)
|
yann@1
|
60 |
{
|