summaryrefslogtreecommitdiff
path: root/editors/xemacs-current/patches/patch-ad
blob: 099e3a0fe04a6b2b071a3f0bd7ec1f5e17208faf (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.1.1.1 2002/03/24 19:40:33 magick Exp $

--- src/unexelf.c.orig	Thu Apr 12 20:24:27 2001
+++ src/unexelf.c
@@ -481,10 +481,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
@@ -952,7 +961,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)