patches/glibc/2.3.6/maybe/100-allow-gcc-4.0-powerpc32.patch
author Remy Bohmer <linux@bohmer.net>
Sun Jul 11 22:23:34 2010 +0200 (2010-07-11)
changeset 2021 3e52a1510f87
parent 1 eeea35fbf182
permissions -rw-r--r--
debug/gdb: Fix compilation for Mingw hosts

GDB requires PDcurses instead of ncurses while running on Windows.
So, do not always compile ncurses in case GDB needs to build.

PDcurses is provided by an earlier build step and is not described in
this file.

Signed-off-by: Remy Bohmer <linux@bohmer.net>
[yann.morin.1998@anciense.nib.fr: we already have a way to detect ncurses usage]
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
yann@1
     1
Fixes
yann@1
     2
yann@1
     3
../sysdeps/powerpc/powerpc32/dl-machine.h: In function '_dl_relocate_object':
yann@1
     4
../sysdeps/powerpc/powerpc32/dl-machine.h:461: error: invalid storage class for function 'elf_machine_rela_relative'
yann@1
     5
../sysdeps/powerpc/powerpc32/dl-machine.h:469: error: invalid storage class for function 'elf_machine_lazy_rel'
yann@1
     6
make[2]: *** [/home/dank/queue/jobdir.dual2/crosstool-dev/build/powerpc-750-linux-gnu/gcc-4.0-20050305-glibc-2.3-20050307/build-glibc/elf/dl-reloc.o] Error 1
yann@1
     7
yann@1
     8
--- glibc-2.3.6.orig/sysdeps/powerpc/powerpc32/dl-machine.h	Wed Jul 30 23:33:52 2003
yann@1
     9
+++ glibc-2.3.6/sysdeps/powerpc/powerpc32/dl-machine.h		Thu Mar 17 13:19:16 2005
yann@1
    10
@@ -455,8 +455,14 @@
yann@1
    11
     }
yann@1
    12
 }
yann@1
    13
 
yann@1
    14
-auto inline void
yann@1
    15
-__attribute__ ((always_inline))
yann@1
    16
+#if __GNUC__ >= 4
yann@1
    17
+  auto inline void
yann@1
    18
+#else
yann@1
    19
+  static inline void
yann@1
    20
+#endif
yann@1
    21
+#if __GNUC__ >= 4 || (__GNUC__ == 3 && __GNUC_MINOR__ >= 2)
yann@1
    22
+  __attribute ((always_inline))
yann@1
    23
+#endif
yann@1
    24
 elf_machine_rela_relative (Elf32_Addr l_addr, const Elf32_Rela *reloc,
yann@1
    25
 			   void *const reloc_addr_arg)
yann@1
    26
 {
yann@1
    27
@@ -464,8 +470,14 @@
yann@1
    28
   *reloc_addr = l_addr + reloc->r_addend;
yann@1
    29
 }
yann@1
    30
 
yann@1
    31
-auto inline void
yann@1
    32
-__attribute__ ((always_inline))
yann@1
    33
+#if __GNUC__ >= 4
yann@1
    34
+  auto inline void
yann@1
    35
+#else
yann@1
    36
+  static inline void
yann@1
    37
+#endif
yann@1
    38
+#if __GNUC__ >= 4 || (__GNUC__ == 3 && __GNUC_MINOR__ >= 2)
yann@1
    39
+  __attribute ((always_inline))
yann@1
    40
+#endif
yann@1
    41
 elf_machine_lazy_rel (struct link_map *map,
yann@1
    42
 		      Elf32_Addr l_addr, const Elf32_Rela *reloc)
yann@1
    43
 {
yann@1
    44
yann@1
    45
Signed-off-by: Robert P. J. Day <rpjday@mindspring.com>