summaryrefslogtreecommitdiff
path: root/editors
diff options
context:
space:
mode:
authorgarbled <garbled>1998-08-29 12:31:43 +0000
committergarbled <garbled>1998-08-29 12:31:43 +0000
commit122711a7796985a47a1690def9165cd5024d659c (patch)
tree12158f09b8dc771cf8b88f45b2561eb62125442e /editors
parentf8f94446deadbc8ab4a328bc4daf8d8c758c9b63 (diff)
downloadpkgsrc-122711a7796985a47a1690def9165cd5024d659c.tar.gz
Fix a ton of build problems on the alpha. Mind you it still doesn't
actually build on the alpha, but this is the groundwork for someone more ELF clued to take a look at it and figure out what is going wrong with the purespace dumping.
Diffstat (limited to 'editors')
-rw-r--r--editors/xemacs20/patches/patch-aa33
-rw-r--r--editors/xemacs20/patches/patch-af9
-rw-r--r--editors/xemacs20/patches/patch-ag326
-rw-r--r--editors/xemacs20/patches/patch-ah16
-rw-r--r--editors/xemacs20/patches/patch-ai11
-rw-r--r--editors/xemacs20/patches/patch-aj12
6 files changed, 390 insertions, 17 deletions
diff --git a/editors/xemacs20/patches/patch-aa b/editors/xemacs20/patches/patch-aa
index 7b1b8a82374..951b6425867 100644
--- a/editors/xemacs20/patches/patch-aa
+++ b/editors/xemacs20/patches/patch-aa
@@ -1,8 +1,7 @@
-$NetBSD: patch-aa,v 1.2 1998/08/07 10:40:33 agc Exp $
-
---- ./configure-orig Thu Nov 20 03:13:44 1997
-+++ ./configure Thu Jan 22 13:46:50 1998
-@@ -902,7 +902,7 @@
+$NetBSD: patch-aa,v 1.3 1998/08/29 12:31:43 garbled Exp $
+--- configure.orig Mon Feb 9 20:59:34 1998
++++ configure Fri Aug 28 09:18:31 1998
+@@ -902,9 +902,10 @@
case "$canonical" in
i[3-9]86-*-netbsd*) machine=intel386 ;;
hp300-*-netbsd* | amiga-*-netbsd* | sun3-*-netbsd* | mac68k-*-netbsd* | da30-*-netbsd* | m68k-*-netbsd* )
@@ -10,16 +9,16 @@ $NetBSD: patch-aa,v 1.2 1998/08/07 10:40:33 agc Exp $
+ machine=m68k ;;
pc532-*-netbsd* | ns32k-*-netbsd* ) machine=ns32000 ;;
pmax-*-netbsd* | mips-*-netbsd* ) machine=pmax ;;
++ alpha-*-netbsd* ) machine=alpha ;;
esac
---- ./configure.in-orig Thu Nov 20 03:13:33 1997
-+++ ./configure.in Thu Jan 22 13:58:06 1998
-@@ -1013,8 +1013,7 @@
- case "$canonical" in
- i[[3-9]]86-*-netbsd*) machine=intel386 ;;
- hp300-*-netbsd* | amiga-*-netbsd* | sun3-*-netbsd* | mac68k-*-netbsd* | da30-*-netbsd* | m68k-*-netbsd* )
-- dnl Yes, this is somewhat bogus.
-- machine=hp9000s300 ;;
-+ machine=m68k ;;
- pc532-*-netbsd* | ns32k-*-netbsd* ) machine=ns32000 ;;
- pmax-*-netbsd* | mips-*-netbsd* ) machine=pmax ;;
- esac
+ ;;
+
+@@ -2233,7 +2234,7 @@
+ echo $ac_n "checking "for runtime libraries flag"""... $ac_c" 1>&6
+ echo "configure:2235: checking "for runtime libraries flag"" >&5
+ dash_r=""
+- for try_dash_r in "-R" "-R " "-rpath "; do
++ for try_dash_r in "-Wl,-R" "-R" "-R " "-rpath "; do
+ xe_check_libs="${try_dash_r}/no/such/file-or-directory"
+ cat > conftest.$ac_ext <<EOF
+ #line 2240 "configure"
diff --git a/editors/xemacs20/patches/patch-af b/editors/xemacs20/patches/patch-af
new file mode 100644
index 00000000000..3f392499b23
--- /dev/null
+++ b/editors/xemacs20/patches/patch-af
@@ -0,0 +1,9 @@
+$NetBSD: patch-af,v 1.3 1998/08/29 12:31:43 garbled Exp $
+--- src/m/alpha.h.orig Fri Jul 24 02:30:29 1998
++++ src/m/alpha.h Fri Jul 24 02:31:19 1998
+@@ -186,3 +186,5 @@
+
++#ifndef __NetBSD__
+ #define UNEXEC "unexalpha.o"
++#endif
+
diff --git a/editors/xemacs20/patches/patch-ag b/editors/xemacs20/patches/patch-ag
new file mode 100644
index 00000000000..62060c4ef0b
--- /dev/null
+++ b/editors/xemacs20/patches/patch-ag
@@ -0,0 +1,326 @@
+$NetBSD: patch-ag,v 1.1 1998/08/29 12:31:43 garbled Exp $
+--- /dev/null Fri Jul 24 04:57:05 1998
++++ src/netbsd.elf.h Fri Jul 24 05:41:01 1998
+@@ -0,0 +1,322 @@
++/* ELF support for BFD.
++ Copyright (C) 1991, 92, 93, 94, 95, 96, 1997 Free Software Foundation, Inc.
++
++ Written by Fred Fish @ Cygnus Support, from information published
++ in "UNIX System V Release 4, Programmers Guide: ANSI C and
++ Programming Support Tools".
++
++This file is part of BFD, the Binary File Descriptor library.
++
++This program is free software; you can redistribute it and/or modify
++it under the terms of the GNU General Public License as published by
++the Free Software Foundation; either version 2 of the License, or
++(at your option) any later version.
++
++This program is distributed in the hope that it will be useful,
++but WITHOUT ANY WARRANTY; without even the implied warranty of
++MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
++GNU General Public License for more details.
++
++You should have received a copy of the GNU General Public License
++along with this program; if not, write to the Free Software
++Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
++
++
++/* This file is part of ELF support for BFD, and contains the portions
++ that are common to both the internal and external representations.
++ For example, ELFMAG0 is the byte 0x7F in both the internal (in-memory)
++ and external (in-file) representations. */
++
++#ifndef _ELF_COMMON_H
++#define _ELF_COMMON_H
++
++/* Fields in e_ident[] */
++
++#define EI_MAG0 0 /* File identification byte 0 index */
++#define ELFMAG0 0x7F /* Magic number byte 0 */
++
++#define EI_MAG1 1 /* File identification byte 1 index */
++#define ELFMAG1 'E' /* Magic number byte 1 */
++
++#define EI_MAG2 2 /* File identification byte 2 index */
++#define ELFMAG2 'L' /* Magic number byte 2 */
++
++#define EI_MAG3 3 /* File identification byte 3 index */
++#define ELFMAG3 'F' /* Magic number byte 3 */
++
++#define EI_CLASS 4 /* File class */
++#define ELFCLASSNONE 0 /* Invalid class */
++#define ELFCLASS32 1 /* 32-bit objects */
++#define ELFCLASS64 2 /* 64-bit objects */
++
++#define EI_DATA 5 /* Data encoding */
++#define ELFDATANONE 0 /* Invalid data encoding */
++#define ELFDATA2LSB 1 /* 2's complement, little endian */
++#define ELFDATA2MSB 2 /* 2's complement, big endian */
++
++#define EI_VERSION 6 /* File version */
++
++#define EI_PAD 7 /* Start of padding bytes */
++
++
++/* Values for e_type, which identifies the object file type */
++
++#define ET_NONE 0 /* No file type */
++#define ET_REL 1 /* Relocatable file */
++#define ET_EXEC 2 /* Executable file */
++#define ET_DYN 3 /* Shared object file */
++#define ET_CORE 4 /* Core file */
++#define ET_LOPROC 0xFF00 /* Processor-specific */
++#define ET_HIPROC 0xFFFF /* Processor-specific */
++
++/* Values for e_machine, which identifies the architecture */
++
++#define EM_NONE 0 /* No machine */
++#define EM_M32 1 /* AT&T WE 32100 */
++#define EM_SPARC 2 /* SUN SPARC */
++#define EM_386 3 /* Intel 80386 */
++#define EM_68K 4 /* Motorola m68k family */
++#define EM_88K 5 /* Motorola m88k family */
++#define EM_860 7 /* Intel 80860 */
++#define EM_MIPS 8 /* MIPS R3000 (officially, big-endian only) */
++
++#define EM_MIPS_RS4_BE 10 /* MIPS R4000 big-endian */
++
++#define EM_SPARC64 11 /* SPARC v9 (not official) 64-bit */
++
++#define EM_PARISC 15 /* HPPA */
++
++#define EM_SPARC32PLUS 18 /* Sun's "v8plus" */
++
++#define EM_PPC 20 /* PowerPC */
++
++#define EM_SH 42 /* Hitachi SH */
++
++/* If it is necessary to assign new unofficial EM_* values, please pick large
++ random numbers (0x8523, 0xa7f2, etc.) to minimize the chances of collision
++ with official or non-GNU unofficial values.
++
++ NOTE: Do not just increment the most recent number by one.
++ Somebody else somewhere will do exactly the same thing, and you
++ will have a collision. Instead, pick a random number. */
++
++/* Cygnus PowerPC ELF backend. Written in the absence of an ABI. */
++#define EM_CYGNUS_POWERPC 0x9025
++
++/* Old version of PowerPC, this should be removed shortly. */
++#define EM_PPC_OLD 17
++
++
++/* Cygnus M32R ELF backend. Written in the absence of an ABI. */
++#define EM_CYGNUS_M32R 0x9041
++
++/* Alpha backend magic number. Written in the absence of an ABI. */
++#define EM_ALPHA 0x9026
++
++/* D10V backend magic number. Written in the absence of an ABI. */
++#define EM_CYGNUS_D10V 0x7650
++
++
++
++/* mn10200 and mn10300 backend magic numbers.
++ Written in the absense of an ABI. */
++#define EM_CYGNUS_MN10200 0xdead
++#define EM_CYGNUS_MN10300 0xbeef
++
++/* See the above comment before you add a new EM_* value here. */
++
++/* Values for e_version */
++
++#define EV_NONE 0 /* Invalid ELF version */
++#define EV_CURRENT 1 /* Current version */
++
++/* Values for program header, p_type field */
++
++#define PT_NULL 0 /* Program header table entry unused */
++#define PT_LOAD 1 /* Loadable program segment */
++#define PT_DYNAMIC 2 /* Dynamic linking information */
++#define PT_INTERP 3 /* Program interpreter */
++#define PT_NOTE 4 /* Auxiliary information */
++#define PT_SHLIB 5 /* Reserved, unspecified semantics */
++#define PT_PHDR 6 /* Entry for header table itself */
++#define PT_LOPROC 0x70000000 /* Processor-specific */
++#define PT_HIPROC 0x7FFFFFFF /* Processor-specific */
++
++/* Program segment permissions, in program header p_flags field */
++
++#define PF_X (1 << 0) /* Segment is executable */
++#define PF_W (1 << 1) /* Segment is writable */
++#define PF_R (1 << 2) /* Segment is readable */
++#define PF_MASKPROC 0xF0000000 /* Processor-specific reserved bits */
++
++/* Values for section header, sh_type field */
++
++#define SHT_NULL 0 /* Section header table entry unused */
++#define SHT_PROGBITS 1 /* Program specific (private) data */
++#define SHT_SYMTAB 2 /* Link editing symbol table */
++#define SHT_STRTAB 3 /* A string table */
++#define SHT_RELA 4 /* Relocation entries with addends */
++#define SHT_HASH 5 /* A symbol hash table */
++#define SHT_DYNAMIC 6 /* Information for dynamic linking */
++#define SHT_NOTE 7 /* Information that marks file */
++#define SHT_NOBITS 8 /* Section occupies no space in file */
++#define SHT_REL 9 /* Relocation entries, no addends */
++#define SHT_SHLIB 10 /* Reserved, unspecified semantics */
++#define SHT_DYNSYM 11 /* Dynamic linking symbol table */
++
++/* The next three section types are defined by Solaris, and are named
++ SHT_SUNW*. We use them in GNU code, so we also define SHT_GNU*
++ versions. */
++#define SHT_SUNW_verdef 0x6ffffffd /* Versions defined by file */
++#define SHT_SUNW_verneed 0x6ffffffe /* Versions needed by file */
++#define SHT_SUNW_versym 0x6fffffff /* Symbol versions */
++
++#define SHT_GNU_verdef SHT_SUNW_verdef
++#define SHT_GNU_verneed SHT_SUNW_verneed
++#define SHT_GNU_versym SHT_SUNW_versym
++
++#define SHT_LOPROC 0x70000000 /* Processor-specific semantics, lo */
++#define SHT_HIPROC 0x7FFFFFFF /* Processor-specific semantics, hi */
++#define SHT_LOUSER 0x80000000 /* Application-specific semantics */
++#define SHT_HIUSER 0x8FFFFFFF /* Application-specific semantics */
++
++/* Values of note segment descriptor types for core files. */
++
++#define NT_PRSTATUS 1 /* Contains copy of prstatus struct */
++#define NT_FPREGSET 2 /* Contains copy of fpregset struct */
++#define NT_PRPSINFO 3 /* Contains copy of prpsinfo struct */
++
++/* Values of note segment descriptor types for object files. */
++/* (Only for hppa right now. Should this be moved elsewhere?) */
++
++#define NT_VERSION 1 /* Contains a version string. */
++
++/* These three macros disassemble and assemble a symbol table st_info field,
++ which contains the symbol binding and symbol type. The STB_ and STT_
++ defines identify the binding and type. */
++
++#define ELF_ST_BIND(val) (((unsigned int)(val)) >> 4)
++#define ELF_ST_TYPE(val) ((val) & 0xF)
++#define ELF_ST_INFO(bind,type) (((bind) << 4) + ((type) & 0xF))
++
++#define STN_UNDEF 0 /* undefined symbol index */
++
++#define STB_LOCAL 0 /* Symbol not visible outside obj */
++#define STB_GLOBAL 1 /* Symbol visible outside obj */
++#define STB_WEAK 2 /* Like globals, lower precedence */
++#define STB_LOPROC 13 /* Application-specific semantics */
++#define STB_HIPROC 15 /* Application-specific semantics */
++
++#define STT_NOTYPE 0 /* Symbol type is unspecified */
++#define STT_OBJECT 1 /* Symbol is a data object */
++#define STT_FUNC 2 /* Symbol is a code object */
++#define STT_SECTION 3 /* Symbol associated with a section */
++#define STT_FILE 4 /* Symbol gives a file name */
++#define STT_LOPROC 13 /* Application-specific semantics */
++#define STT_HIPROC 15 /* Application-specific semantics */
++
++/* Special section indices, which may show up in st_shndx fields, among
++ other places. */
++
++#define SHN_UNDEF 0 /* Undefined section reference */
++#define SHN_LORESERVE 0xFF00 /* Begin range of reserved indices */
++#define SHN_LOPROC 0xFF00 /* Begin range of appl-specific */
++#define SHN_HIPROC 0xFF1F /* End range of appl-specific */
++#define SHN_ABS 0xFFF1 /* Associated symbol is absolute */
++#define SHN_COMMON 0xFFF2 /* Associated symbol is in common */
++#define SHN_HIRESERVE 0xFFFF /* End range of reserved indices */
++
++/* relocation info handling macros */
++
++#define ELF32_R_INFO(s,t) (((s) << 8) + ((t) & 0xff))
++
++#define ELF64_R_INFO(s,t) (((bfd_vma) (s) << 32) + (bfd_vma) (t))
++
++/* Dynamic section tags */
++
++#define DT_NULL 0
++#define DT_NEEDED 1
++#define DT_PLTRELSZ 2
++#define DT_PLTGOT 3
++#define DT_HASH 4
++#define DT_STRTAB 5
++#define DT_SYMTAB 6
++#define DT_RELA 7
++#define DT_RELASZ 8
++#define DT_RELAENT 9
++#define DT_STRSZ 10
++#define DT_SYMENT 11
++#define DT_INIT 12
++#define DT_FINI 13
++#define DT_SONAME 14
++#define DT_RPATH 15
++#define DT_SYMBOLIC 16
++#define DT_REL 17
++#define DT_RELSZ 18
++#define DT_RELENT 19
++#define DT_PLTREL 20
++#define DT_DEBUG 21
++#define DT_TEXTREL 22
++#define DT_JMPREL 23
++
++/* The next four dynamic tags are used on Solaris. We support them
++ everywhere. */
++#define DT_VERDEF 0x6ffffffc
++#define DT_VERDEFNUM 0x6ffffffd
++#define DT_VERNEED 0x6ffffffe
++#define DT_VERNEEDNUM 0x6fffffff
++
++/* This tag is a GNU extension to the Solaris version scheme. */
++#define DT_VERSYM 0x6ffffff0
++
++#define DT_LOPROC 0x70000000
++#define DT_HIPROC 0x7fffffff
++
++/* These section tags are used on Solaris. We support them
++ everywhere, and hope they do not conflict. */
++
++#define DT_AUXILIARY 0x7ffffffd
++#define DT_FILTER 0x7fffffff
++
++/* These constants are used for the version number of a Elf32_Verdef
++ structure. */
++
++#define VER_DEF_NONE 0
++#define VER_DEF_CURRENT 1
++
++/* These constants appear in the vd_flags field of a Elf32_Verdef
++ structure. */
++
++#define VER_FLG_BASE 0x1
++#define VER_FLG_WEAK 0x2
++
++/* These special constants can be found in an Elf32_Versym field. */
++
++#define VER_NDX_LOCAL 0
++#define VER_NDX_GLOBAL 1
++
++/* These constants are used for the version number of a Elf32_Verneed
++ structure. */
++
++#define VER_NEED_NONE 0
++#define VER_NEED_CURRENT 1
++
++/* This flag appears in a Versym structure. It means that the symbol
++ is hidden, and is only visible with an explicit version number.
++ This is a GNU extension. */
++
++#define VERSYM_HIDDEN 0x8000
++
++/* This is the mask for the rest of the Versym information. */
++
++#define VERSYM_VERSION 0x7fff
++
++/* This is a special token which appears as part of a symbol name. It
++ indictes that the rest of the name is actually the name of a
++ version node, and is not part of the actual name. This is a GNU
++ extension. For example, the symbol name `stat@ver2' is taken to
++ mean the symbol `stat' in version `ver2'. */
++
++#define ELF_VER_CHR '@'
++
++#endif /* _ELF_COMMON_H */
diff --git a/editors/xemacs20/patches/patch-ah b/editors/xemacs20/patches/patch-ah
new file mode 100644
index 00000000000..523e2ca6836
--- /dev/null
+++ b/editors/xemacs20/patches/patch-ah
@@ -0,0 +1,16 @@
+$NetBSD: patch-ah,v 1.1 1998/08/29 12:31:44 garbled Exp $
+--- configure.in.orig Mon Feb 9 20:58:57 1998
++++ configure.in Fri Aug 28 08:23:21 1998
+@@ -1013,10 +1013,10 @@
+ case "$canonical" in
+ i[[3-9]]86-*-netbsd*) machine=intel386 ;;
+ hp300-*-netbsd* | amiga-*-netbsd* | sun3-*-netbsd* | mac68k-*-netbsd* | da30-*-netbsd* | m68k-*-netbsd* )
+- dnl Yes, this is somewhat bogus.
+- machine=hp9000s300 ;;
++ machine=m68k ;;
+ pc532-*-netbsd* | ns32k-*-netbsd* ) machine=ns32000 ;;
+ pmax-*-netbsd* | mips-*-netbsd* ) machine=pmax ;;
++ alpha-*-netbsd* ) machine=alpha ;;
+ esac
+ ;;
+
diff --git a/editors/xemacs20/patches/patch-ai b/editors/xemacs20/patches/patch-ai
new file mode 100644
index 00000000000..a6f0ddf5fe5
--- /dev/null
+++ b/editors/xemacs20/patches/patch-ai
@@ -0,0 +1,11 @@
+$NetBSD: patch-ai,v 1.1 1998/08/29 12:31:44 garbled Exp $
+--- src/s/netbsd.h.orig Fri Jul 24 05:57:27 1998
++++ src/s/netbsd.h Fri Jul 24 05:58:34 1998
+@@ -60,3 +60,7 @@
+ #define ORDINARY_LINK
++#ifdef __ELF__
++#define UNEXEC "unexelf.o" /* we're not in an a.out world anymore friends */
++#else
+ #define UNEXEC "unexfreebsd.o" /* ironic, considering history of unexfreebsd */
++#endif
+
diff --git a/editors/xemacs20/patches/patch-aj b/editors/xemacs20/patches/patch-aj
new file mode 100644
index 00000000000..61cfbe2557a
--- /dev/null
+++ b/editors/xemacs20/patches/patch-aj
@@ -0,0 +1,12 @@
+$NetBSD: patch-aj,v 1.1 1998/08/29 12:31:44 garbled Exp $
+--- src/unexelf.c.orig Fri Jul 24 06:17:28 1998
++++ src/unexelf.c Fri Jul 24 06:17:36 1998
+@@ -419,3 +419,8 @@
+ #include <fcntl.h>
++#ifdef __NetBSD__ /* XXX this is a hack */
++#include "netbsd.elf.h"
++#include <sys/exec_elf.h>
++#else
+ #include <elf.h>
++#endif
+ #include <sys/mman.h>