blob: 9f2b887eba2143d2b668f83066117122feaf2cd9 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
|
$NetBSD: patch-ad,v 1.2 2006/09/04 09:20:51 martin Exp $
--- src/unexelf.c.orig 2005-10-29 09:18:21.000000000 +0200
+++ src/unexelf.c 2006-08-30 17:51:08.000000000 +0200
@@ -492,10 +492,19 @@
#ifndef ElfW
# ifdef __STDC__
-# define ElfW(type) Elf32_##type
+# define ElfBitsW(bits, type) Elf##bits##_##type
# else
-# define ElfW(type) Elf32_/**/type
+# define ElfBitsW(bits, type) Elf/**/bits/**/_/**/type
# endif
+# if defined (_LP64) || defined(__alpha__)
+# define ELFSIZE 64
+# else
+# define ELFSIZE 32
+# endif
+ /* This macro expands `bits' before invoking ElfBitsW. */
+# define ElfExpandBitsW(bits, type) ElfBitsW (bits, type)
+# define ElfW(type) ElfExpandBitsW (ELFSIZE, type)
+
#endif
#ifndef ELF_BSS_SECTION_NAME
@@ -961,7 +970,7 @@
memcpy (NEW_SECTION_H (nn).sh_offset + new_base, src,
NEW_SECTION_H (nn).sh_size);
-#ifdef __alpha__
+#if defined(__alpha__) && !defined(__NetBSD__)
/* Update Alpha COFF symbol table: */
if (strcmp (old_section_names + OLD_SECTION_H (n).sh_name, ".mdebug")
== 0)
|