diff options
author | wiz <wiz@pkgsrc.org> | 2002-10-03 19:18:36 +0000 |
---|---|---|
committer | wiz <wiz@pkgsrc.org> | 2002-10-03 19:18:36 +0000 |
commit | 6584a89fdfcc7ebba59de9a7847d44f1bcca72a5 (patch) | |
tree | 85036fd71ba80825536fa882432b439b9a073ee0 /cross | |
parent | f293d81c2f09c2455a3d8bc3dddfa79c2f36831a (diff) | |
download | pkgsrc-6584a89fdfcc7ebba59de9a7847d44f1bcca72a5.tar.gz |
Remove some obsolete cross-compilation packages.
The recommended way nowadays is to use build.sh for generating
cross-toolchains; for details, see e.g.
http://www.netbsd.org/Documentation/cross/
Diffstat (limited to 'cross')
74 files changed, 1 insertions, 3572 deletions
diff --git a/cross/Makefile b/cross/Makefile index 61fb02d5836..d2295f9975a 100644 --- a/cross/Makefile +++ b/cross/Makefile @@ -1,10 +1,8 @@ -# $NetBSD: Makefile,v 1.26 2002/06/27 22:32:55 dmcmahill Exp $ +# $NetBSD: Makefile,v 1.27 2002/10/03 19:18:36 wiz Exp $ # COMMENT= Cross-platform development utilities -SUBDIR+= arm-netbsd -SUBDIR+= armv2-netbsd SUBDIR+= bfd-crunchide SUBDIR+= bfd-mdsetimage SUBDIR+= binutils @@ -15,18 +13,9 @@ SUBDIR+= i386-linux SUBDIR+= i386-linuxglibc1 SUBDIR+= i386-mingw32 SUBDIR+= i386-msdosdjgpp -SUBDIR+= i386-netbsd -SUBDIR+= i386-netbsdelf SUBDIR+= i386-netbsdpe SUBDIR+= m68k-netbsd -SUBDIR+= m68k-netbsdelf SUBDIR+= mipsEEel-netbsd -SUBDIR+= mipseb-netbsd -SUBDIR+= mipsel-netbsd -SUBDIR+= powerpc-netbsd -SUBDIR+= sh-netbsdcoff -SUBDIR+= shel-netbsdcoff -SUBDIR+= sparc-netbsdelf SUBDIR+= zoularis .include "../mk/bsd.pkg.subdir.mk" diff --git a/cross/arm-netbsd/DESCR b/cross/arm-netbsd/DESCR deleted file mode 100644 index 18beccc0bc2..00000000000 --- a/cross/arm-netbsd/DESCR +++ /dev/null @@ -1,4 +0,0 @@ -This cross-compile environment is for NetBSD/arm32. - -LIMITATIONS: - THIS PACKAGE WILL ONLY SUPPORT STATIC BINARIES. diff --git a/cross/arm-netbsd/MESSAGE b/cross/arm-netbsd/MESSAGE deleted file mode 100644 index 4a52258b223..00000000000 --- a/cross/arm-netbsd/MESSAGE +++ /dev/null @@ -1,15 +0,0 @@ -=========================================================================== -$NetBSD: MESSAGE,v 1.2 2002/09/12 17:16:36 wiz Exp $ - -This pkg DOES NOT install headers or runtime link libraries. Only the -compilers are installed. - -In order to have a complete development setup, you need to install -includes and libraries in ${CROSSBASE}/arm-netbsd/include and -${CROSSBASE}/arm-netbsd/lib respectively, or symlink these paths to -the appropriate places. - -LIMITATIONS: - THIS PACKAGE WILL ONLY SUPPORT STATIC BINARIES. - -=========================================================================== diff --git a/cross/arm-netbsd/Makefile b/cross/arm-netbsd/Makefile deleted file mode 100644 index d928c455318..00000000000 --- a/cross/arm-netbsd/Makefile +++ /dev/null @@ -1,21 +0,0 @@ -# $NetBSD: Makefile,v 1.2 2001/02/16 14:04:52 wiz Exp $ -# - -DISTVERSION= 1.3.0.0 -DISTFILES= # none - -MAINTAINER= packages@netbsd.org -HOMEPAGE= http://www.netbsd.org/ -COMMENT= Cross-compile environment for NetBSD/arm32 (static binaries only) - -WRKSRC= ${WRKDIR}/${EGCS_DISTNAME} - -USE_CROSS_BINUTILS= yes -BINUTILS_GNUTARGET= a.out-arm-netbsd -BINUTILS_LDEMULATION= armnbsd -USE_CROSS_EGCS= yes -EGCS_FAKE_RUNTIME= yes - -TARGET_ARCH= arm-netbsd - -.include "../COMMON/cross.mk" diff --git a/cross/arm-netbsd/PLIST b/cross/arm-netbsd/PLIST deleted file mode 100644 index 7fac8d7707f..00000000000 --- a/cross/arm-netbsd/PLIST +++ /dev/null @@ -1 +0,0 @@ -@comment $NetBSD: PLIST,v 1.1 2001/10/31 22:03:22 zuntum Exp $ diff --git a/cross/arm-netbsd/distinfo b/cross/arm-netbsd/distinfo deleted file mode 100644 index a51eafcb838..00000000000 --- a/cross/arm-netbsd/distinfo +++ /dev/null @@ -1,9 +0,0 @@ -$NetBSD: distinfo,v 1.2 2001/04/21 09:36:23 skrll Exp $ - -SHA1 (binutils-2.9.1.tar.gz) = 9df3cdcd34f81118ee403f8794b277ad28a57e14 -Size (binutils-2.9.1.tar.gz) = 5694541 bytes -SHA1 (egcs-1.1.1.tar.gz) = 381f6c15ab042a4d3605490c29620ea5ad5592a6 -Size (egcs-1.1.1.tar.gz) = 11604853 bytes -SHA1 (egcs-1.1.1-NetBSD-19980104.diff.gz) = 85ebc334bf9472b9595c4348a6bc440e836b922a -Size (egcs-1.1.1-NetBSD-19980104.diff.gz) = 59770 bytes -SHA1 (patch-aa) = 6237be03be0274b0bdaeec8e6145b0c79f898eda diff --git a/cross/arm-netbsd/patches/patch-aa b/cross/arm-netbsd/patches/patch-aa deleted file mode 100644 index 0ed724984d8..00000000000 --- a/cross/arm-netbsd/patches/patch-aa +++ /dev/null @@ -1,1234 +0,0 @@ -$NetBSD: patch-aa,v 1.1 2001/04/05 15:35:43 wiz Exp $ - -diff -U2 -r -N ./bfd/Makefile.am ../binutils-2.9.1/bfd/Makefile.am ---- ./bfd/Makefile.am Sat May 2 00:47:58 1998 -+++ ../binutils-2.9.1/bfd/Makefile.am Sat Dec 4 02:21:59 1999 -@@ -106,4 +106,6 @@ - aout0.lo \ - aout32.lo \ -+ aoutarm32.lo \ -+ armnetbsd.lo \ - bout.lo \ - cf-i386lynx.lo \ -@@ -211,4 +213,6 @@ - aout0.c \ - aout32.c \ -+ aoutarm32.c \ -+ armnetbsd.c \ - bout.c \ - cf-i386lynx.c \ -@@ -659,4 +663,7 @@ - $(INCDIR)/aout/aout64.h $(INCDIR)/aout/stab_gnu.h $(INCDIR)/aout/stab.def \ - $(INCDIR)/aout/ar.h -+armnetbsd.lo: armnetbsd.c netbsd.h libaout.h $(INCDIR)/bfdlink.h \ -+ aout-target.h $(INCDIR)/aout/aout64.h $(INCDIR)/aout/stab_gnu.h \ -+ $(INCDIR)/aout/stab.def $(INCDIR)/aout/ar.h - bout.lo: bout.c $(INCDIR)/bfdlink.h genlink.h $(INCDIR)/bout.h \ - $(INCDIR)/aout/stab_gnu.h $(INCDIR)/aout/stab.def libaout.h -diff -U2 -r -N ./bfd/Makefile.in ../binutils-2.9.1/bfd/Makefile.in ---- ./bfd/Makefile.in Sat May 2 00:47:59 1998 -+++ ../binutils-2.9.1/bfd/Makefile.in Sat Dec 4 02:21:59 1999 -@@ -195,4 +195,6 @@ - aout0.lo \ - aout32.lo \ -+ aoutarm32.lo \ -+ armnetbsd.lo \ - bout.lo \ - cf-i386lynx.lo \ -@@ -300,4 +302,6 @@ - aout0.c \ - aout32.c \ -+ aoutarm32.c \ -+ armnetbsd.c \ - bout.c \ - cf-i386lynx.c \ -@@ -1116,4 +1120,7 @@ - $(INCDIR)/aout/aout64.h $(INCDIR)/aout/stab_gnu.h $(INCDIR)/aout/stab.def \ - $(INCDIR)/aout/ar.h -+armnetbsd.lo: armnetbsd.c netbsd.h libaout.h $(INCDIR)/bfdlink.h \ -+ aout-target.h $(INCDIR)/aout/aout64.h $(INCDIR)/aout/stab_gnu.h \ -+ $(INCDIR)/aout/stab.def $(INCDIR)/aout/ar.h - bout.lo: bout.c $(INCDIR)/bfdlink.h genlink.h $(INCDIR)/bout.h \ - $(INCDIR)/aout/stab_gnu.h $(INCDIR)/aout/stab.def libaout.h -diff -U2 -r -N ./bfd/aoutarm32.c ../binutils-2.9.1/bfd/aoutarm32.c ---- ./bfd/aoutarm32.c Thu Jan 1 09:00:00 1970 -+++ ../binutils-2.9.1/bfd/aoutarm32.c Sat Dec 4 02:21:59 1999 -@@ -0,0 +1,504 @@ -+/* BFD back-end for 32-bit a.out files. -+ Copyright (C) 1990, 91, 92, 93, 94 Free Software Foundation, Inc. -+ Written by Cygnus Support. -+ -+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. */ -+ -+#define FPRINTF(x) -+ -+#ifndef FPRINTF -+#define FPRINTF(x) fprintf x -+#endif -+ -+#define N_HEADER_IN_TEXT(x) 1 -+ -+#include <stdio.h> -+ -+#define ARCH_SIZE 32 -+ -+#define BYTES_IN_WORD 4 -+ -+#include "bfd.h" -+#include "aout/aout64.h" -+ -+#define MY(op) CAT(aoutarm_,op) -+#define NAME(x, y) CAT3(aoutarm,_32_,y) -+ -+#include "libaout.h" -+ -+static bfd_reloc_status_type -+MY(fix_pcrel_26_done) PARAMS ((bfd *, arelent *, asymbol *, PTR, -+ asection *, bfd *, char **)); -+ -+static bfd_reloc_status_type -+MY(fix_pcrel_26) PARAMS ((bfd *, arelent *, asymbol *, PTR, -+ asection *, bfd *, char **)); -+ -+#define MY_swap_std_reloc_in MY(swap_std_reloc_in) -+#define MY_swap_std_reloc_out MY(swap_std_reloc_out) -+ -+static void -+MY_swap_std_reloc_in PARAMS ((bfd *abfd, struct reloc_std_external *bytes, -+ arelent *cache_ptr, asymbol **symbols, -+ bfd_size_type symcount)); -+ -+static void -+MY_swap_std_reloc_out PARAMS ((bfd *abfd, arelent *g, -+ struct reloc_std_external *natptr)); -+ -+reloc_howto_type MY(howto_table)[] = -+{ -+ /* type rs size bsz pcrel bitpos ovrf sf name part_inpl readmask setmask -+ pcdone */ -+ HOWTO (0, 0, 0, 8, false, 0, complain_overflow_bitfield, 0, "8", true, -+ 0x000000ff, 0x000000ff, false), -+ HOWTO (1, 0, 1, 16, false, 0, complain_overflow_bitfield, 0, "16", true, -+ 0x0000ffff, 0x0000ffff, false), -+ HOWTO (2, 0, 2, 32, false, 0, complain_overflow_bitfield, 0, "32", true, -+ 0xffffffff, 0xffffffff, false), -+ HOWTO (3, 2, 2, 26, true, 0, complain_overflow_signed, MY(fix_pcrel_26), -+ "ARM26", true, 0x00ffffff, 0x00ffffff, true), -+ HOWTO (4, 0, 0, 8, true, 0, complain_overflow_signed, 0, "DISP8", true, -+ 0x000000ff, 0x000000ff, true), -+ HOWTO (5, 0, 1, 16, true, 0, complain_overflow_signed, 0, "DISP16", true, -+ 0x0000ffff, 0x0000ffff, true), -+ HOWTO (6, 0, 2, 32, true, 0, complain_overflow_signed, 0, "DISP32", true, -+ 0xffffffff, 0xffffffff, true), -+ HOWTO (7, 2, 2, 26, false, 0, complain_overflow_signed, -+ MY(fix_pcrel_26_done), "ARM26D", true, 0x0, 0x0, -+ false), -+ {-1}, -+ HOWTO (9, 0, -1, 16, false, 0, complain_overflow_bitfield, 0, "NEG16", true, -+ 0x0000ffff, 0x0000ffff, false), -+ HOWTO (10, 0, -2, 32, false, 0, complain_overflow_bitfield, 0, "NEG32", true, -+ 0xffffffff, 0xffffffff, false), -+ {-1}, -+ {-1}, -+ {-1}, -+ {-1}, -+ {-1}, -+ -+ {-1}, -+ HOWTO (17, 0, 1, 16, false, 0, complain_overflow_bitfield, 0, "GOT12", true, -+ 0x00000fff, 0x00000fff, false), -+ HOWTO (18, 0, 2, 32, false, 0, complain_overflow_bitfield, 0, "GOT32", true, -+ 0xffffffff, 0xffffffff, false), -+ HOWTO (19, 0, 2, 26, true, 0, complain_overflow_bitfield, MY(fix_pcrel_26), "JMPSLOT", true, -+ 0x00ffffff, 0x00ffffff, true), -+ -+ {-1}, -+ {-1}, -+ HOWTO (22, 0, 2, 32, true, 0, complain_overflow_bitfield, 0, "GOTPC", true, -+ 0xffffffff, 0xffffffff, true), -+ {-1}, -+ -+ {-1}, -+ {-1}, -+ {-1}, -+ {-1}, -+ {-1}, -+ {-1}, -+ {-1}, -+ {-1}, -+}; -+ -+#define RELOC_ARM_BITS_NEG_BIG ((unsigned int) 0x08) -+#define RELOC_ARM_BITS_NEG_LITTLE ((unsigned int) 0x10) -+#define RELOC_ARM_BITS_PIC_BIG ((unsigned int) 0x04) -+#define RELOC_ARM_BITS_PIC_LITTLE ((unsigned int) 0x20) -+ -+reloc_howto_type * -+MY(reloc_howto)(abfd, rel, r_index, r_extern, r_pcrel) -+ bfd *abfd; -+ struct reloc_std_external *rel; -+ int *r_index; -+ int *r_extern; -+ int *r_pcrel; -+{ -+ unsigned int r_length; -+ unsigned int r_pcrel_done; -+ unsigned int r_neg; -+ unsigned int r_pic; -+ int index; -+ -+FPRINTF((stderr, "%s:reloc_howto", __FILE__)); -+ -+ *r_pcrel = 0; -+ if (bfd_header_big_endian (abfd)) -+ { -+ *r_index = ((rel->r_index[0] << 16) -+ | (rel->r_index[1] << 8) -+ | rel->r_index[2]); -+ *r_extern = (0 != (rel->r_type[0] & RELOC_STD_BITS_EXTERN_BIG)); -+ r_pcrel_done = (0 != (rel->r_type[0] & RELOC_STD_BITS_PCREL_BIG)); -+ r_neg = (0 != (rel->r_type[0] & RELOC_ARM_BITS_NEG_BIG)); -+ r_pic = (0 != (rel->r_type[0] & RELOC_ARM_BITS_PIC_BIG)); -+ r_length = ((rel->r_type[0] & RELOC_STD_BITS_LENGTH_BIG) -+ >> RELOC_STD_BITS_LENGTH_SH_BIG); -+ } -+ else -+ { -+ *r_index = ((rel->r_index[2] << 16) -+ | (rel->r_index[1] << 8) -+ | rel->r_index[0]); -+ *r_extern = (0 != (rel->r_type[0] & RELOC_STD_BITS_EXTERN_LITTLE)); -+ r_pcrel_done = (0 != (rel->r_type[0] & RELOC_STD_BITS_PCREL_LITTLE)); -+ r_neg = (0 != (rel->r_type[0] & RELOC_ARM_BITS_NEG_LITTLE)); -+ r_pic = (0 != (rel->r_type[0] & RELOC_ARM_BITS_PIC_LITTLE)); -+ r_length = ((rel->r_type[0] & RELOC_STD_BITS_LENGTH_LITTLE) -+ >> RELOC_STD_BITS_LENGTH_SH_LITTLE); -+ } -+ index = r_length + 4 * r_pcrel_done + 8 * r_neg + 16 * r_pic; -+ if (index == 3) -+ *r_pcrel = 1; -+ if (index == 19) /* jmpslot */ -+ *r_pcrel = 1; -+FPRINTF((stderr, " index=%d name=%s\n", index, (MY(howto_table) + index)->name)); -+ return MY(howto_table) + index; -+} -+ -+#define MY_reloc_howto(BFD, REL, IN, EX, PC) \ -+ MY(reloc_howto) (BFD, REL, &IN, &EX, &PC) -+ -+void -+MY(put_reloc)(abfd, r_extern, r_index, value, howto, reloc) -+ bfd *abfd; -+ int r_extern; -+ int r_index; -+ long value; -+ reloc_howto_type *howto; -+ struct reloc_std_external *reloc; -+{ -+ unsigned int r_length; -+ int r_pcrel; -+ int r_neg; -+ int r_pic; -+ -+FPRINTF((stderr, "%s:put_reloc\n", __FILE__)); -+ -+ PUT_WORD (abfd, value, reloc->r_address); -+ r_length = howto->size ; /* Size as a power of two */ -+ -+ /* Special case for branch relocations. */ -+ if (howto->type == 3 || howto->type == 7) -+ r_length = 3; -+ if (howto->type == 19) -+ r_length = 3; -+ -+ r_pcrel = howto->type & 4; /* PC Relative done? */ -+ r_neg = howto->type & 8; /* Negative relocation */ -+ r_pic = howto->type & 16; /* PIC relocation */ -+ if (bfd_header_big_endian (abfd)) -+ { -+ reloc->r_index[0] = r_index >> 16; -+ reloc->r_index[1] = r_index >> 8; -+ reloc->r_index[2] = r_index; -+ reloc->r_type[0] = -+ ((r_extern ? RELOC_STD_BITS_EXTERN_BIG : 0) -+ | (r_pcrel ? RELOC_STD_BITS_PCREL_BIG : 0) -+ | (r_neg ? RELOC_ARM_BITS_NEG_BIG : 0) -+ | (r_pic ? RELOC_ARM_BITS_PIC_BIG : 0) -+ | (r_length << RELOC_STD_BITS_LENGTH_SH_BIG)); -+ } -+ else -+ { -+ reloc->r_index[2] = r_index >> 16; -+ reloc->r_index[1] = r_index >> 8; -+ reloc->r_index[0] = r_index; -+ reloc->r_type[0] = -+ ((r_extern ? RELOC_STD_BITS_EXTERN_LITTLE : 0) -+ | (r_pcrel ? RELOC_STD_BITS_PCREL_LITTLE : 0) -+ | (r_neg ? RELOC_ARM_BITS_NEG_LITTLE : 0) -+ | (r_pic ? RELOC_ARM_BITS_PIC_LITTLE : 0) -+ | (r_length << RELOC_STD_BITS_LENGTH_SH_LITTLE)); -+ } -+} -+ -+#define MY_put_reloc(BFD, EXT, IDX, VAL, HOWTO, RELOC) \ -+ MY(put_reloc)(BFD, EXT, IDX, VAL, HOWTO, RELOC) -+ -+#include "aoutx.h" -+ -+reloc_howto_type * -+MY(bfd_reloc_type_lookup)(abfd,code) -+ bfd *abfd; -+ bfd_reloc_code_real_type code; -+{ -+FPRINTF((stderr, "%s:bfd_reloc_type_lookup code=%d\n", __FILE__, (int)code)); -+ -+#define ASTD(i,j) case i: FPRINTF((stderr, "i=%d j=%d\n", i,j)); return &MY(howto_table)[j] -+ if (code == BFD_RELOC_CTOR) -+ switch (bfd_get_arch_info (abfd)->bits_per_address) -+ { -+ case 32: -+ code = BFD_RELOC_32; -+ break; -+ default: return (CONST struct reloc_howto_struct *) 0; -+ } -+ -+ switch (code) -+ { -+ ASTD (BFD_RELOC_16, 1); -+ ASTD (BFD_RELOC_32, 2); -+ ASTD (BFD_RELOC_ARM_PCREL_BRANCH, 3); -+ ASTD (BFD_RELOC_8_PCREL, 4); -+ ASTD (BFD_RELOC_16_PCREL, 5); -+ ASTD (BFD_RELOC_32_PCREL, 6); -+ ASTD (BFD_RELOC_ARM_GOT12, 17); -+ ASTD (BFD_RELOC_ARM_GOT32, 18); -+ ASTD (BFD_RELOC_ARM_GOTPC, 22); -+ ASTD (BFD_RELOC_ARM_JMPSLOT, 19); -+ default: return (CONST struct reloc_howto_struct *) 0; -+ } -+} -+ -+static bfd_reloc_status_type -+MY(fix_pcrel_26) (abfd, reloc_entry, symbol, data, input_section, -+ output_bfd, error_message) -+ bfd *abfd; -+ arelent *reloc_entry; -+ asymbol *symbol; -+ PTR data; -+ asection *input_section; -+ bfd *output_bfd; -+ char **error_message; -+{ -+ bfd_vma relocation; -+ bfd_size_type addr = reloc_entry->address; -+ long target = bfd_get_32 (abfd, (bfd_byte *) data + addr); -+ bfd_reloc_status_type flag = bfd_reloc_ok; -+ -+FPRINTF((stderr, "%s:fix_pcrel_26\n", __FILE__)); -+FPRINTF((stderr, "reloc: target=%x sym->val=%x sym->vma=%x sym->off=%x\n", target, symbol->value, symbol->section->output_section->vma, symbol->section->output_offset)); -+FPRINTF((stderr, "reloc: addend=%x ins->vma=%x ins->off=%x addr=%x\n", reloc_entry->addend, input_section->output_section->vma, input_section->output_offset, addr)); -+ -+ /* If this is an undefined symbol, return error */ -+ if (symbol->section == &bfd_und_section -+ && (symbol->flags & BSF_WEAK) == 0) -+ return output_bfd ? bfd_reloc_ok : bfd_reloc_undefined; -+ -+ /* If the sections are different, and we are doing a partial relocation, -+ just ignore it for now. */ -+ if (symbol->section->name != input_section->name -+ && output_bfd != (bfd *)NULL) -+ return bfd_reloc_ok; -+ -+FPRINTF((stderr, "doing relocation\n")); -+ -+ relocation = (target & 0x00ffffff) << 2; -+ relocation = (relocation ^ 0x02000000) - 0x02000000; /* Sign extend */ -+ relocation += symbol->value; -+ relocation += symbol->section->output_section->vma; -+ relocation += symbol->section->output_offset; -+ relocation += reloc_entry->addend; -+ relocation -= input_section->output_section->vma; -+ relocation -= input_section->output_offset; -+ relocation -= addr; -+ if (relocation & 3) -+ return bfd_reloc_overflow; -+ -+ /* Check for overflow */ -+ if (relocation & 0x02000000) -+ { -+ if ((relocation & ~0x03ffffff) != ~0x03ffffff) -+ flag = bfd_reloc_overflow; -+ } -+ else if (relocation & ~0x03ffffff) -+ flag = bfd_reloc_overflow; -+ -+ target &= ~0x00ffffff; -+ target |= (relocation >> 2) & 0x00ffffff; -+ bfd_put_32 (abfd, target, (bfd_byte *) data + addr); -+ -+ /* Now the ARM magic... Change the reloc type so that it is marked as done. -+ Strictly this is only necessary if we are doing a partial relocation. */ -+ reloc_entry->howto = &MY(howto_table)[7]; -+ -+ return flag; -+} -+ -+static bfd_reloc_status_type -+MY(fix_pcrel_26_done) (abfd, reloc_entry, symbol, data, input_section, -+ output_bfd, error_message) -+ bfd *abfd; -+ arelent *reloc_entry; -+ asymbol *symbol; -+ PTR data; -+ asection *input_section; -+ bfd *output_bfd; -+ char **error_message; -+{ -+ bfd_size_type addr = reloc_entry->address; -+ long target = bfd_get_32 (abfd, (bfd_byte *) data + addr); -+ -+FPRINTF((stderr, "%s:fix_pcrel_26_done\n", __FILE__)); -+FPRINTF((stderr, "reloc: target=%x sym->val=%x sym->vma=%x sym->off=%x\n", target, symbol->value, symbol->section->output_section->vma, symbol->section->output_offset)); -+FPRINTF((stderr, "reloc: addend=%x ins->vma=%x ins->off=%x addr=%x\n", reloc_entry->addend, input_section->output_section->vma, input_section->output_offset, addr)); -+ return bfd_reloc_ok; -+} -+ -+static void -+MY_swap_std_reloc_in (abfd, bytes, cache_ptr, symbols, symcount) -+ bfd *abfd; -+ struct reloc_std_external *bytes; -+ arelent *cache_ptr; -+ asymbol **symbols; -+ bfd_size_type symcount; -+{ -+ int r_index; -+ int r_extern; -+ unsigned int r_length; -+ int r_pcrel; -+ struct aoutdata *su = &(abfd->tdata.aout_data->a); -+ -+ FPRINTF((stderr, "%s:swap_std_reloc_in\n", __FILE__)); -+ -+ cache_ptr->address = bfd_h_get_32 (abfd, bytes->r_address); -+ -+ cache_ptr->howto = MY_reloc_howto (abfd, bytes, r_index, r_extern, r_pcrel); -+ -+ FPRINTF((stderr, "%s:swap_std_reloc_in: type=%d name=%s\n", __FILE__, cache_ptr->howto->type, cache_ptr->howto->name)); -+ -+ MOVE_ADDRESS (0); -+} -+ -+void -+MY_swap_std_reloc_out (abfd, g, natptr) -+ bfd *abfd; -+ arelent *g; -+ struct reloc_std_external *natptr; -+{ -+ int r_index; -+ asymbol *sym = *(g->sym_ptr_ptr); -+ int r_extern; -+ int r_length; -+ int r_pcrel; -+ int r_neg = 0; /* Negative relocs use the BASEREL bit. */ -+ int r_pic = 0; -+ asection *output_section = sym->section->output_section; -+ -+ FPRINTF((stderr, "%s:swap_std_reloc_out type=%d name=%s: ga=%x na=%x", __FILE__, g->howto->type, g->howto->name, g->address, natptr->r_address)); -+ -+ PUT_WORD(abfd, g->address, natptr->r_address); -+ -+ r_length = g->howto->size ; /* Size as a power of two */ -+ if (r_length < 0) -+ { -+ r_length = -r_length; -+ r_neg = 1; -+ } -+ -+ r_pcrel = (int) g->howto->pc_relative; /* Relative to PC? */ -+ -+ /* For RISC iX, in pc-relative relocs the r_pcrel bit means that the -+ relocation has been done already (Only for the 26-bit one I think)???!!! -+ */ -+ -+ if (g->howto->type == 3) -+ { -+ r_length = 3; -+ r_pcrel = 0; -+ } -+ else if (g->howto->type == 7) -+ { -+ r_length = 3; -+ r_pcrel = 1; -+ } -+ -+ /* Are we base relative i.e. PIC */ -+ if (g->howto->type >= 16) -+ r_pic = 1; -+ -+ /* jmpslot (branch with pic set) - treat like a branch */ -+ if (g->howto->type == 19) { -+ r_length = 3; -+ r_pcrel = 0; -+ } -+#if 0 -+ /* For a standard reloc, the addend is in the object file. */ -+ r_addend = g->addend + (*(g->sym_ptr_ptr))->section->output_section->vma; -+#endif -+ -+ /* name was clobbered by aout_write_syms to be symbol index */ -+ -+ /* If this relocation is relative to a symbol then set the -+ r_index to the symbols index, and the r_extern bit. -+ -+ Absolute symbols can come in in two ways, either as an offset -+ from the abs section, or as a symbol which has an abs value. -+ check for that here -+ */ -+ -+ if (bfd_is_com_section (output_section) -+ || output_section == &bfd_abs_section -+ || output_section == &bfd_und_section) -+ { -+ if (bfd_abs_section.symbol == sym) -+ { -+ /* Whoops, looked like an abs symbol, but is really an offset -+ from the abs section */ -+ r_index = 0; -+ r_extern = 0; -+ } -+ else -+ { -+ /* Fill in symbol */ -+ r_extern = 1; -+ r_index = (*(g->sym_ptr_ptr))->KEEPIT; -+ } -+ } -+ else -+ { -+ /* Just an ordinary section */ -+ r_extern = 0; -+ r_index = output_section->target_index; -+ if (r_pic && g->howto->type == 18) { -+ r_index = (*(g->sym_ptr_ptr))->KEEPIT; -+/* r_extern = 1;*/ /*260697*/ -+ if (sym->flags & BSF_GLOBAL) -+ r_extern = 1; -+ FPRINTF((stderr, "*")); -+ } -+ } -+FPRINTF((stderr, " index=%d\n", r_index)); -+ /* now the fun stuff */ -+ if (bfd_header_big_endian (abfd)) -+ { -+ natptr->r_index[0] = r_index >> 16; -+ natptr->r_index[1] = r_index >> 8; -+ natptr->r_index[2] = r_index; -+ natptr->r_type[0] = -+ ( (r_extern ? RELOC_STD_BITS_EXTERN_BIG: 0) -+ | (r_pcrel ? RELOC_STD_BITS_PCREL_BIG: 0) -+ | (r_neg ? RELOC_ARM_BITS_NEG_BIG: 0) -+ | (r_pic ? RELOC_ARM_BITS_PIC_BIG: 0) -+ | (r_length << RELOC_STD_BITS_LENGTH_SH_BIG)); -+ } -+ else -+ { -+ natptr->r_index[2] = r_index >> 16; -+ natptr->r_index[1] = r_index >> 8; -+ natptr->r_index[0] = r_index; -+ natptr->r_type[0] = -+ ( (r_extern ? RELOC_STD_BITS_EXTERN_LITTLE: 0) -+ | (r_pcrel ? RELOC_STD_BITS_PCREL_LITTLE: 0) -+ | (r_neg ? RELOC_ARM_BITS_NEG_LITTLE: 0) -+ | (r_pic ? RELOC_ARM_BITS_PIC_LITTLE: 0) -+ | (r_length << RELOC_STD_BITS_LENGTH_SH_LITTLE)); -+ } -+} -+ -diff -U2 -r -N ./bfd/armnetbsd.c ../binutils-2.9.1/bfd/armnetbsd.c ---- ./bfd/armnetbsd.c Thu Jan 1 09:00:00 1970 -+++ ../binutils-2.9.1/bfd/armnetbsd.c Sat Dec 4 02:21:59 1999 -@@ -0,0 +1,47 @@ -+/* BFD back-end for NetBSD/ARM a.out-ish binaries. -+ Copyright (C) 1990, 1991, 1992 Free Software Foundation, Inc. -+ -+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. */ -+ -+#define BYTES_IN_WORD 4 -+#undef TARGET_IS_BIG_ENDIAN_P -+ -+#define TARGET_PAGE_SIZE 4096 -+#define SEGMENT_SIZE TARGET_PAGE_SIZE -+ -+#define DEFAULT_ARCH bfd_arch_arm -+#define DEFAULT_MID M_ARM6_NETBSD -+/*#define MACHTYPE_OK(mtype) ((mtype) == M_ARM6_NETBSD)*/ -+ -+#define MY(OP) CAT(armnetbsd_,OP) -+/* This needs to start with a.out so GDB knows it is an a.out variant. */ -+#define TARGETNAME "a.out-arm-netbsd" -+ -+#define NAME(x,y) CAT3(aoutarm,_32_,y) -+ -+#define aoutarm_32_get_section_contents aout_32_get_section_contents -+ -+#define MY_bfd_reloc_type_lookup aoutarm_bfd_reloc_type_lookup -+ -+#include "bfd.h" /* To ensure following declaration is OK */ -+ -+CONST struct reloc_howto_struct * -+MY_bfd_reloc_type_lookup -+ PARAMS((bfd *abfd AND -+ bfd_reloc_code_real_type code)); -+ -+#include "netbsd.h" -diff -U2 -r -N ./bfd/bfd-in2.h ../binutils-2.9.1/bfd/bfd-in2.h ---- ./bfd/bfd-in2.h Sat May 2 00:48:01 1998 -+++ ../binutils-2.9.1/bfd/bfd-in2.h Sat Dec 4 02:21:59 1999 -@@ -1850,4 +1850,8 @@ - BFD_RELOC_ARM_THUMB_SHIFT, - BFD_RELOC_ARM_THUMB_OFFSET, -+ BFD_RELOC_ARM_GOTPC, -+ BFD_RELOC_ARM_GOT12, -+ BFD_RELOC_ARM_GOT32, -+ BFD_RELOC_ARM_JMPSLOT, - - /* Hitachi SH relocs. Not all of these appear in object files. */ -diff -U2 -r -N ./bfd/config.bfd ../binutils-2.9.1/bfd/config.bfd ---- ./bfd/config.bfd Sat Dec 4 02:20:13 1999 -+++ ../binutils-2.9.1/bfd/config.bfd Sat Dec 4 02:21:59 1999 -@@ -83,5 +83,8 @@ - targ_selvecs=bfd_elf32_bigarc_vec - ;; -- -+ arm-*-netbsd*) -+ targ_defvec=armnetbsd_vec -+ targ_underscore=yes -+ ;; - arm-*-riscix*) - targ_defvec=riscix_vec -diff -U2 -r -N ./bfd/configure ../binutils-2.9.1/bfd/configure ---- ./bfd/configure Sat Dec 4 02:20:12 1999 -+++ ../binutils-2.9.1/bfd/configure Sat Dec 4 02:21:59 1999 -@@ -2704,4 +2704,5 @@ - armcoff_little_vec) tb="$tb coff-arm.lo cofflink.lo " ;; - armcoff_big_vec) tb="$tb coff-arm.lo cofflink.lo " ;; -+ armnetbsd_vec) tb="$tb armnetbsd.lo aoutarm32.lo " ;; - armpe_little_vec) tb="$tb pe-arm.lo coff-arm.lo cofflink.lo " ;; - armpe_big_vec) tb="$tb pe-arm.lo coff-arm.lo cofflink.lo " ;; -diff -U2 -r -N ./bfd/configure.in ../binutils-2.9.1/bfd/configure.in ---- ./bfd/configure.in Sat May 2 00:48:05 1998 -+++ ../binutils-2.9.1/bfd/configure.in Sat Dec 4 02:21:59 1999 -@@ -388,4 +388,5 @@ - armcoff_little_vec) tb="$tb coff-arm.lo cofflink.lo " ;; - armcoff_big_vec) tb="$tb coff-arm.lo cofflink.lo " ;; -+ armnetbsd_vec) tb="$tb armnetbsd.lo aoutarm32.lo " ;; - armpe_little_vec) tb="$tb pe-arm.lo coff-arm.lo cofflink.lo " ;; - armpe_big_vec) tb="$tb pe-arm.lo coff-arm.lo cofflink.lo " ;; -diff -U2 -r -N ./bfd/libaout.h ../binutils-2.9.1/bfd/libaout.h ---- ./bfd/libaout.h Sat May 2 00:48:11 1998 -+++ ../binutils-2.9.1/bfd/libaout.h Sat Dec 4 02:21:59 1999 -@@ -233,4 +233,5 @@ - M_VAX_NETBSD = 140, /* NetBSD/vax binary */ - M_ALPHA_NETBSD = 141, /* NetBSD/alpha binary */ -+ M_ARM6_NETBSD = 143, /* NetBSD/arm32 binary */ - M_SPARCLET_1 = 147, /* 0x93, reserved */ - M_MIPS1 = 151, /* MIPS R2000/R3000 binary */ -diff -U2 -r -N ./bfd/reloc.c ../binutils-2.9.1/bfd/reloc.c ---- ./bfd/reloc.c Sat May 2 00:48:14 1998 -+++ ../binutils-2.9.1/bfd/reloc.c Sat Dec 4 02:21:59 1999 -@@ -2167,4 +2167,12 @@ - ENUMX - BFD_RELOC_ARM_THUMB_OFFSET -+ENUMX -+ BFD_RELOC_ARM_GOTPC -+ENUMX -+ BFD_RELOC_ARM_GOT12 -+ENUMX -+ BFD_RELOC_ARM_GOT32 -+ENUMX -+ BFD_RELOC_ARM_JMPSLOT - ENUMDOC - These relocs are only used within the ARM assembler. They are not -diff -U2 -r -N ./bfd/targets.c ../binutils-2.9.1/bfd/targets.c ---- ./bfd/targets.c Sat Dec 4 02:20:12 1999 -+++ ../binutils-2.9.1/bfd/targets.c Sat Dec 4 02:21:59 1999 -@@ -482,4 +482,5 @@ - extern const bfd_target armpei_little_vec; - extern const bfd_target armpei_big_vec; -+extern const bfd_target armnetbsd_vec; - extern const bfd_target b_out_vec_big_host; - extern const bfd_target b_out_vec_little_host; -@@ -737,4 +738,5 @@ - &armpei_little_vec, - &armpei_big_vec, -+ &armnetbsd_vec, - &icoff_big_vec, - &icoff_little_vec, -diff -U2 -r -N ./ld/Makefile.am ../binutils-2.9.1/ld/Makefile.am ---- ./ld/Makefile.am Sat May 2 00:48:47 1998 -+++ ../binutils-2.9.1/ld/Makefile.am Sat Dec 4 02:22:08 1999 -@@ -99,4 +99,5 @@ - earmaoutl.o \ - earmcoff.o \ -+ earmnbsd.o \ - earmpe.o \ - ecoff_sparc.o \ -@@ -254,4 +255,7 @@ - $(srcdir)/emultempl/generic.em $(srcdir)/scripttempl/armcoff.sc ${GEN_DEPENDS} - ${GENSCRIPTS} armcoff "$(tdir_armcoff)" -+earmnbsd.c: $(srcdir)/emulparams/armnbsd.sh \ -+ $(srcdir)/emultempl/generic.em $(srcdir)/scripttempl/armaout.sc ${GEN_DEPENDS} -+ ${GENSCRIPTS} armnbsd "$(tdir_armnbsd)" - earmpe.c: $(srcdir)/emulparams/armpe.sh \ - $(srcdir)/emultempl/pe.em $(srcdir)/scripttempl/pe.sc ${GEN_DEPENDS} -diff -U2 -r -N ./ld/Makefile.in ../binutils-2.9.1/ld/Makefile.in ---- ./ld/Makefile.in Sat Dec 4 02:20:12 1999 -+++ ../binutils-2.9.1/ld/Makefile.in Sat Dec 4 02:22:08 1999 -@@ -175,4 +175,5 @@ - earmaoutl.o \ - earmcoff.o \ -+ earmnbsd.o \ - earmpe.o \ - ecoff_sparc.o \ -@@ -764,4 +765,7 @@ - $(srcdir)/emultempl/generic.em $(srcdir)/scripttempl/armcoff.sc ${GEN_DEPENDS} - ${GENSCRIPTS} armcoff "$(tdir_armcoff)" -+earmnbsd.c: $(srcdir)/emulparams/armnbsd.sh \ -+ $(srcdir)/emultempl/generic.em $(srcdir)/scripttempl/armaout.sc ${GEN_DEPENDS} -+ ${GENSCRIPTS} armnbsd "$(tdir_armnbsd)" - earmpe.c: $(srcdir)/emulparams/armpe.sh \ - $(srcdir)/emultempl/pe.em $(srcdir)/scripttempl/pe.sc ${GEN_DEPENDS} -diff -U2 -r -N ./ld/configure.tgt ../binutils-2.9.1/ld/configure.tgt ---- ./ld/configure.tgt Sat May 2 00:48:48 1998 -+++ ../binutils-2.9.1/ld/configure.tgt Sat Dec 4 02:22:08 1999 -@@ -106,4 +106,5 @@ - armeb-*-aout) targ_emul=armaoutb ;; - arm-*-coff) targ_emul=armcoff ;; -+arm-*-netbsd*) targ_emul=armnbsd ;; - thumb-*-coff) targ_emul=armcoff ;; - thumb-*-pe) targ_emul=armpe ;; -diff -U2 -r -N ./ld/emulparams/armnbsd.sh ../binutils-2.9.1/ld/emulparams/armnbsd.sh ---- ./ld/emulparams/armnbsd.sh Thu Jan 1 09:00:00 1970 -+++ ../binutils-2.9.1/ld/emulparams/armnbsd.sh Sat Dec 4 02:22:08 1999 -@@ -0,0 +1,7 @@ -+SCRIPT_NAME=aout -+TEXT_START_ADDR=0x1020 -+OUTPUT_FORMAT="a.out-arm-netbsd" -+TARGET_PAGE_SIZE=0x1000 -+ARCH=arm -+EXECUTABLE_SYMBOLS='__DYNAMIC = 0;' -+NONPAGED_TEXT_START_ADDR=0x1000 -diff -U2 -r -N ./gas/config/tc-arm.c ../binutils-2.9.1/gas/config/tc-arm.c ---- ./gas/config/tc-arm.c Sat May 2 00:44:39 1998 -+++ ../binutils-2.9.1/gas/config/tc-arm.c Sat Dec 4 02:56:53 1999 -@@ -33,4 +33,8 @@ - #include "listing.h" - -+/* Parser fixup to handle complicated __GLOBAL_OFFSET_TABLE_ expressions */ -+#define TC_PARSE_CONS_EXPRESSION(EXP, NBYTES)\ -+ parse_cons_expression_arm(EXP) -+ - /* ??? This is currently unused. */ - #ifdef __STDC__ -@@ -88,4 +92,6 @@ - static unsigned long cpu_variant = CPU_DEFAULT | FPU_DEFAULT; - -+static boolean pic_code = false; -+ - #ifdef OBJ_COFF - /* Flags stored in private area of BFD COFF structure */ -@@ -93,5 +99,4 @@ - static boolean support_interwork = false; - static boolean uses_apcs_float = false; --static boolean pic_code = false; - #endif - -@@ -864,4 +869,8 @@ - static void s_force_thumb PARAMS ((int)); - static void s_thumb_func PARAMS ((int)); -+static void s_cons PARAMS ((int)); -+static void s_type PARAMS ((int)); -+static void s_weak PARAMS ((int)); -+static void s_size PARAMS ((int)); - - static int my_get_expression PARAMS ((expressionS *, char **)); -@@ -880,8 +889,13 @@ - {"ltorg", s_ltorg, 0}, - {"pool", s_ltorg, 0}, -- {"word", cons, 4}, -+ {"word", s_cons, 4}, - {"extend", float_cons, 'x'}, - {"ldouble", float_cons, 'x'}, - {"packed", float_cons, 'p'}, -+ {"type", s_type, 0}, -+ {"weak", s_weak, 0}, -+#if 0 -+ {"size", s_size, 0}, -+#endif - {0, 0, 0} - }; -@@ -5274,4 +5288,8 @@ - break; - -+ case BFD_RELOC_ARM_GOTPC: -+ md_number_to_chars (buf, value, 4); -+ break; -+ - case BFD_RELOC_ARM_CP_OFF_IMM: - sign = value >= 0; -@@ -5481,4 +5499,12 @@ - - case BFD_RELOC_32: -+ if (pic_code && fixp->fx_pcrel == 0 && fixp->fx_addsy != NULL) -+ { -+ if (section == text_section) -+ code = BFD_RELOC_ARM_GOT32; -+ else -+ code = fixp->fx_r_type; -+ break; -+ } - if (fixp->fx_pcrel) - { -@@ -5488,4 +5514,9 @@ - - case BFD_RELOC_ARM_PCREL_BRANCH: -+ if (pic_code) -+ { -+ code = BFD_RELOC_ARM_JMPSLOT; -+ break; -+ } - case BFD_RELOC_RVA: - case BFD_RELOC_THUMB_PCREL_BRANCH9: -@@ -5503,4 +5534,10 @@ - return NULL; - -+ case BFD_RELOC_ARM_GOTPC: -+ assert(fixp->fx_pcrel != 0); -+ code = fixp->fx_r_type; -+ code = BFD_RELOC_32_PCREL; -+ break; -+ - default: - { -@@ -5883,5 +5920,5 @@ - */ - --CONST char *md_shortopts = "m:"; -+CONST char *md_shortopts = "m:k"; - struct option md_longopts[] = - { -@@ -6146,4 +6183,8 @@ - break; - -+ case 'k': -+ pic_code = 1; -+ break; -+ - default: - return 0; -@@ -6166,4 +6207,5 @@ - -mfpe-old\t\tdon't allow floating-point multiple instructions\n\ - -mno-fpu\t\tdon't allow any floating-point instructions.\n"); -+ fprintf (fp, "-k\t\t\tgenerate PIC code.\n"); - #ifdef OBJ_COFF - fprintf (fp, -@@ -6340,3 +6382,303 @@ - - return name; -+} -+ -+/* Treat expressions starting __GLOBAL_OFFSET_TABLE_ + as special. Evaluate -+ * RHS first. -+ * -+ * XXX - This is a complete hack. No idea what the *right* way to do this -+ * is. -+ * -+ * This is probably no longer needed with gcc 2.8+ -+ */ -+void -+parse_cons_expression_arm(exp) -+ expressionS *exp; -+{ -+ static const char* got = GLOBAL_OFFSET_TABLE_NAME; -+ static int strlen_got = 0; -+ static char* line_space = NULL; /* Horrible hack because I'm not sure that -+ free() is okay to call at the end of -+ this fn */ -+ -+ char *tmp_line_pointer; -+ char *eol_pointer; -+ char *rhs; -+ char *saved_line_pointer; -+ expressionS right; -+ char c; -+ symbolS *symbolP; /* points to symbol */ -+ char *name; /* points to name of symbol */ -+ segT segment; -+ -+ if (strlen_got == 0) -+ strlen_got = strlen(got); -+ -+ if (strncmp(input_line_pointer, got, strlen_got) != 0) -+ { -+ /* Not a GOT expression, proceed as normal. */ -+ expression(exp); -+ return; -+ } -+ -+ saved_line_pointer = input_line_pointer; -+ -+ name = input_line_pointer; -+ c = get_symbol_end(); -+ symbolP = symbol_find_or_make (name); -+ -+ segment = S_GET_SEGMENT (symbolP); -+ if (segment == undefined_section) -+ { -+ exp->X_op = O_symbol; -+ exp->X_add_symbol = symbolP; -+ exp->X_add_number = 0; -+ } -+ -+ *input_line_pointer = c; -+ -+ SKIP_WHITESPACE(); -+ if (*input_line_pointer == '+') -+ ++input_line_pointer; -+ -+ expression(&right); -+ -+ input_line_pointer = saved_line_pointer + strlen_got; -+ SKIP_WHITESPACE(); -+ -+ if (*input_line_pointer != '+' && *input_line_pointer != '-') -+ { -+ /* Not an operator we can deal with. */ -+ input_line_pointer = saved_line_pointer; -+ expression(exp); -+ return; -+ } -+ -+ /* Shut your eyes - you don't want to see this bit. -+ * Build a buffer to hold a munged input line and -+ * hand that on to the generic expression parser. -+ */ -+ -+ rhs = input_line_pointer + 1; -+ -+ while (*input_line_pointer != '\n' && *input_line_pointer != '\0' && -+ *input_line_pointer != ';') -+ input_line_pointer++; -+ eol_pointer = input_line_pointer; -+ -+ if (line_space != NULL) -+ free (line_space); -+ input_line_pointer = line_space = malloc(eol_pointer - -+ saved_line_pointer + 3); -+ strncpy (input_line_pointer, saved_line_pointer, rhs - saved_line_pointer); -+ input_line_pointer[rhs - saved_line_pointer] = '\0'; -+ strcat (input_line_pointer, "("); -+ strncat (input_line_pointer, rhs, eol_pointer - rhs); -+ input_line_pointer[eol_pointer - saved_line_pointer + 1] = 0; -+ strcat (input_line_pointer, ")"); -+ -+ /* Okay, you can open your eyes again now. */ -+ -+ expression(exp); -+ -+/* XXX - Hack to check whether any pointers are left referring to the -+ * line_space buffer -+ * Note: free() to be moved down here if this turns out to be safe. -+ */ -+ -+ while(input_line_pointer > line_space) -+ { -+ input_line_pointer--; -+ input_line_pointer[0] = 'X'; -+ } -+ *input_line_pointer = '\0'; -+ -+ /* Restore the input_line_pointer to point to where the caller expects it to be and exit. */ -+ -+ input_line_pointer = eol_pointer; -+} -+ -+/* -+ * Called to deal with an expression part of an .word instruction -+ * i.e. -+ * .word <expression> -+ * -+ * This is an expression that could have a GOT reference of the form -+ * __GLOBAL_OFFSET_TABLE + . - (L2 + 4) -+ * -+ * This is something that the expression parser cannot handle -+ * We need to perform the . - (L2 + 4) part first as this resolves -+ * to an absolute. -+ */ -+ -+static void -+s_cons(size) -+ int size; -+{ -+#if 0 -+ if (pic_code) -+ abort(); /* Whoops */ -+#endif -+ cons (size); -+} -+ -+/* -+ * This fix_new is called by cons via TC_CONS_FIX_NEW -+ * -+ * We check the expression to see if it is of the form -+ * __GLOBAL_OFFSET_TABLE + ??? -+ * If it is then this is a PC relative reference to the GOT. -+ * i.e. -+ * ldr sl, L1 -+ * add sl, pc, sl -+ * L2: -+ * ... -+ * L1: -+ * .word __GLOBAL_OFFSET_TABLE + (. - (L2 + 4)) -+ * -+ * In this case use a reloc type BFD_RELOC_ARM_GOTPC instead of the -+ * normal BFD_RELOC_{16,32,64} -+ */ -+ -+void -+cons_fix_new_arm(frag, where, size, exp) -+ fragS *frag; -+ int where; -+ int size; -+ expressionS *exp; -+{ -+ bfd_reloc_code_real_type type; -+ int pcrel = 0; -+ -+ /* Pick a reloc ... -+ * -+ * @@ Should look at CPU word size. -+ */ -+ switch (size) -+ { -+ case 2: -+ type = BFD_RELOC_16; -+ break; -+ case 4: -+ default: -+ type = BFD_RELOC_32; -+ break; -+ case 8: -+ type = BFD_RELOC_64; -+ break; -+ } -+ -+ /* Look for possible GOTPC reloc */ -+ -+ /* -+ * Look for pic assembler and 'undef symbol + expr symbol' expression -+ * and a 32 bit size -+ */ -+ -+ if (pic_code != 0 && size == 4 && exp->X_op == O_add -+ && exp->X_add_symbol -+ && S_GET_SEGMENT (exp->X_add_symbol) == undefined_section -+ && exp->X_op_symbol -+ && S_GET_SEGMENT (exp->X_op_symbol) == expr_section) -+ { -+ /* -+ * This could be it -+ * Is the primary symbol name "__GLOBAL_OFFSET_TABLE" ? -+ */ -+ if (strcmp (S_GET_NAME(exp->X_add_symbol), -+ GLOBAL_OFFSET_TABLE_NAME) == 0) -+ { -+ type = BFD_RELOC_ARM_GOTPC; -+ pcrel = 1; -+ } -+ } -+ -+ fix_new_exp (frag, where, (int) size, exp, pcrel, type); -+} -+ -+#define AUX_OBJECT 1 -+#define AUX_FUNCTION 2 -+ -+static void -+s_type(a) -+ int a; -+{ -+ /* Strip out the section name */ -+ char *symbol_name, *symbol_name_end; -+ char *type_name, *type_name_end; -+ char c; -+ register symbolS *symbolP; -+ unsigned int len; -+ -+ symbol_name = input_line_pointer; -+ c = get_symbol_end (); -+ symbol_name_end = input_line_pointer; -+ input_line_pointer++; -+ len = symbol_name_end - symbol_name; -+ -+ SKIP_WHITESPACE (); -+ -+ if (c == ',') -+ { -+ /* Allow some leeway here, as .type has used several different -+ characters at different times. `%' is the current favourite -+ and this is what gcc 2.8 outputs, but `@' is traditional on -+ other machines and there was a time when `#' got used by some -+ people. */ -+ if (input_line_pointer[0] == '#' || input_line_pointer[0] == '@' -+ || input_line_pointer[0] == '%') -+ ++input_line_pointer; -+ -+ if (strncmp (input_line_pointer, "object", 6) == 0) -+ { -+ symbolP = symbol_find_or_make (symbol_name); -+ S_SET_OTHER (symbolP, S_GET_OTHER(symbolP) | AUX_OBJECT); -+ input_line_pointer += 6; -+ } -+ else -+ if (strncmp (input_line_pointer, "function", 8) == 0) -+ { -+ symbolP = symbol_find_or_make (symbol_name); -+ S_SET_OTHER (symbolP, S_GET_OTHER(symbolP) | AUX_FUNCTION); -+ input_line_pointer += 8; -+ } -+ } -+ -+ demand_empty_rest_of_line (); -+} -+ -+#define BIND_WEAK 0x20 -+ -+static void -+s_weak(a) -+ int a; -+{ -+ -+ char *name; -+ int c; -+ symbolS *symbolP; -+ -+ do -+ { -+ name = input_line_pointer; -+ c = get_symbol_end (); -+ symbolP = symbol_find_or_make (name); -+ *input_line_pointer = c; -+ SKIP_WHITESPACE (); -+ S_SET_OTHER(symbolP, S_GET_OTHER(symbolP) | BIND_WEAK); -+ /* -+ * Anything declared weak becomes global. -+ * Not sure why but this is required to work with the netbsd linker -+ * The NetBSD assembler does this. -+ */ -+ if (c == ',') -+ { -+ input_line_pointer++; -+ SKIP_WHITESPACE (); -+ if (*input_line_pointer == '\n') -+ c = '\n'; -+ } -+ } -+ while (c == ','); -+ demand_empty_rest_of_line (); - } -diff -U2 -r -N ./gas/config/tc-arm.h ../binutils-2.9.1/gas/config/tc-arm.h ---- ./gas/config/tc-arm.h Sat May 2 00:44:40 1998 -+++ ../binutils-2.9.1/gas/config/tc-arm.h Sat Dec 4 02:56:53 1999 -@@ -47,4 +47,6 @@ - #ifdef TE_RISCIX - #define TARGET_FORMAT "a.out-riscix" -+#elif defined (TE_NetBSD) -+#define TARGET_FORMAT "a.out-arm-netbsd" - #else - #define ARM_BI_ENDIAN -@@ -147,4 +149,39 @@ - - #define LOCAL_LABELS_FB 1 -+ -+extern boolean pic_code; -+ -+/* This expression evaluates to false if the relocation is for a local -+ object for which we still want to do the relocation at runtime. -+ True if we are willing to perform this relocation while building -+ the .o file. -+ -+ If the reloc is against an externally visible symbol, then the -+ a.out assembler should not do the relocation if generating PIC */ -+ -+#define obj_relocate_extern (!pic_code) -+ -+/* This expression evaluates to false if the relocation is for a local object -+ for which we still want to do the relocation at runtime. True if we -+ are willing to perform this relocation while building the .o file. -+ This is only used for pcrel relocations, so GOTOFF does not need to be -+ checked here. I am not sure if some of the others are ever used with -+ pcrel, but it is easier to be safe than sorry. */ -+ -+#define TC_RELOC_RTSYM_LOC_FIXUP(FIX) \ -+ ((FIX)->fx_r_type != BFD_RELOC_ARM_GOT12 \ -+ && (FIX)->fx_r_type != BFD_RELOC_ARM_GOT32 \ -+ && (FIX)->fx_r_type != BFD_RELOC_32) -+ -+#define TC_CONS_FIX_NEW cons_fix_new_arm -+extern void cons_fix_new_arm PARAMS ((fragS *frag, -+ int where, -+ int size, -+ expressionS *exp)); -+ -+#define GLOBAL_OFFSET_TABLE_NAME "__GLOBAL_OFFSET_TABLE_" -+ -+#define TC_PARSE_CONS_EXPRESSION(EXP, NBYTES)\ -+ parse_cons_expression_arm(EXP) - - /* end of tc-arm.h */ -diff -U2 -r -N ./gas/configure ../binutils-2.9.1/gas/configure ---- ./gas/configure Sat May 2 00:45:07 1998 -+++ ../binutils-2.9.1/gas/configure Sat Dec 4 02:56:53 1999 -@@ -1460,4 +1460,5 @@ - arm-*-riscix*) fmt=aout ;; - arm-*-pe | thumb-*-pe) fmt=coff em=pe ;; -+ arm-*-netbsd*) fmt=aout em=nbsd bfd_gas=yes ;; - - d10v-*-*) fmt=elf bfd_gas=yes ;; -diff -U2 -r -N ./gas/configure.in ../binutils-2.9.1/gas/configure.in ---- ./gas/configure.in Sat May 2 00:45:07 1998 -+++ ../binutils-2.9.1/gas/configure.in Sat Dec 4 02:56:53 1999 -@@ -134,4 +134,5 @@ - arm-*-riscix*) fmt=aout ;; - arm-*-pe | thumb-*-pe) fmt=coff em=pe ;; -+ arm-*-netbsd*) fmt=aout em=nbsd bfd_gas=yes ;; - - d10v-*-*) fmt=elf bfd_gas=yes ;; diff --git a/cross/armv2-netbsd/DESCR b/cross/armv2-netbsd/DESCR deleted file mode 100644 index 4d87b36f924..00000000000 --- a/cross/armv2-netbsd/DESCR +++ /dev/null @@ -1 +0,0 @@ -This cross-compile environment is for NetBSD/arm26. diff --git a/cross/armv2-netbsd/MESSAGE b/cross/armv2-netbsd/MESSAGE deleted file mode 100644 index 7f262fead24..00000000000 --- a/cross/armv2-netbsd/MESSAGE +++ /dev/null @@ -1,12 +0,0 @@ -=========================================================================== -$NetBSD: MESSAGE,v 1.2 2002/09/12 17:16:37 wiz Exp $ - -This pkg DOES NOT install headers or runtime link libraries. Only the -compilers are installed. - -In order to have a complete development setup, you need to install -includes and libraries in ${CROSSBASE}/armv2-netbsd/include and -${CROSSBASE}/armv2-netbsd/lib respectively, or symlink these paths to -the appropriate places. - -=========================================================================== diff --git a/cross/armv2-netbsd/Makefile b/cross/armv2-netbsd/Makefile deleted file mode 100644 index 6e92262af26..00000000000 --- a/cross/armv2-netbsd/Makefile +++ /dev/null @@ -1,83 +0,0 @@ -# $NetBSD: Makefile,v 1.7 2002/03/05 23:31:59 skrll Exp $ -# - -DISTVERSION= 1.3.0.0 -DISTFILES= # none - -MAINTAINER= packages@netbsd.org -HOMEPAGE= http://www.netbsd.org/ -COMMENT= Cross-compile environment for NetBSD/arm26 - -WRKSRC= ${WRKDIR}/${EGCS_DISTNAME} - -#USE_CROSS_BINUTILS= yes -BINUTILS_GNUTARGET= elf32-littlearm -BINUTILS_LDEMULATION= armelf -USE_CROSS_EGCS= yes -EGCS_FAKE_RUNTIME= yes - -TARGET_ARCH= armv2-netbsd - -BUILD_DEPENDS+= autoconf>=2.13:../../devel/autoconf - -post-patch: egcs-autoconf - -egcs-autoconf: - ${_PKG_SILENT}${_PKG_DEBUG}cd ${WRKSRC}/gcc && ${LOCALBASE}/bin/autoconf - -# Following chunk ripped from cross.mk - -BINUTILS_DISTNAME= binutils-2.10 -BINUTILS_WRKSRC= ${WRKDIR}/${BINUTILS_DISTNAME} - -CROSS_DISTFILES+= ${BINUTILS_DISTNAME}.tar.gz -MASTER_SITES+= ${MASTER_SITE_GNU:=binutils/} -CONFIGURE_ARGS+= --with-gnu-as --with-gnu-ld -PLIST_PRE+= ${COMMON_DIR}/PLIST-binutils - -AS_FOR_TARGET= ${BINUTILS_WRKSRC}/gas/as-new -AR_FOR_TARGET= ${BINUTILS_WRKSRC}/binutils/ar -NM_FOR_TARGET= ${BINUTILS_WRKSRC}/bintuils/nm-new -RANLIB_FOR_TARGET= ${BINUTILS_WRKSRC}/binutils/ranlib -LD_FOR_TARGET= ${BINUTILS_WRKSRC}/ld/ld-new - -#pre-patch: binutils-patch -pre-configure: binutils-configure -do-build: binutils-build -do-install: binutils-install - -#binutils-patch: -# @for i in ${COMMON_DIR}/patches-binutils/patch-*; do \ -# ${PATCH} -d ${BINUTILS_WRKSRC} --forward --quiet -E < $$i; \ -# done - -#BFD64ARG= --enable-64-bit-bfd - -binutils-configure: - @cd ${BINUTILS_WRKSRC} && ${SETENV} CC="${CC}" ac_cv_path_CC="${CC}" \ - CFLAGS="${CFLAGS}" ${CONFIGURE_ENV} ./configure \ - --prefix=${PREFIX} --host=${MACHINE_GNU_ARCH}--netbsd \ - --target=arm-unknown-elf ${BFD64ARG} - -binutils-build: - @cd ${BINUTILS_WRKSRC} && ${SETENV} ${MAKE_ENV} \ - ${MAKE_PROGRAM} ${MAKE_FLAGS} all - -binutils-install: - ${INSTALL_PROGRAM} ${BINUTILS_WRKSRC}/gas/as-new ${TARGET_DIR}/bin/as - ${INSTALL_PROGRAM} ${BINUTILS_WRKSRC}/ld/ld-new ${TARGET_DIR}/bin/ld - for i in addr2line ar objcopy objdump ranlib size strings ${BINUTILS_EXTRAS}; do \ - ${INSTALL_PROGRAM} ${BINUTILS_WRKSRC}/binutils/$$i ${TARGET_DIR}/bin/$$i; \ - done - for i in nm strip; do \ - ${INSTALL_PROGRAM} ${BINUTILS_WRKSRC}/binutils/$$i-new ${TARGET_DIR}/bin/$$i; \ - done - for i in addr2line ar as ld nm objcopy objdump ranlib size strings strip ${BINUTILS_EXTRAS}; do \ - ${LN} -f ${TARGET_DIR}/bin/$$i ${PREFIX}/bin/${TARGET_ARCH}-$$i; \ - done - ${INSTALL_DATA_DIR} ${PREFIX}/lib/ldscripts - for i in x xbn xn xr xs xu; do \ - ${INSTALL_DATA} ${BINUTILS_WRKSRC}/ld/ldscripts/armelf.$$i ${PREFIX}/lib/ldscripts/; \ - done - -.include "../COMMON/cross.mk" diff --git a/cross/armv2-netbsd/PLIST b/cross/armv2-netbsd/PLIST deleted file mode 100644 index d34e4fb87c2..00000000000 --- a/cross/armv2-netbsd/PLIST +++ /dev/null @@ -1,30 +0,0 @@ -@comment $NetBSD: PLIST,v 1.2 2002/02/15 10:12:32 skrll Exp $ -bin/armv2-netbsd-addr2line -bin/armv2-netbsd-ar -bin/armv2-netbsd-as -bin/armv2-netbsd-ld -bin/armv2-netbsd-nm -bin/armv2-netbsd-objcopy -bin/armv2-netbsd-objdump -bin/armv2-netbsd-ranlib -bin/armv2-netbsd-size -bin/armv2-netbsd-strings -bin/armv2-netbsd-strip -armv2-netbsd/bin/addr2line -armv2-netbsd/bin/ar -armv2-netbsd/bin/as -armv2-netbsd/bin/ld -armv2-netbsd/bin/nm -armv2-netbsd/bin/objcopy -armv2-netbsd/bin/objdump -armv2-netbsd/bin/ranlib -armv2-netbsd/bin/size -armv2-netbsd/bin/strings -armv2-netbsd/bin/strip -lib/ldscripts/armelf.x -lib/ldscripts/armelf.xbn -lib/ldscripts/armelf.xn -lib/ldscripts/armelf.xr -lib/ldscripts/armelf.xs -lib/ldscripts/armelf.xu -@unexec ${RMDIR} %D/lib/ldscripts 2>/dev/null || true diff --git a/cross/armv2-netbsd/distinfo b/cross/armv2-netbsd/distinfo deleted file mode 100644 index a76e0102c27..00000000000 --- a/cross/armv2-netbsd/distinfo +++ /dev/null @@ -1,11 +0,0 @@ -$NetBSD: distinfo,v 1.2 2001/04/21 09:36:23 skrll Exp $ - -SHA1 (binutils-2.10.tar.gz) = 111e3c361df5ccc9a975500b186959e1caa38eae -Size (binutils-2.10.tar.gz) = 7210401 bytes -SHA1 (egcs-1.1.1.tar.gz) = 381f6c15ab042a4d3605490c29620ea5ad5592a6 -Size (egcs-1.1.1.tar.gz) = 11604853 bytes -SHA1 (egcs-1.1.1-NetBSD-19980104.diff.gz) = 85ebc334bf9472b9595c4348a6bc440e836b922a -Size (egcs-1.1.1-NetBSD-19980104.diff.gz) = 59770 bytes -SHA1 (patch-aa) = fc9236e4319cc4002d038ff5c80cad4ea0be0aed -SHA1 (patch-ab) = 8dfffb1995091821898c58c197ce614e6d74d82f -SHA1 (patch-ac) = 4352ba2aa7910a70d7e9e6a9b5cdbb6d28c434d0 diff --git a/cross/armv2-netbsd/patches/patch-aa b/cross/armv2-netbsd/patches/patch-aa deleted file mode 100644 index bcf86eb514c..00000000000 --- a/cross/armv2-netbsd/patches/patch-aa +++ /dev/null @@ -1,789 +0,0 @@ -$NetBSD: patch-aa,v 1.1.1.1 2000/07/13 21:39:13 bjh21 Exp $ -Index: gcc/config/arm/aout.h -=================================================================== -RCS file: /cvsroot/gnusrc/gnu/dist/gcc/config/arm/aout.h,v -retrieving revision 1.4 -retrieving revision 1.5 -diff -u -r1.4 -r1.5 ---- aout.h 1998/08/16 20:41:04 1.4 -+++ aout.h 2000/07/02 12:31:23 1.5 -@@ -1,5 +1,5 @@ - /* Definitions of target machine for GNU compiler, for ARM with a.out -- Copyright (C) 1995, 1996, 1997 Free Software Foundation, Inc. -+ Copyright (C) 1995, 1996, 1997, 1998 Free Software Foundation, Inc. - Contributed by Richard Earnshaw (rearnsha@armltd.co.uk). - - This file is part of GNU CC. -@@ -24,6 +24,7 @@ - #endif - - /* The text to go at the start of the assembler file */ -+#ifndef ASM_FILE_START - #define ASM_FILE_START(STREAM) \ - { \ - fprintf (STREAM,"%srfp\t.req\t%sr9\n", REGISTER_PREFIX, REGISTER_PREFIX); \ -@@ -34,22 +35,35 @@ - fprintf (STREAM,"%slr\t.req\t%sr14\n", REGISTER_PREFIX, REGISTER_PREFIX); \ - fprintf (STREAM,"%spc\t.req\t%sr15\n", REGISTER_PREFIX, REGISTER_PREFIX); \ - } -+#endif - --#define ASM_APP_ON "" --#define ASM_APP_OFF "" -+#define ASM_APP_ON "" -+#define ASM_APP_OFF "" - - /* Switch to the text or data segment. */ --#define TEXT_SECTION_ASM_OP ".text" --#define DATA_SECTION_ASM_OP ".data" --#define BSS_SECTION_ASM_OP ".bss" -- --#define REGISTER_PREFIX "" --#define USER_LABEL_PREFIX "_" --#define LOCAL_LABEL_PREFIX "" -+#define TEXT_SECTION_ASM_OP ".text" -+#define DATA_SECTION_ASM_OP ".data" -+#define BSS_SECTION_ASM_OP ".bss" -+ -+/* Note: If USER_LABEL_PREFIX or LOCAL_LABEL_PREFIX are changed, -+ make sure that this change is reflected in the function -+ coff_arm_is_local_label_name() in bfd/coff-arm.c */ -+#ifndef REGISTER_PREFIX -+#define REGISTER_PREFIX "" -+#endif -+ -+#ifndef USER_LABEL_PREFIX -+#define USER_LABEL_PREFIX "_" -+#endif -+ -+#ifndef LOCAL_LABEL_PREFIX -+#define LOCAL_LABEL_PREFIX "" -+#endif - -+ - /* The assembler's names for the registers. */ - #ifndef REGISTER_NAMES --#define REGISTER_NAMES \ -+#define REGISTER_NAMES \ - { \ - "r0", "r1", "r2", "r3", "r4", "r5", "r6", "r7", \ - "r8", "r9", "sl", "fp", "ip", "sp", "lr", "pc", \ -@@ -93,7 +107,9 @@ - - /* Generate DBX debugging information. riscix.h will undefine this because - the native assembler does not support stabs. */ -+#ifndef DBX_DEBUGGING_INFO - #define DBX_DEBUGGING_INFO 1 -+#endif - - /* Acorn dbx moans about continuation chars, so don't use any. */ - #ifndef DBX_CONTIN_LENGTH -@@ -104,32 +120,45 @@ - ``desc'' field is set to compiler version number >= 315 (sic). */ - #define DBX_OUTPUT_MAIN_SOURCE_FILENAME(STREAM,NAME) \ - do { \ -- fprintf (STREAM, ".stabs \"%s\",%d,0,315,%s\n", (NAME), N_SO, \ -- <ext_label_name[1]); \ -+ fprintf (STREAM, ".stabs "); \ -+ output_quoted_string (STREAM, NAME); \ -+ fprintf (STREAM, ",%d,0,315,%s\n", N_SO, <ext_label_name[1]); \ - text_section (); \ - ASM_OUTPUT_INTERNAL_LABEL (STREAM, "Ltext", 0); \ - } while (0) - - /* Output a function label definition. */ --#define ASM_DECLARE_FUNCTION_NAME(STREAM,NAME,DECL) \ -- ASM_OUTPUT_LABEL(STREAM, NAME) -+#ifndef ASM_DECLARE_FUNCTION_NAME -+#define ASM_DECLARE_FUNCTION_NAME(STREAM,NAME,DECL) \ -+{ \ -+ if (TARGET_POKE_FUNCTION_NAME) \ -+ arm_poke_function_name ((STREAM), (NAME)); \ -+ ASM_OUTPUT_LABEL (STREAM, NAME); \ -+} -+#endif - -+#ifndef ASM_OUTPUT_LABEL - #define ASM_OUTPUT_LABEL(STREAM,NAME) \ - do { \ - assemble_name (STREAM,NAME); \ - fputs (":\n", STREAM); \ - } while (0) -- -+#endif -+ - /* Output a globalising directive for a label. */ -+#ifndef ASM_GLOBALIZE_LABEL - #define ASM_GLOBALIZE_LABEL(STREAM,NAME) \ - (fprintf (STREAM, "\t.global\t"), \ - assemble_name (STREAM, NAME), \ -- fputc ('\n',STREAM)) \ -+ fputc ('\n',STREAM)) -+#endif - - /* Make an internal label into a string. */ -+#ifndef ASM_GENERATE_INTERNAL_LABEL - #define ASM_GENERATE_INTERNAL_LABEL(STRING, PREFIX, NUM) \ -- sprintf (STRING, "*%s%s%d", LOCAL_LABEL_PREFIX, PREFIX, NUM) -- -+ sprintf (STRING, "*%s%s%u", LOCAL_LABEL_PREFIX, PREFIX, (unsigned int)(NUM)) -+#endif -+ - /* Nothing special is done about jump tables */ - /* #define ASM_OUTPUT_CASE_LABEL(STREAM,PREFIX,NUM,TABLE) */ - /* #define ASM_OUTPUT_CASE_END(STREAM,NUM,TABLE) */ -@@ -196,17 +225,18 @@ - output_addr_const (STREAM, (EXP)), \ - fputc ('\n', STREAM)) - --#define ASM_OUTPUT_BYTE(STREAM, VALUE) \ -+#define ASM_OUTPUT_BYTE(STREAM, VALUE) \ - fprintf (STREAM, "\t.byte\t%d\n", VALUE) - - #define ASM_OUTPUT_ASCII(STREAM, PTR, LEN) \ - output_ascii_pseudo_op ((STREAM), (unsigned char *)(PTR), (LEN)) - - /* Output a gap. In fact we fill it with nulls. */ --#define ASM_OUTPUT_SKIP(STREAM, NBYTES) \ -+#define ASM_OUTPUT_SKIP(STREAM, NBYTES) \ - fprintf (STREAM, "\t.space\t%d\n", NBYTES) - - /* Align output to a power of two. Horrible /bin/as. */ -+#ifndef ASM_OUTPUT_ALIGN - #define ASM_OUTPUT_ALIGN(STREAM, POWER) \ - do \ - { \ -@@ -216,16 +246,23 @@ - fprintf (STREAM, "\t.even\n"); \ - else if (amount != 1) \ - fprintf (STREAM, "\t.align\t%d\n", amount - 4); \ -- } while (0) -+ } \ -+ while (0) -+#endif - - /* Output a common block */ -+#ifndef ASM_OUTPUT_COMMON - #define ASM_OUTPUT_COMMON(STREAM, NAME, SIZE, ROUNDED) \ - (fprintf (STREAM, "\t.comm\t"), \ - assemble_name ((STREAM), (NAME)), \ -- fprintf(STREAM, ", %d\t%s %d\n", ROUNDED, ASM_COMMENT_START, SIZE)) -- -+ fprintf (STREAM, ", %d\t%s %d\n", ROUNDED, ASM_COMMENT_START, SIZE)) -+#endif -+ - /* Output a local common block. /bin/as can't do this, so hack a -- `.space' into the bss segment. Note that this is *bad* practice. */ -+ `.space' into the bss segment. Note that this is *bad* practice, -+ which is guaranteed NOT to work since it doesn't define STATIC -+ COMMON space but merely STATIC BSS space. */ -+#ifndef ASM_OUTPUT_ALIGNED_LOCAL - #define ASM_OUTPUT_ALIGNED_LOCAL(STREAM,NAME,SIZE,ALIGN) \ - do { \ - bss_section (); \ -@@ -233,27 +270,32 @@ - ASM_OUTPUT_LABEL (STREAM, NAME); \ - fprintf (STREAM, "\t.space\t%d\n", SIZE); \ - } while (0) -- -+#endif -+ - /* Output a zero-initialized block. */ -+#ifndef ASM_OUTPUT_ALIGNED_BSS - #define ASM_OUTPUT_ALIGNED_BSS(STREAM,DECL,NAME,SIZE,ALIGN) \ -- asm_output_aligned_bss(STREAM, DECL, NAME, SIZE, ALIGN) -- -+ asm_output_aligned_bss (STREAM, DECL, NAME, SIZE, ALIGN) -+#endif -+ - /* Output a source line for the debugger. */ - /* #define ASM_OUTPUT_SOURCE_LINE(STREAM,LINE) */ - - /* Output a #ident directive. */ -+#ifndef ASM_OUTPUT_IDENT - #define ASM_OUTPUT_IDENT(STREAM,STRING) \ -- fprintf (STREAM,"- - - ident %s\n",STRING) -- -+ fprintf (STREAM, "%s - - - ident %s\n", ASM_COMMENT_START, STRING) -+#endif -+ - /* The assembler's parentheses characters. */ --#define ASM_OPEN_PAREN "(" --#define ASM_CLOSE_PAREN ")" -+#define ASM_OPEN_PAREN "(" -+#define ASM_CLOSE_PAREN ")" - - #ifndef ASM_COMMENT_START --#define ASM_COMMENT_START "@" -+#define ASM_COMMENT_START "@" - #endif - - /* This works for GAS and some other assemblers. */ --#define SET_ASM_OP ".set" -+#define SET_ASM_OP ".set" - - #include "arm/arm.h" -Index: gcc/config/arm/arm.h -=================================================================== -RCS file: /cvsroot/gnusrc/gnu/dist/gcc/config/arm/arm.h,v -retrieving revision 1.9 -retrieving revision 1.10 -diff -u -r1.9 -r1.10 ---- arm.h 1998/12/03 16:05:47 1.9 -+++ arm.h 2000/07/02 12:31:23 1.10 -@@ -565,7 +565,9 @@ - /* This is for compatibility with ARMCC. ARM SDT Reference Manual - (ARM DUI 0020D) page 2-20 says "Structures are aligned on word - boundaries". */ -+#ifndef STRUCTURE_SIZE_BOUNDARY - #define STRUCTURE_SIZE_BOUNDARY 32 -+#endif - - /* Non-zero if move instructions will actually fail to work - when given unaligned data. */ -@@ -1825,6 +1827,7 @@ - goto JUMPTO - - /* Output an internal label definition. */ -+#ifndef ASM_OUTPUT_INTERNAL_LABEL - #define ASM_OUTPUT_INTERNAL_LABEL(STREAM, PREFIX, NUM) \ - do \ - { \ -@@ -1841,6 +1844,7 @@ - ASM_GENERATE_INTERNAL_LABEL (s, (PREFIX), (NUM)); \ - ASM_OUTPUT_LABEL (STREAM, s); \ - } while (0) -+#endif - - /* Output a push or a pop instruction (only used when profiling). */ - #define ASM_OUTPUT_REG_PUSH(STREAM,REGNO) \ -Index: gcc/config/arm/elf.h -=================================================================== -RCS file: elf.h -diff -N elf.h ---- /dev/null Sun Jul 2 03:46:48 2000 -+++ gcc/config/arm/elf.h Sun Jul 2 07:04:41 2000 -@@ -0,0 +1,391 @@ -+/* Definitions of target machine for GNU compiler, -+ for ARM with ELF obj format. -+ Copyright (C) 1995, 1996, 1997, 1998, 1999 Free Software Foundation, Inc. -+ Contributed by Philip Blundell <philb@gnu.org> and -+ Catherine Moore <clm@cygnus.com> -+ -+This file is part of GNU CC. -+ -+GNU CC 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, or (at your option) -+any later version. -+ -+GNU CC 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 GNU CC; see the file COPYING. If not, write to -+the Free Software Foundation, 59 Temple Place - Suite 330, -+Boston, MA 02111-1307, USA. */ -+ -+ -+#define OBJECT_FORMAT_ELF -+ -+#ifndef LOCAL_LABEL_PREFIX -+#define LOCAL_LABEL_PREFIX "." -+#endif -+ -+#ifndef USER_LABEL_PREFIX -+#define USER_LABEL_PREFIX "" -+#endif -+ -+#ifndef CPP_PREDEFINES -+#define CPP_PREDEFINES "-Darm -Darm_elf -Acpu(arm) -Amachine(arm) -D__ELF__" -+#endif -+ -+/* The following macro defines the format used to output the second -+ operand of the .type assembler directive. Different svr4 assemblers -+ expect various different forms for this operand. The one given here -+ is just a default. You may need to override it in your machine- -+ specific tm.h file (depending upon the particulars of your assembler). */ -+#define TYPE_OPERAND_FMT "%s" -+ -+/* Write the extra assembler code needed to declare a function's result. -+ Most svr4 assemblers don't require any special declaration of the -+ result value, but there are exceptions. */ -+#ifndef ASM_DECLARE_RESULT -+#define ASM_DECLARE_RESULT(FILE, RESULT) -+#endif -+ -+/* These macros generate the special .type and .size directives which -+ are used to set the corresponding fields of the linker symbol table -+ entries in an ELF object file under SVR4. These macros also output -+ the starting labels for the relevant functions/objects. */ -+#define TYPE_ASM_OP ".type" -+#define SIZE_ASM_OP ".size" -+ -+/* Write the extra assembler code needed to declare a function properly. -+ Some svr4 assemblers need to also have something extra said about the -+ function's return value. We allow for that here. */ -+#define ASM_DECLARE_FUNCTION_NAME(FILE, NAME, DECL) \ -+ do \ -+ { \ -+ if (TARGET_POKE_FUNCTION_NAME) \ -+ arm_poke_function_name (FILE, NAME); \ -+ fprintf (FILE, "\t%s\t ", TYPE_ASM_OP); \ -+ assemble_name (FILE, NAME); \ -+ putc (',', FILE); \ -+ fprintf (FILE, TYPE_OPERAND_FMT, "function"); \ -+ putc ('\n', FILE); \ -+ ASM_DECLARE_RESULT (FILE, DECL_RESULT (DECL)); \ -+ ASM_OUTPUT_LABEL(FILE, NAME); \ -+ } \ -+ while (0) -+ -+/* Write the extra assembler code needed to declare an object properly. */ -+#define ASM_DECLARE_OBJECT_NAME(FILE, NAME, DECL) \ -+ do { \ -+ fprintf (FILE, "\t%s\t ", TYPE_ASM_OP); \ -+ assemble_name (FILE, NAME); \ -+ putc (',', FILE); \ -+ fprintf (FILE, TYPE_OPERAND_FMT, "object"); \ -+ putc ('\n', FILE); \ -+ size_directive_output = 0; \ -+ if (!flag_inhibit_size_directive && DECL_SIZE (DECL)) \ -+ { \ -+ size_directive_output = 1; \ -+ fprintf (FILE, "\t%s\t ", SIZE_ASM_OP); \ -+ assemble_name (FILE, NAME); \ -+ putc (',', FILE); \ -+ fprintf (FILE, HOST_WIDE_INT_PRINT_DEC, \ -+ int_size_in_bytes (TREE_TYPE (DECL))); \ -+ fputc ('\n', FILE); \ -+ } \ -+ ASM_OUTPUT_LABEL(FILE, NAME); \ -+ } while (0) -+ -+/* Output the size directive for a decl in rest_of_decl_compilation -+ in the case where we did not do so before the initializer. -+ Once we find the error_mark_node, we know that the value of -+ size_directive_output was set -+ by ASM_DECLARE_OBJECT_NAME when it was run for the same decl. */ -+#define ASM_FINISH_DECLARE_OBJECT(FILE, DECL, TOP_LEVEL, AT_END) \ -+do { \ -+ char * name = XSTR (XEXP (DECL_RTL (DECL), 0), 0); \ -+ if (!flag_inhibit_size_directive && DECL_SIZE (DECL) \ -+ && ! AT_END && TOP_LEVEL \ -+ && DECL_INITIAL (DECL) == error_mark_node \ -+ && !size_directive_output) \ -+ { \ -+ size_directive_output = 1; \ -+ fprintf (FILE, "\t%s\t ", SIZE_ASM_OP); \ -+ assemble_name (FILE, name); \ -+ putc (',', FILE); \ -+ fprintf (FILE, HOST_WIDE_INT_PRINT_DEC, \ -+ int_size_in_bytes (TREE_TYPE (DECL))); \ -+ fputc ('\n', FILE); \ -+ } \ -+ } while (0) -+ -+/* This is how to declare the size of a function. */ -+#define ASM_DECLARE_FUNCTION_SIZE(FILE, FNAME, DECL) \ -+ do { \ -+ if (!flag_inhibit_size_directive) \ -+ { \ -+ char label[256]; \ -+ static int labelno; \ -+ labelno ++; \ -+ ASM_GENERATE_INTERNAL_LABEL (label, "Lfe", labelno); \ -+ ASM_OUTPUT_INTERNAL_LABEL (FILE, "Lfe", labelno); \ -+ fprintf (FILE, "\t%s\t ", SIZE_ASM_OP); \ -+ assemble_name (FILE, (FNAME)); \ -+ fprintf (FILE, ","); \ -+ assemble_name (FILE, label); \ -+ fprintf (FILE, "-"); \ -+ assemble_name (FILE, (FNAME)); \ -+ putc ('\n', FILE); \ -+ } \ -+ } while (0) -+ -+/* Define this macro if jump tables (for `tablejump' insns) should be -+ output in the text section, along with the assembler instructions. -+ Otherwise, the readonly data section is used. */ -+#define JUMP_TABLES_IN_TEXT_SECTION 1 -+ -+#ifndef ASM_SPEC -+#define ASM_SPEC "%{mbig-endian:-EB} %{mcpu=*:-m%*} %{march=*:-m%*} \ -+ %{mapcs-*:-mapcs-%*} %{mthumb-interwork:-mthumb-interwork} %{mapcs-float:mfloat}" -+#endif -+ -+#ifndef LINK_SPEC -+#define LINK_SPEC "%{mbig-endian:-EB} -X" -+#endif -+ -+/* Run-time Target Specification. */ -+#ifndef TARGET_VERSION -+#define TARGET_VERSION fputs (" (ARM/elf)", stderr) -+#endif -+ -+#ifndef TARGET_DEFAULT -+#define TARGET_DEFAULT (ARM_FLAG_SOFT_FLOAT | ARM_FLAG_APCS_32) -+#endif -+ -+#ifndef MULTILIB_DEFAULTS -+#define MULTILIB_DEFAULTS { "mlittle-endian", "msoft-float", "mapcs-32", "mno-thumb-interwork" } -+#endif -+ -+/* A C expression whose value is nonzero if IDENTIFIER with arguments ARGS -+ is a valid machine specific attribute for DECL. -+ The attributes in ATTRIBUTES have previously been assigned to DECL. */ -+#define VALID_MACHINE_DECL_ATTRIBUTE(DECL, ATTRIBUTES, IDENTIFIER, ARGS) \ -+arm_valid_machine_decl_attribute (DECL, IDENTIFIER, ARGS) -+ -+ -+/* A C statement to output assembler commands which will identify the -+ object file as having been compiled with GNU CC (or another GNU -+ compiler). */ -+/* Define this to NULL so we don't get anything. -+ We have ASM_IDENTIFY_LANGUAGE. -+ Also, when using stabs, gcc2_compiled must be a stabs entry, not an -+ ordinary symbol, or gdb won't see it. The stabs entry must be -+ before the N_SO in order for gdb to find it. */ -+#ifndef ASM_IDENTIFY_GCC -+#define ASM_IDENTIFY_GCC(STREAM) \ -+ fprintf (STREAM, "%sgcc2_compiled.:\n", LOCAL_LABEL_PREFIX ) -+#endif -+ -+/* This outputs a lot of .req's to define alias for various registers. -+ Let's try to avoid this. */ -+#ifndef ASM_FILE_START -+#define ASM_FILE_START(STREAM) \ -+do { \ -+ extern char * version_string; \ -+ fprintf (STREAM, "%s Generated by gcc %s for ARM/elf\n", \ -+ ASM_COMMENT_START, version_string); \ -+ output_file_directive ((STREAM), main_input_filename); \ -+} while (0) -+#endif -+ -+/* Output an internal label definition. */ -+#ifndef ASM_OUTPUT_INTERNAL_LABEL -+#define ASM_OUTPUT_INTERNAL_LABEL(STREAM, PREFIX, NUM) \ -+ do \ -+ { \ -+ char * s = (char *) alloca (40 + strlen (PREFIX)); \ -+ extern int arm_target_label, arm_ccfsm_state; \ -+ extern rtx arm_target_insn; \ -+ \ -+ if (arm_ccfsm_state == 3 && arm_target_label == (NUM) \ -+ && !strcmp (PREFIX, "L")) \ -+ { \ -+ arm_ccfsm_state = 0; \ -+ arm_target_insn = NULL; \ -+ } \ -+ ASM_GENERATE_INTERNAL_LABEL (s, (PREFIX), (NUM)); \ -+ ASM_OUTPUT_LABEL (STREAM, s); \ -+ } while (0) -+#endif -+ -+/* Support the ctors/dtors and other sections. */ -+ -+/* Define the pseudo-ops used to switch to the .ctors and .dtors sections. -+ -+ Note that we want to give these sections the SHF_WRITE attribute -+ because these sections will actually contain data (i.e. tables of -+ addresses of functions in the current root executable or shared library -+ file) and, in the case of a shared library, the relocatable addresses -+ will have to be properly resolved/relocated (and then written into) by -+ the dynamic linker when it actually attaches the given shared library -+ to the executing process. (Note that on SVR4, you may wish to use the -+ `-z text' option to the ELF linker, when building a shared library, as -+ an additional check that you are doing everything right. But if you do -+ use the `-z text' option when building a shared library, you will get -+ errors unless the .ctors and .dtors sections are marked as writable -+ via the SHF_WRITE attribute.) */ -+#ifndef CTORS_SECTION_ASM_OP -+#define CTORS_SECTION_ASM_OP "\t.section\t.ctors,\"aw\"" -+#endif -+ -+#ifndef DTORS_SECTION_ASM_OP -+#define DTORS_SECTION_ASM_OP "\t.section\t.dtors,\"aw\"" -+#endif -+ -+/* A list of other sections which the compiler might be "in" at any -+ given time. */ -+#ifndef SUBTARGET_EXTRA_SECTIONS -+#define SUBTARGET_EXTRA_SECTIONS -+#endif -+ -+#ifndef EXTRA_SECTIONS -+#define EXTRA_SECTIONS SUBTARGET_EXTRA_SECTIONS in_ctors, in_dtors -+#endif -+ -+/* A list of extra section function definitions. */ -+#ifndef SUBTARGET_EXTRA_SECTION_FUNCTIONS -+#define SUBTARGET_EXTRA_SECTION_FUNCTIONS -+#endif -+ -+#ifndef EXTRA_SECTION_FUNCTIONS -+#define EXTRA_SECTION_FUNCTIONS \ -+ SUBTARGET_EXTRA_SECTION_FUNCTIONS \ -+ CTORS_SECTION_FUNCTION \ -+ DTORS_SECTION_FUNCTION -+#endif -+ -+#ifndef CTORS_SECTION_FUNCTION -+#define CTORS_SECTION_FUNCTION \ -+void \ -+ctors_section () \ -+{ \ -+ if (in_section != in_ctors) \ -+ { \ -+ fprintf (asm_out_file, "%s\n", CTORS_SECTION_ASM_OP); \ -+ in_section = in_ctors; \ -+ } \ -+} -+#endif -+ -+#ifndef DTORS_SECTION_FUNCTION -+#define DTORS_SECTION_FUNCTION \ -+void \ -+dtors_section () \ -+{ \ -+ if (in_section != in_dtors) \ -+ { \ -+ fprintf (asm_out_file, "%s\n", DTORS_SECTION_ASM_OP); \ -+ in_section = in_dtors; \ -+ } \ -+} -+#endif -+ -+/* Switch into a generic section. -+ This is currently only used to support section attributes. */ -+#ifndef ASM_OUTPUT_SECTION_NAME -+#define ASM_OUTPUT_SECTION_NAME(FILE, DECL, NAME, RELOC) \ -+do { \ -+ static struct section_info \ -+ { \ -+ struct section_info *next; \ -+ char *name; \ -+ enum sect_enum {SECT_RW, SECT_RO, SECT_EXEC} type; \ -+ } *sections; \ -+ struct section_info *s; \ -+ char *mode; \ -+ enum sect_enum type; \ -+ \ -+ for (s = sections; s; s = s->next) \ -+ if (!strcmp (NAME, s->name)) \ -+ break; \ -+ \ -+ if (DECL && TREE_CODE (DECL) == FUNCTION_DECL) \ -+ type = SECT_EXEC, mode = "ax"; \ -+ else if (DECL && DECL_READONLY_SECTION (DECL, RELOC)) \ -+ type = SECT_RO, mode = "a"; \ -+ else \ -+ type = SECT_RW, mode = "aw"; \ -+ \ -+ if (s == 0) \ -+ { \ -+ s = (struct section_info *) xmalloc (sizeof (struct section_info)); \ -+ s->name = xmalloc ((strlen (NAME) + 1) * sizeof (*NAME)); \ -+ strcpy (s->name, NAME); \ -+ s->type = type; \ -+ s->next = sections; \ -+ sections = s; \ -+ fprintf (FILE, ".section\t%s,\"%s\",@progbits\n", NAME, mode); \ -+ } \ -+ else \ -+ { \ -+ if (DECL && s->type != type) \ -+ error_with_decl (DECL, "%s causes a section type conflict"); \ -+ \ -+ fprintf (FILE, ".section\t%s\n", NAME); \ -+ } \ -+} while (0) -+#endif -+ -+/* Support the ctors/dtors sections for g++. */ -+#ifndef INT_ASM_OP -+#define INT_ASM_OP ".word" -+#endif -+ -+/* A C statement (sans semicolon) to output an element in the table of -+ global constructors. */ -+#ifndef ASM_OUTPUT_CONSTRUCTOR -+#define ASM_OUTPUT_CONSTRUCTOR(STREAM,NAME) \ -+do { \ -+ ctors_section (); \ -+ fprintf (STREAM, "\t%s\t ", INT_ASM_OP); \ -+ assemble_name (STREAM, NAME); \ -+ fprintf (STREAM, "\n"); \ -+} while (0) -+#endif -+ -+/* A C statement (sans semicolon) to output an element in the table of -+ global destructors. */ -+#ifndef ASM_OUTPUT_DESTRUCTOR -+#define ASM_OUTPUT_DESTRUCTOR(STREAM,NAME) \ -+do { \ -+ dtors_section (); \ -+ fprintf (STREAM, "\t%s\t ", INT_ASM_OP); \ -+ assemble_name (STREAM, NAME); \ -+ fprintf (STREAM, "\n"); \ -+} while (0) -+#endif -+ -+/* This is how we tell the assembler that a symbol is weak. */ -+ -+#define ASM_WEAKEN_LABEL(FILE,NAME) \ -+ do { fputs ("\t.weak\t", FILE); assemble_name (FILE, NAME); \ -+ fputc ('\n', FILE); } while (0) -+ -+/* For PIC code we need to explicitly specify (PLT) and (GOT) relocs. */ -+#define NEED_PLT_GOT flag_pic -+ -+/* The ELF assembler handles GOT addressing differently to NetBSD. */ -+#define GOT_PCREL 0 -+ -+/* Biggest alignment supported by the object file format of this -+ machine. Use this macro to limit the alignment which can be -+ specified using the `__attribute__ ((aligned (N)))' construct. If -+ not defined, the default value is `BIGGEST_ALIGNMENT'. */ -+#define MAX_OFILE_ALIGNMENT (32768*8) -+ -+/* Align output to a power of two. */ -+#define ASM_OUTPUT_ALIGN(STREAM, POWER) \ -+ fprintf (STREAM, "\t.align\t%d\n", POWER) -+ -+#include "arm/aout.h" -Index: gcc/config/arm/netbsd26.h -=================================================================== -RCS file: netbsd26.h -diff -N netbsd26.h ---- /dev/null Sun Jul 2 03:46:48 2000 -+++ gcc/config/arm/netbsd26.h Sun Jul 2 07:04:42 2000 -@@ -0,0 +1,125 @@ -+/* NetBSD/arm (RiscBSD) version. -+ Copyright (C) 1993, 1994, 1997, 1998 Free Software Foundation, Inc. -+ Contributed by Mark Brinicombe (amb@physig.ph.kcl.ac.uk) -+ -+This file is part of GNU CC. -+ -+GNU CC 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, or (at your option) -+any later version. -+ -+GNU CC 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 GNU CC; see the file COPYING. If not, write to -+the Free Software Foundation, 59 Temple Place - Suite 330, -+Boston, MA 02111-1307, USA. */ -+ -+/* Run-time Target Specification. */ -+#define TARGET_VERSION fputs (" (ARMv2/NetBSD)", stderr); -+ -+/* This is used in ASM_FILE_START. */ -+#define ARM_OS_NAME "NetBSD" -+ -+/* Unsigned chars produces much better code than signed. */ -+#define DEFAULT_SIGNED_CHAR 0 -+ -+/*#undef ASM_DECLARE_FUNCTION_NAME*/ -+ -+/* ARM3 family default cpu. */ -+#define SUBTARGET_CPU_DEFAULT TARGET_CPU_arm3 -+ -+/* Default is to use APCS-26 mode. */ -+#define TARGET_DEFAULT (ARM_FLAG_SOFT_FLOAT) -+ -+#include "arm/elf.h" -+ -+/* This gets redefined in config/netbsd.h. */ -+#undef TARGET_MEM_FUNCTIONS -+ -+#include <netbsd.h> -+ -+/* Override standard NetBSD asm spec. What do they know? */ -+#undef ASM_SPEC -+/* Don't bother telling the assembler the CPU type -- assume the compiler -+ won't generate bogus code and anyone using asm() knows what they're -+ doing. */ -+#define ASM_SPEC "%{mbig-endian:-EB} \ -+ %{!mapcs-32:-mapcs-26} %{mapcs-32:-mapcs-32} \ -+ %{mapcs-float:-mapcs-float} \ -+ %{mthumb-interwork:-mthumb-interwork} \ -+ %{fpic:-k} %{fPIC:-k}" -+ -+/* Some defines for CPP. -+ arm26 is the NetBSD port name, so we always define arm26 and __arm26__. */ -+#undef CPP_PREDEFINES -+#define CPP_PREDEFINES "\ -+-Dunix -Darm26 -D__arm26__ -D__arm__ -D__NetBSD__ -D__ELF__ \ -+-Asystem(unix) -Asystem(NetBSD) -Acpu(arm) -Amachine(arm)" -+ -+/* Define _POSIX_SOURCE if necessary. */ -+#undef CPP_SPEC -+#define CPP_SPEC "\ -+%(cpp_cpu_arch) %(cpp_apcs_pc) %(cpp_float) %(cpp_endian) \ -+%{posix:-D_POSIX_SOURCE} \ -+" -+ -+/* Because TARGET_DEFAULT sets ARM_FLAG_SOFT_FLOAT */ -+#undef CPP_FLOAT_DEFAULT_SPEC -+#define CPP_FLOAT_DEFAULT_SPEC "-D__SOFTFP__" -+ -+/* Pass -X to the linker so that it will strip symbols starting with 'L' */ -+#undef LINK_SPEC -+#define LINK_SPEC \ -+ "-X \ -+ %{assert*} \ -+ %{shared:-shared} \ -+ %{!shared: \ -+ -dc -dp \ -+ %{!nostdlib:%{!r*:%{!e*:-e __start}}} \ -+ %{!static: \ -+ %{rdynamic:-export-dynamic} \ -+ %{!dynamic-linker:-dynamic-linker /usr/libexec/ld.elf_so}} \ -+ %{static:-static}}" -+ -+#undef SIZE_TYPE -+#define SIZE_TYPE "unsigned int" -+ -+#undef PTRDIFF_TYPE -+#define PTRDIFF_TYPE "int" -+ -+#undef WCHAR_TYPE -+#define WCHAR_TYPE "int" -+ -+#undef WCHAR_UNSIGNED -+#define WCHAR_UNSIGNED 0 -+ -+#undef WCHAR_TYPE_SIZE -+#define WCHAR_TYPE_SIZE 32 -+ -+#define HANDLE_SYSV_PRAGMA -+ -+/* We don't have any limit on the length as out debugger is GDB. */ -+#undef DBX_CONTIN_LENGTH -+ -+/* NetBSD does its profiling differently to the Acorn compiler. We -+ don't need a word following the mcount call; and to skip it -+ requires either an assembly stub or use of fomit-frame-pointer when -+ compiling the profiling functions. Since we break Acorn CC -+ compatibility below a little more won't hurt. */ -+ -+#undef FUNCTION_PROFILER -+#define FUNCTION_PROFILER(STREAM,LABELNO) \ -+{ \ -+ fprintf(STREAM, "\tmov\t%sip, %slr\n", REGISTER_PREFIX, REGISTER_PREFIX); \ -+ fprintf(STREAM, "\tbl\t__mcount\n"); \ -+} -+ -+/* On the ARM `@' introduces a comment, so we must use something else -+ for .type directives. */ -+#undef TYPE_OPERAND_FMT -+#define TYPE_OPERAND_FMT "%%%s" diff --git a/cross/armv2-netbsd/patches/patch-ab b/cross/armv2-netbsd/patches/patch-ab deleted file mode 100644 index e9e578f4bf6..00000000000 --- a/cross/armv2-netbsd/patches/patch-ab +++ /dev/null @@ -1,22 +0,0 @@ -$NetBSD: patch-ab,v 1.1.1.1 2000/07/13 21:39:13 bjh21 Exp $ ---- config.sub.orig Mon Jul 3 22:35:21 2000 -+++ config.sub Mon Jul 3 22:38:40 2000 -@@ -159,7 +159,7 @@ - case $basic_machine in - # Recognize the basic CPU types without company name. - # Some are omitted here because they have special meanings below. -- tahoe | i860 | m32r | m68k | m68000 | m88k | ns32k | arc | arm \ -+ tahoe | i860 | m32r | m68k | m68000 | m88k | ns32k | arc | arm | armv2 \ - | arme[lb] | pyramid | mn10200 | mn10300 \ - | tron | a29k | 580 | i960 | h8300 | hppa | hppa1.0 | hppa1.1 \ - | alpha | alphaev5 | alphaev56 | alphapca56 | alphaev6 \ -@@ -204,7 +204,8 @@ - ;; - # Recognize the basic CPU types with company name. - vax-* | tahoe-* | i[3456]86-* | i860-* | m32r-* | m68k-* | m68000-* \ -- | m88k-* | sparc-* | ns32k-* | fx80-* | arc-* | arm-* | c[123]* \ -+ | m88k-* | sparc-* | ns32k-* | fx80-* | arc-* | armv2-* | arm-* \ -+ | c[123]* \ - | mips-* | pyramid-* | tron-* | a29k-* | romp-* | rs6000-* \ - | power-* | none-* | 580-* | cray2-* | h8300-* | i960-* \ - | xmp-* | ymp-* | hppa-* | hppa1.0-* | hppa1.1-* \ diff --git a/cross/armv2-netbsd/patches/patch-ac b/cross/armv2-netbsd/patches/patch-ac deleted file mode 100644 index 7956973de9e..00000000000 --- a/cross/armv2-netbsd/patches/patch-ac +++ /dev/null @@ -1,27 +0,0 @@ -$NetBSD: patch-ac,v 1.1.1.1 2000/07/13 21:39:13 bjh21 Exp $ ---- gcc/configure.in.orig Mon Jul 3 22:35:18 2000 -+++ gcc/configure.in Mon Jul 3 23:36:36 2000 -@@ -504,6 +504,15 @@ - tmake_file=arm/t-semiaof - fixincludes=Makefile.in # There is nothing to fix - ;; -+ armv2-*-netbsd*) -+ tm_file=arm/netbsd26.h -+ xm_file=arm/xm-netbsd.h -+ tmake_file=t-netbsd -+ extra_parts="crtbegin.o crtend.o" -+ # On NetBSD, the headers are already okay, except for math.h. -+ fixincludes=fixinc.wrap -+ gas=yes -+ ;; - arm*-*-netbsd*) - tm_file=arm/netbsd.h - xm_file=arm/xm-netbsd.h -@@ -2338,6 +2347,7 @@ - # On NetBSD, the headers are already okay, except for math.h. - fixincludes=fixinc.wrap - tmake_file=t-netbsd -+ xmake_file=none - ;; - powerpc-*-eabiaix*) - tm_file=rs6000/eabiaix.h diff --git a/cross/i386-netbsd/DESCR b/cross/i386-netbsd/DESCR deleted file mode 100644 index b4188ab7f0d..00000000000 --- a/cross/i386-netbsd/DESCR +++ /dev/null @@ -1,4 +0,0 @@ -This cross-compile environment is for a.out NetBSD/i386. - -LIMITATIONS: - THIS PACKAGE WILL ONLY SUPPORT STATIC BINARIES. diff --git a/cross/i386-netbsd/MESSAGE b/cross/i386-netbsd/MESSAGE deleted file mode 100644 index 7174927644e..00000000000 --- a/cross/i386-netbsd/MESSAGE +++ /dev/null @@ -1,15 +0,0 @@ -=========================================================================== -$NetBSD: MESSAGE,v 1.2 2002/09/12 17:16:38 wiz Exp $ - -This pkg DOES NOT install headers or runtime link libraries. Only the -compilers are installed. - -In order to have a complete development setup, you need to install -includes and libraries in ${CROSSBASE}/i386-netbsd/include and -${CROSSBASE}/i386-netbsd/lib respectively, or symlink these paths to -the appropriate places. - -LIMITATIONS: - THIS PACKAGE WILL ONLY SUPPORT STATIC BINARIES. - -=========================================================================== diff --git a/cross/i386-netbsd/Makefile b/cross/i386-netbsd/Makefile deleted file mode 100644 index 99227419604..00000000000 --- a/cross/i386-netbsd/Makefile +++ /dev/null @@ -1,21 +0,0 @@ -# $NetBSD: Makefile,v 1.2 2001/02/16 14:04:58 wiz Exp $ -# - -DISTVERSION= 1.3.0.0 -DISTFILES= # none - -MAINTAINER= packages@netbsd.org -HOMEPAGE= http://www.netbsd.org/ -COMMENT= Cross-compile environment for a.out NetBSD/i386 (static binaries only) - -WRKSRC= ${WRKDIR}/${BINUTILS_DISTNAME} - -USE_CROSS_BINUTILS= yes -BINUTILS_GNUTARGET= a.out-i386-netbsd -BINUTILS_LDEMULATION= i386nbsd -USE_CROSS_EGCS= yes -EGCS_FAKE_RUNTIME= yes - -TARGET_ARCH= i386-netbsd - -.include "../COMMON/cross.mk" diff --git a/cross/i386-netbsd/PLIST b/cross/i386-netbsd/PLIST deleted file mode 100644 index 115b2124be0..00000000000 --- a/cross/i386-netbsd/PLIST +++ /dev/null @@ -1 +0,0 @@ -@comment $NetBSD: PLIST,v 1.1 2001/10/31 22:03:31 zuntum Exp $ diff --git a/cross/i386-netbsd/distinfo b/cross/i386-netbsd/distinfo deleted file mode 100644 index 439441f0482..00000000000 --- a/cross/i386-netbsd/distinfo +++ /dev/null @@ -1,8 +0,0 @@ -$NetBSD: distinfo,v 1.2 2001/04/21 09:36:24 skrll Exp $ - -SHA1 (binutils-2.9.1.tar.gz) = 9df3cdcd34f81118ee403f8794b277ad28a57e14 -Size (binutils-2.9.1.tar.gz) = 5694541 bytes -SHA1 (egcs-1.1.1.tar.gz) = 381f6c15ab042a4d3605490c29620ea5ad5592a6 -Size (egcs-1.1.1.tar.gz) = 11604853 bytes -SHA1 (egcs-1.1.1-NetBSD-19980104.diff.gz) = 85ebc334bf9472b9595c4348a6bc440e836b922a -Size (egcs-1.1.1-NetBSD-19980104.diff.gz) = 59770 bytes diff --git a/cross/i386-netbsdelf/DESCR b/cross/i386-netbsdelf/DESCR deleted file mode 100644 index b2d4c0c9d85..00000000000 --- a/cross/i386-netbsdelf/DESCR +++ /dev/null @@ -1 +0,0 @@ -This cross-compile environment is for ELF NetBSD/i386. diff --git a/cross/i386-netbsdelf/MESSAGE b/cross/i386-netbsdelf/MESSAGE deleted file mode 100644 index 64a67b7d56b..00000000000 --- a/cross/i386-netbsdelf/MESSAGE +++ /dev/null @@ -1,12 +0,0 @@ -=========================================================================== -$NetBSD: MESSAGE,v 1.2 2002/09/12 17:16:39 wiz Exp $ - -This pkg DOES NOT install headers or runtime link libraries. Only the -compilers are installed. - -In order to have a complete development setup, you need to install -includes and libraries in ${CROSSBASE}/i386-netbsdelf/include and -${CROSSBASE}/i386-netbsdelf/lib respectively, or symlink these paths to -the appropriate places. - -=========================================================================== diff --git a/cross/i386-netbsdelf/Makefile b/cross/i386-netbsdelf/Makefile deleted file mode 100644 index f90c5f1c389..00000000000 --- a/cross/i386-netbsdelf/Makefile +++ /dev/null @@ -1,21 +0,0 @@ -# $NetBSD: Makefile,v 1.2 2001/02/16 14:04:59 wiz Exp $ -# - -DISTVERSION= 1.3.0.0 -DISTFILES= # none - -MAINTAINER= packages@netbsd.org -HOMEPAGE= http://www.netbsd.org/ -COMMENT= Cross-compile environment for ELF NetBSD/i386 - -WRKSRC= ${WRKDIR}/${BINUTILS_DISTNAME} - -USE_CROSS_BINUTILS= yes -BINUTILS_GNUTARGET= elf32-i386 -BINUTILS_LDEMULATION= elf_i386 -USE_CROSS_EGCS= yes -EGCS_FAKE_RUNTIME= yes - -TARGET_ARCH= i386-netbsdelf - -.include "../COMMON/cross.mk" diff --git a/cross/i386-netbsdelf/PLIST b/cross/i386-netbsdelf/PLIST deleted file mode 100644 index eebd8445841..00000000000 --- a/cross/i386-netbsdelf/PLIST +++ /dev/null @@ -1 +0,0 @@ -@comment $NetBSD: PLIST,v 1.1 2001/10/31 22:03:33 zuntum Exp $ diff --git a/cross/i386-netbsdelf/distinfo b/cross/i386-netbsdelf/distinfo deleted file mode 100644 index 9bd57bf1aaa..00000000000 --- a/cross/i386-netbsdelf/distinfo +++ /dev/null @@ -1,10 +0,0 @@ -$NetBSD: distinfo,v 1.2 2001/04/21 09:36:24 skrll Exp $ - -SHA1 (binutils-2.9.1.tar.gz) = 9df3cdcd34f81118ee403f8794b277ad28a57e14 -Size (binutils-2.9.1.tar.gz) = 5694541 bytes -SHA1 (egcs-1.1.1.tar.gz) = 381f6c15ab042a4d3605490c29620ea5ad5592a6 -Size (egcs-1.1.1.tar.gz) = 11604853 bytes -SHA1 (egcs-1.1.1-NetBSD-19980104.diff.gz) = 85ebc334bf9472b9595c4348a6bc440e836b922a -Size (egcs-1.1.1-NetBSD-19980104.diff.gz) = 59770 bytes -SHA1 (patch-ab) = c526efce2dab7fbfa46c744f02326785ee9e4797 -SHA1 (patch-ac) = 85381659fca08ccc3460f0f521b24c469bd9447d diff --git a/cross/i386-netbsdelf/patches/patch-ab b/cross/i386-netbsdelf/patches/patch-ab deleted file mode 100644 index 384afcd87fe..00000000000 --- a/cross/i386-netbsdelf/patches/patch-ab +++ /dev/null @@ -1,20 +0,0 @@ -$NetBSD: patch-ab,v 1.1.1.1 1999/02/14 10:06:09 mrg Exp $ - -Index: gas/configure.in -=================================================================== -RCS file: /cvsroot/src/gnu/dist/gas/configure.in,v -retrieving revision 1.5 -retrieving revision 1.6 -diff -c -r1.5 -r1.6 -*** gas/configure.in 1998/12/16 14:33:14 1.5 ---- gas/configure.in 1999/01/28 22:00:20 1.6 -*************** -*** 153,158 **** ---- 153,159 ---- - i386-sequent-bsd*) fmt=aout em=dynix bfd_gas=yes ;; - i386-*-bsd*) fmt=aout em=386bsd ;; - i386-*-netbsd0.8) fmt=aout em=386bsd ;; -+ i386-*-netbsdelf*) fmt=elf em=nbsd bfd_gas=yes;; - i386-*-netbsd*) fmt=aout em=nbsd bfd_gas=yes;; - i386-*-openbsd*) fmt=aout em=nbsd bfd_gas=yes;; - i386-*-linux*aout* | i386-*-linuxoldld) fmt=aout em=linux ;; diff --git a/cross/i386-netbsdelf/patches/patch-ac b/cross/i386-netbsdelf/patches/patch-ac deleted file mode 100644 index fa3f2ca8810..00000000000 --- a/cross/i386-netbsdelf/patches/patch-ac +++ /dev/null @@ -1,20 +0,0 @@ -$NetBSD: patch-ac,v 1.1.1.1 1999/02/14 10:06:09 mrg Exp $ - -Index: gas/configure -=================================================================== -RCS file: /cvsroot/src/gnu/dist/gas/configure,v -retrieving revision 1.8 -retrieving revision 1.9 -diff -c -r1.8 -r1.9 -*** gas/configure 1998/12/16 14:33:14 1.8 ---- gas/configure 1999/01/28 22:00:20 1.9 -*************** -*** 811,816 **** ---- 811,817 ---- - i386-sequent-bsd*) fmt=aout em=dynix bfd_gas=yes ;; - i386-*-bsd*) fmt=aout em=386bsd ;; - i386-*-netbsd0.8) fmt=aout em=386bsd ;; -+ i386-*-netbsdelf*) fmt=elf em=nbsd bfd_gas=yes;; - i386-*-netbsd*) fmt=aout em=nbsd bfd_gas=yes;; - i386-*-openbsd*) fmt=aout em=nbsd bfd_gas=yes;; - i386-*-linux*aout* | i386-*-linuxoldld) fmt=aout em=linux ;; diff --git a/cross/m68k-netbsdelf/DESCR b/cross/m68k-netbsdelf/DESCR deleted file mode 100644 index 296c2ea5395..00000000000 --- a/cross/m68k-netbsdelf/DESCR +++ /dev/null @@ -1 +0,0 @@ -This cross-compile environment is for ELF NetBSD/m68k diff --git a/cross/m68k-netbsdelf/MESSAGE b/cross/m68k-netbsdelf/MESSAGE deleted file mode 100644 index f4dfec039db..00000000000 --- a/cross/m68k-netbsdelf/MESSAGE +++ /dev/null @@ -1,12 +0,0 @@ -=========================================================================== -$NetBSD: MESSAGE,v 1.2 2002/09/12 17:16:40 wiz Exp $ - -This pkg DOES NOT install headers or runtime link libraries. Only the -compilers are installed. - -In order to have a complete development setup, you need to install -includes and libraries in ${CROSSBASE}/m68k-netbsdelf/include and -${CROSSBASE}/m68k-netbsdelf/lib respectively, or symlink these paths to -the appropriate places. - -=========================================================================== diff --git a/cross/m68k-netbsdelf/Makefile b/cross/m68k-netbsdelf/Makefile deleted file mode 100644 index 66ae8db45ef..00000000000 --- a/cross/m68k-netbsdelf/Makefile +++ /dev/null @@ -1,23 +0,0 @@ -# $NetBSD: Makefile,v 1.3 2001/05/27 15:17:37 dmcmahill Exp $ -# - -DISTVERSION= 1.3.0.0 -DISTFILES= # none - -MAINTAINER= packages@netbsd.org -HOMEPAGE= http://www.netbsd.org/ -COMMENT= Cross-compile environment for ELF NetBSD/m68k - -WRKSRC= ${WRKDIR}/${BINUTILS_DISTNAME} - -USE_CROSS_BINUTILS= yes -BINUTILS_GNUTARGET= elf32-m68k -BINUTILS_LDEMULATION= m68kelfnbsd -USE_CROSS_EGCS= yes -EGCS_FAKE_RUNTIME= yes - -TARGET_ARCH= m68k-netbsdelf - -MAKE_ENV+= MACHINE_ARCH=${MACHINE_ARCH} - -.include "../COMMON/cross.mk" diff --git a/cross/m68k-netbsdelf/PLIST b/cross/m68k-netbsdelf/PLIST deleted file mode 100644 index a25e2b006c4..00000000000 --- a/cross/m68k-netbsdelf/PLIST +++ /dev/null @@ -1 +0,0 @@ -@comment $NetBSD: PLIST,v 1.1 2001/10/31 22:03:37 zuntum Exp $ diff --git a/cross/m68k-netbsdelf/distinfo b/cross/m68k-netbsdelf/distinfo deleted file mode 100644 index 099ef90f65a..00000000000 --- a/cross/m68k-netbsdelf/distinfo +++ /dev/null @@ -1,12 +0,0 @@ -$NetBSD: distinfo,v 1.3 2001/05/27 15:17:37 dmcmahill Exp $ - -SHA1 (binutils-2.9.1.tar.gz) = 9df3cdcd34f81118ee403f8794b277ad28a57e14 -Size (binutils-2.9.1.tar.gz) = 5694541 bytes -SHA1 (egcs-1.1.1.tar.gz) = 381f6c15ab042a4d3605490c29620ea5ad5592a6 -Size (egcs-1.1.1.tar.gz) = 11604853 bytes -SHA1 (egcs-1.1.1-NetBSD-19980104.diff.gz) = 85ebc334bf9472b9595c4348a6bc440e836b922a -Size (egcs-1.1.1-NetBSD-19980104.diff.gz) = 59770 bytes -SHA1 (patch-aa) = 3537031f77c5921c4331fd5f7a79dbf237466566 -SHA1 (patch-ab) = 8091aaf43bfe0a167e1696bc68c0453d51867ff9 -SHA1 (patch-ac) = 050731c930f36db5afb961353b073b41783c5972 -SHA1 (patch-ad) = 52b7a7f0cdbca1a6e93cf5e65a49f4d08dee4bfe diff --git a/cross/m68k-netbsdelf/patches/patch-aa b/cross/m68k-netbsdelf/patches/patch-aa deleted file mode 100644 index 4ff6e3f9456..00000000000 --- a/cross/m68k-netbsdelf/patches/patch-aa +++ /dev/null @@ -1,33 +0,0 @@ -$NetBSD: patch-aa,v 1.2 2001/05/27 15:17:38 dmcmahill Exp $ - -work around a compiler bug (shocked i know) when building the -m68k cross assembler on alpha. Without optimization gas gives -the same results as on a real m68k box (NetBSD/mac68k). With -optimization, gas crashes. - ---- gas/Makefile.in.orig Fri May 18 18:00:52 2001 -+++ gas/Makefile.in Fri May 18 22:18:04 2001 -@@ -88,5 +88,5 @@ - tooldir = $(exec_prefix)/$(target_alias) - --YACC = `if [ -f ../bison/bison ] ; then echo ../bison/bison -y -L../bison/bison ; else echo bison -y ; fi` -+YACC = @YACC@ - LEX = `if [ -f ../flex/flex ] ; then echo ../flex/flex ; else echo flex ; fi` - -@@ -1220,5 +1220,15 @@ - LEXLIB = @LEXLIB@ - YLWRAP = $(top_srcdir)/../ylwrap --CFLAGS = @CFLAGS@ -+ALLCFLAGS = @CFLAGS@ -+ifeq (${MACHINE_ARCH},alpha) -+ifeq (${TARG_CPU},m68k) -+CFLAGS=${ALLCFLAGS:-O%=} -+else -+CFLAGS=${ALLCFLAGS} -+endif -+else -+CFLAGS=${ALLCFLAGS} -+endif -+ - COMPILE = $(CC) $(DEFS) $(INCLUDES) $(CPPFLAGS) $(CFLAGS) - LTCOMPILE = $(LIBTOOL) --mode=compile $(CC) $(DEFS) $(INCLUDES) $(CPPFLAGS) $(CFLAGS) diff --git a/cross/m68k-netbsdelf/patches/patch-ab b/cross/m68k-netbsdelf/patches/patch-ab deleted file mode 100644 index 1f82222d036..00000000000 --- a/cross/m68k-netbsdelf/patches/patch-ab +++ /dev/null @@ -1,12 +0,0 @@ -$NetBSD: patch-ab,v 1.1.1.1 2001/01/24 12:03:07 tsutsui Exp $ - ---- gas/configure.orig Sat Dec 9 22:23:10 2000 -+++ gas/configure Sat Dec 9 22:23:31 2000 -@@ -1535,6 +1535,7 @@ - m68k-*-linux*aout*) fmt=aout em=linux ;; - m68k-*-linux-gnu*) fmt=elf em=linux ;; - m68k-*-lynxos*) fmt=coff em=lynx ;; -+ m68k-*-netbsdelf*) fmt=elf em=nbsd bfd_gas=yes ;; - m68k-*-netbsd*) fmt=aout em=nbsd bfd_gas=yes ;; - m68k-*-openbsd*) fmt=aout em=nbsd bfd_gas=yes ;; - m68k-apple-aux*) fmt=coff em=aux ;; diff --git a/cross/m68k-netbsdelf/patches/patch-ac b/cross/m68k-netbsdelf/patches/patch-ac deleted file mode 100644 index 95417fc54dc..00000000000 --- a/cross/m68k-netbsdelf/patches/patch-ac +++ /dev/null @@ -1,19 +0,0 @@ -$NetBSD: patch-ac,v 1.1.1.1 2001/01/24 12:03:07 tsutsui Exp $ - ---- ../egcs-1.1.1/gcc/configure.orig Sat Dec 9 21:18:03 2000 -+++ ../egcs-1.1.1/gcc/configure Sat Dec 9 21:27:35 2000 -@@ -3538,6 +3538,14 @@ - extra_headers=math-68881.h - float_format=m68k - ;; -+ m68k*-*-netbsdelf*) -+ tm_file=m68k/netbsd-elf.h -+ xm_file=m68k/xm-netbsd.h -+ # On NetBSD, the headers are already okay, except for math.h. -+ fixincludes=fixinc.wrap -+ tmake_file=t-netbsd -+ float_format=m68k -+ ;; - m68k*-*-netbsd*) - tm_file=m68k/netbsd.h - xm_file=m68k/xm-netbsd.h diff --git a/cross/m68k-netbsdelf/patches/patch-ad b/cross/m68k-netbsdelf/patches/patch-ad deleted file mode 100644 index f590628d2c2..00000000000 --- a/cross/m68k-netbsdelf/patches/patch-ad +++ /dev/null @@ -1,595 +0,0 @@ -$NetBSD: patch-ad,v 1.2 2001/01/24 12:12:40 wiz Exp $ ---- /dev/null Thu Jan 18 01:37:09 2001 -+++ ../egcs-1.1.1/gcc/config/m68k/netbsd-elf.h Sat Jan 6 13:01:39 2001 -@@ -0,0 +1,591 @@ -+/* Definitions of target machine for GNU compiler, for m68k NetBSD platforms -+ using the ELF object format. -+ Largely derived from alpha/netbsd.h, i386/netbsd-elf.h and m68k/linux.h. -+ Copyright (C) 1995, 1996, 1997 Free Software Foundation, Inc. -+ -+This file is part of GNU CC. -+ -+GNU CC 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 1, or (at your option) -+any later version. -+ -+GNU CC 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 GNU CC; see the file COPYING. If not, write to -+the Free Software Foundation, 59 Temple Place - Suite 330, -+Boston, MA 02111-1307, USA. */ -+ -+#define MOTOROLA /* Use Motorola syntax */ -+#define USE_GAS /* But GAS wants jbsr instead of jsr */ -+ -+/* Get generic m68k definitions. */ -+ -+#include <m68k/m68k.h> -+ -+/* Get generic NetBSD ELF definitions. We will override if necessary. */ -+ -+#define NETBSD_ELF -+#include <netbsd.h> -+ -+/* 68020 with 68881 */ -+#define TARGET_DEFAULT (MASK_BITFIELD|MASK_68881|MASK_68020) -+ -+#define bsd4_4 -+#undef HAS_INIT_SECTION -+ -+#undef CPP_SPEC -+#define CPP_SPEC "%{!msoft-float:-D__HAVE_68881__ -D__HAVE_FPU__} %{posix:-D_POSIX_SOURCE}" -+ -+#undef ASM_SPEC -+#define ASM_SPEC " %| %{m68030} %{m68040} %{m68060} %{fpic:-k} %{fPIC:-k -K}" -+ -+/* Provide a set of pre-definitions and pre-assertions appropriate for -+ the m68k running svr4. */ -+ -+/* NetBSD extension to GNU C: __KPRINTF_ATTRIBUTE__ */ -+ -+#define CPP_PREDEFINES "\ -+-D__m68k__ -D__NetBSD__ -D__ELF__ -D__KPRINTF_ATTRIBUTE__ -D__SVR4_ABI__ \ -+-D__motorola__ -Asystem(unix) -Asystem(NetBSD) -Acpu(m68k) -Amachine(m68k)" -+ -+/* This is BSD, so it wants DBX format. */ -+ -+#define DBX_DEBUGGING_INFO -+ -+/* Make GCC agree with <machine/ansi.h>. */ -+ -+#undef SIZE_TYPE -+#define SIZE_TYPE "unsigned int" -+ -+#undef PTRDIFF_TYPE -+#define PTRDIFF_TYPE "int" -+ -+#undef WCHAR_TYPE -+#define WCHAR_TYPE "int" -+ -+#undef WCHAR_UNSIGNED -+#define WCHAR_UNSIGNED 0 -+ -+#undef WCHAR_TYPE_SIZE -+#define WCHAR_TYPE_SIZE 32 -+ -+#undef ASM_APP_ON -+#define ASM_APP_ON "#APP\n" -+ -+#undef ASM_APP_OFF -+#define ASM_APP_OFF "#NO_APP\n" -+ -+/* Here are four prefixes that are used by asm_fprintf to -+ facilitate customization for alternate assembler syntaxes. -+ Machines with no likelihood of an alternate syntax need not -+ define these and need not use asm_fprintf. */ -+ -+/* The prefix for register names. Note that REGISTER_NAMES -+ is supposed to include this prefix. Also note that this is NOT an -+ fprintf format string, it is a literal string */ -+ -+#undef REGISTER_PREFIX -+#define REGISTER_PREFIX "%" -+ -+/* The prefix for local (compiler generated) labels. -+ These labels will not appear in the symbol table. */ -+ -+#undef LOCAL_LABEL_PREFIX -+#define LOCAL_LABEL_PREFIX "." -+ -+/* The prefix to add to user-visible assembler symbols. */ -+ -+#undef USER_LABEL_PREFIX -+#define USER_LABEL_PREFIX "" -+ -+#define ASM_COMMENT_START "|" -+ -+/* How to refer to registers in assembler output. -+ This sequence is indexed by compiler's hard-register-number. -+ Motorola format uses different register names than defined in m68k.h. -+ We also take this chance to convert 'a6' to 'fp' */ -+ -+#undef REGISTER_NAMES -+ -+#ifndef SUPPORT_SUN_FPA -+ -+#define REGISTER_NAMES \ -+{"%d0", "%d1", "%d2", "%d3", "%d4", "%d5", "%d6", "%d7", \ -+ "%a0", "%a1", "%a2", "%a3", "%a4", "%a5", "%fp", "%sp", \ -+ "%fp0", "%fp1", "%fp2", "%fp3", "%fp4", "%fp5", "%fp6", "%fp7" } -+ -+#else /* SUPPORTED_SUN_FPA */ -+ -+#define REGISTER_NAMES \ -+{"%d0", "%d1", "%d2", "%d3", "%d4", "%d5", "%d6", "%d7", \ -+ "%a0", "%a1", "%a2", "%a3", "%a4", "%a5", "%fp", "%sp", \ -+ "%fp0", "%fp1", "%fp2", "%fp3", "%fp4", "%fp5", "%fp6", "%fp7", \ -+ "%fpa0", "%fpa1", "%fpa2", "%fpa3", "%fpa4", "%fpa5", "%fpa6","%fpa7", \ -+ "%fpa8", "%fpa9", "%fpa10","%fpa11","%fpa12","%fpa13","%fpa14","%fpa15", \ -+ "%fpa16","%fpa17","%fpa18","%fpa19","%fpa20","%fpa21","%fpa22","%fpa23", \ -+ "%fpa24","%fpa25","%fpa26","%fpa27","%fpa28","%fpa29","%fpa30","%fpa31" } -+ -+#endif /* defined SUPPORT_SUN_FPA */ -+ -+/* Currently, JUMP_TABLES_IN_TEXT_SECTION must be defined in order to -+ keep switch tables in the text section. */ -+ -+#define JUMP_TABLES_IN_TEXT_SECTION 1 -+ -+/* Use the default action for outputting the case label. */ -+#undef ASM_OUTPUT_CASE_LABEL -+#define ASM_RETURN_CASE_JUMP \ -+ do { \ -+ if (TARGET_5200) \ -+ return "ext%.l %0\n\tjmp %%pc@(2,%0:l)"; \ -+ else \ -+ return "jmp %%pc@(2,%0:w)"; \ -+ } while (0) -+ -+/* This is how to output an assembler line that says to advance the -+ location counter to a multiple of 2**LOG bytes. */ -+ -+#undef ALIGN_ASM_OP -+#define ALIGN_ASM_OP ".align" -+ -+#undef ASM_OUTPUT_ALIGN -+#define ASM_OUTPUT_ALIGN(FILE,LOG) \ -+do { \ -+ if ((LOG) > 0) \ -+ fprintf ((FILE), "\t%s %u\n", ALIGN_ASM_OP, 1 << (LOG)); \ -+} while (0) -+ -+/* If defined, a C expression whose value is a string containing the -+ assembler operation to identify the following data as uninitialized global -+ data. */ -+ -+#define BSS_SECTION_ASM_OP ".section\t.bss" -+ -+/* A C statement (sans semicolon) to output to the stdio stream -+ FILE the assembler definition of uninitialized global DECL named -+ NAME whose size is SIZE bytes and alignment is ALIGN bytes. -+ Try to use asm_output_aligned_bss to implement this macro. */ -+ -+#define ASM_OUTPUT_ALIGNED_BSS(FILE, DECL, NAME, SIZE, ALIGN) \ -+ asm_output_aligned_bss (FILE, DECL, NAME, SIZE, ALIGN) -+ -+/* Section output setup. */ -+ -+#define USE_CONST_SECTION 1 -+ -+#define BSS_SECTION_ASM_OP ".section\t.bss" -+#define CONST_SECTION_ASM_OP ".section\t.rodata" -+#define CTORS_SECTION_ASM_OP ".section\t.ctors,\"aw\"" -+#define DTORS_SECTION_ASM_OP ".section\t.dtors,\"aw\"" -+#define INIT_SECTION_ASM_OP ".section\t.init" -+#define FINI_SECTION_ASM_OP ".section\t.fini" -+ -+#undef EXTRA_SECTIONS -+#define EXTRA_SECTIONS in_const, in_ctors, in_dtors -+ -+#undef EXTRA_SECTION_FUNCTIONS -+#define EXTRA_SECTION_FUNCTIONS \ -+ CONST_SECTION_FUNCTION \ -+ CTORS_SECTION_FUNCTION \ -+ DTORS_SECTION_FUNCTION -+ -+#undef READONLY_DATA_SECTION -+#define READONLY_DATA_SECTION() const_section () -+ -+extern void text_section (); -+ -+#define CONST_SECTION_FUNCTION \ -+void \ -+const_section () \ -+{ \ -+ if (!USE_CONST_SECTION) \ -+ text_section(); \ -+ else if (in_section != in_const) \ -+ { \ -+ fprintf (asm_out_file, "%s\n", CONST_SECTION_ASM_OP); \ -+ in_section = in_const; \ -+ } \ -+} -+ -+#define CTORS_SECTION_FUNCTION \ -+void \ -+ctors_section () \ -+{ \ -+ if (in_section != in_ctors) \ -+ { \ -+ fprintf (asm_out_file, "%s\n", CTORS_SECTION_ASM_OP); \ -+ in_section = in_ctors; \ -+ } \ -+} -+ -+#define DTORS_SECTION_FUNCTION \ -+void \ -+dtors_section () \ -+{ \ -+ if (in_section != in_dtors) \ -+ { \ -+ fprintf (asm_out_file, "%s\n", DTORS_SECTION_ASM_OP); \ -+ in_section = in_dtors; \ -+ } \ -+} -+ -+/* Switch into a generic section. -+ This is currently only used to support section attributes. -+ -+ We make the section read-only and executable for a function decl, -+ read-only for a const data decl, and writable for a non-const data decl. */ -+#define ASM_OUTPUT_SECTION_NAME(FILE, DECL, NAME, RELOC) \ -+ fprintf (FILE, ".section\t%s,\"%s\",@progbits\n", NAME, \ -+ (DECL) && TREE_CODE (DECL) == FUNCTION_DECL ? "ax" : \ -+ (DECL) && DECL_READONLY_SECTION (DECL, RELOC) ? "a" : "aw") -+ -+/* A C statement (sans semicolon) to output an element in the table of -+ global constructors. */ -+#define ASM_OUTPUT_CONSTRUCTOR(FILE,NAME) \ -+ do { \ -+ ctors_section (); \ -+ fprintf (FILE, "\t.long\t "); \ -+ assemble_name (FILE, NAME); \ -+ fprintf (FILE, "\n"); \ -+ } while (0) -+ -+/* A C statement (sans semicolon) to output an element in the table of -+ global destructors. */ -+#define ASM_OUTPUT_DESTRUCTOR(FILE,NAME) \ -+ do { \ -+ dtors_section (); \ -+ fprintf (FILE, "\t.long\t "); \ -+ assemble_name (FILE, NAME); \ -+ fprintf (FILE, "\n"); \ -+ } while (0) -+ -+/* These macros generate the special .type and .size directives which -+ are used to set the corresponding fields of the linker symbol table -+ entries in an ELF object file under SVR4. These macros also output -+ the starting labels for the relevant functions/objects. */ -+ -+/* Write the extra assembler code needed to declare a function properly. -+ Some svr4 assemblers need to also have something extra said about the -+ function's return value. We allow for that here. */ -+ -+#define ASM_DECLARE_FUNCTION_NAME(FILE, NAME, DECL) \ -+ do { \ -+ fprintf (FILE, "\t%s\t", TYPE_ASM_OP); \ -+ assemble_name (FILE, NAME); \ -+ putc (',', FILE); \ -+ fprintf (FILE, TYPE_OPERAND_FMT, "function"); \ -+ putc ('\n', FILE); \ -+ ASM_DECLARE_RESULT (FILE, DECL_RESULT (DECL)); \ -+ ASM_OUTPUT_LABEL(FILE, NAME); \ -+ } while (0) -+ -+/* Write the extra assembler code needed to declare an object properly. */ -+ -+#define ASM_DECLARE_OBJECT_NAME(FILE, NAME, DECL) \ -+ do { \ -+ fprintf (FILE, "\t%s\t", TYPE_ASM_OP); \ -+ assemble_name (FILE, NAME); \ -+ putc (',', FILE); \ -+ fprintf (FILE, TYPE_OPERAND_FMT, "object"); \ -+ putc ('\n', FILE); \ -+ size_directive_output = 0; \ -+ if (!flag_inhibit_size_directive && DECL_SIZE (DECL)) \ -+ { \ -+ size_directive_output = 1; \ -+ fprintf (FILE, "\t%s\t", SIZE_ASM_OP); \ -+ assemble_name (FILE, NAME); \ -+ putc (',', FILE); \ -+ fprintf (FILE, HOST_WIDE_INT_PRINT_DEC, \ -+ int_size_in_bytes (TREE_TYPE (DECL))); \ -+ fputc ('\n', FILE); \ -+ } \ -+ ASM_OUTPUT_LABEL(FILE, NAME); \ -+ } while (0) -+ -+/* Output the size directive for a decl in rest_of_decl_compilation -+ in the case where we did not do so before the initializer. -+ Once we find the error_mark_node, we know that the value of -+ size_directive_output was set -+ by ASM_DECLARE_OBJECT_NAME when it was run for the same decl. */ -+ -+#define ASM_FINISH_DECLARE_OBJECT(FILE, DECL, TOP_LEVEL, AT_END) \ -+do { \ -+ char *name = XSTR (XEXP (DECL_RTL (DECL), 0), 0); \ -+ if (!flag_inhibit_size_directive && DECL_SIZE (DECL) \ -+ && ! AT_END && TOP_LEVEL \ -+ && DECL_INITIAL (DECL) == error_mark_node \ -+ && !size_directive_output) \ -+ { \ -+ size_directive_output = 1; \ -+ fprintf (FILE, "\t%s\t", SIZE_ASM_OP); \ -+ assemble_name (FILE, name); \ -+ putc (',', FILE); \ -+ fprintf (FILE, HOST_WIDE_INT_PRINT_DEC, \ -+ int_size_in_bytes (TREE_TYPE (DECL))); \ -+ fputc ('\n', FILE); \ -+ } \ -+ } while (0) -+ -+/* This is how to declare the size of a function. */ -+ -+#define ASM_DECLARE_FUNCTION_SIZE(FILE, FNAME, DECL) \ -+ do { \ -+ if (!flag_inhibit_size_directive) \ -+ { \ -+ char label[256]; \ -+ static int labelno; \ -+ labelno++; \ -+ ASM_GENERATE_INTERNAL_LABEL (label, "Lfe", labelno); \ -+ ASM_OUTPUT_INTERNAL_LABEL (FILE, "Lfe", labelno); \ -+ fprintf (FILE, "\t%s\t", SIZE_ASM_OP); \ -+ assemble_name (FILE, (FNAME)); \ -+ fprintf (FILE, ","); \ -+ assemble_name (FILE, label); \ -+ fprintf (FILE, "-"); \ -+ assemble_name (FILE, (FNAME)); \ -+ putc ('\n', FILE); \ -+ } \ -+ } while (0) -+ -+/* This is how we tell the assembler that two symbols have the same value. */ -+ -+#define ASM_OUTPUT_DEF(FILE,NAME1,NAME2) \ -+ do { assemble_name(FILE, NAME1); \ -+ fputs(" = ", FILE); \ -+ assemble_name(FILE, NAME2); \ -+ fputc('\n', FILE); } while (0) -+ -+#undef ASM_OUTPUT_COMMON -+#undef ASM_OUTPUT_LOCAL -+#define ASM_OUTPUT_COMMON(FILE, NAME, SIZE, ROUNDED) \ -+( fputs (".comm ", (FILE)), \ -+ assemble_name ((FILE), (NAME)), \ -+ fprintf ((FILE), ",%u\n", (SIZE))) -+ -+#define ASM_OUTPUT_LOCAL(FILE, NAME, SIZE, ROUNDED) \ -+( fputs (".lcomm ", (FILE)), \ -+ assemble_name ((FILE), (NAME)), \ -+ fprintf ((FILE), ",%u\n", (SIZE))) -+ -+/* Currently, JUMP_TABLES_IN_TEXT_SECTION must be defined in order to -+ keep switch tables in the text section. */ -+ -+#define JUMP_TABLES_IN_TEXT_SECTION 1 -+ -+/* Output assembler code to FILE to increment profiler label # LABELNO -+ for profiling a function entry. */ -+ -+#undef FUNCTION_PROFILER -+#define FUNCTION_PROFILER(FILE, LABELNO) \ -+do { \ -+ asm_fprintf (FILE, "\tlea (%LLP%d,%Rpc),%Ra1\n", (LABELNO)); \ -+ if (flag_pic) \ -+ fprintf (FILE, "\tbsr.l __mcount@PLTPC\n"); \ -+ else \ -+ fprintf (FILE, "\tjbsr __mcount\n"); \ -+} while (0) -+ -+/* Register in which address to store a structure value is passed to a -+ function. The default in m68k.h is a1. For m68k/SVR4 it is a0. */ -+ -+#undef STRUCT_VALUE_REGNUM -+#define STRUCT_VALUE_REGNUM 8 -+ -+/* Register in which static-chain is passed to a function. The -+ default in m68k.h is a0, but that is already the struct value -+ regnum. Make it a1 instead. */ -+ -+#undef STATIC_CHAIN_REGNUM -+#define STATIC_CHAIN_REGNUM 9 -+ -+/* How to renumber registers for dbx and gdb. -+ On the Sun-3, the floating point registers have numbers -+ 18 to 25, not 16 to 23 as they do in the compiler. */ -+ -+#define DBX_REGISTER_NUMBER(REGNO) ((REGNO) < 16 ? (REGNO) : (REGNO) + 2) -+ -+/* Do not break .stabs pseudos into continuations. */ -+ -+#define DBX_CONTIN_LENGTH 0 -+ -+/* 1 if N is a possible register number for a function value. For -+ m68k/SVR4 allow d0, a0, or fp0 as return registers, for integral, -+ pointer, or floating types, respectively. Reject fp0 if not using -+ a 68881 coprocessor. */ -+ -+#undef FUNCTION_VALUE_REGNO_P -+#define FUNCTION_VALUE_REGNO_P(N) \ -+ ((N) == 0 || (N) == 8 || (TARGET_68881 && (N) == 16)) -+ -+/* Define this to be true when FUNCTION_VALUE_REGNO_P is true for -+ more than one register. */ -+ -+#undef NEEDS_UNTYPED_CALL -+#define NEEDS_UNTYPED_CALL 1 -+ -+/* Define how to generate (in the callee) the output value of a -+ function and how to find (in the caller) the value returned by a -+ function. VALTYPE is the data type of the value (as a tree). If -+ the precise function being called is known, FUNC is its -+ FUNCTION_DECL; otherwise, FUNC is 0. For m68k/SVR4 generate the -+ result in d0, a0, or fp0 as appropriate. */ -+ -+#undef FUNCTION_VALUE -+#define FUNCTION_VALUE(VALTYPE, FUNC) \ -+ (TREE_CODE (VALTYPE) == REAL_TYPE && TARGET_68881 \ -+ ? gen_rtx_REG (TYPE_MODE (VALTYPE), 16) \ -+ : (POINTER_TYPE_P (VALTYPE) \ -+ ? gen_rtx_REG (TYPE_MODE (VALTYPE), 8) \ -+ : gen_rtx_REG (TYPE_MODE (VALTYPE), 0))) -+ -+/* For compatibility with the large body of existing code which does -+ not always properly declare external functions returning pointer -+ types, the m68k/SVR4 convention is to copy the value returned for -+ pointer functions from a0 to d0 in the function epilogue, so that -+ callers that have neglected to properly declare the callee can -+ still find the correct return value. */ -+ -+extern int current_function_returns_pointer; -+#define FUNCTION_EXTRA_EPILOGUE(FILE, SIZE) \ -+do { \ -+ if ((current_function_returns_pointer) && \ -+ ! find_equiv_reg (0, get_last_insn (), 0, 0, 0, 8, Pmode)) \ -+ asm_fprintf (FILE, "\tmove.l %Ra0,%Rd0\n"); \ -+} while (0); -+ -+/* Define how to find the value returned by a library function -+ assuming the value has mode MODE. -+ For m68k/SVR4 look for integer values in d0, pointer values in d0 -+ (returned in both d0 and a0), and floating values in fp0. */ -+ -+#undef LIBCALL_VALUE -+#define LIBCALL_VALUE(MODE) \ -+ ((((MODE) == SFmode || (MODE) == DFmode || (MODE) == XFmode) \ -+ && TARGET_68881) \ -+ ? gen_rtx_REG (MODE, 16) \ -+ : gen_rtx_REG (MODE, 0)) -+ -+/* Boundary (in *bits*) on which stack pointer should be aligned. -+ The m68k/SVR4 convention is to keep the stack pointer longword aligned. */ -+ -+#undef STACK_BOUNDARY -+#define STACK_BOUNDARY 32 -+ -+/* Alignment of field after `int : 0' in a structure. -+ For m68k/SVR4, this is the next longword boundary. */ -+ -+#undef EMPTY_FIELD_BOUNDARY -+#define EMPTY_FIELD_BOUNDARY 32 -+ -+/* No data type wants to be aligned rounder than this. -+ For m68k/SVR4, some types (doubles for example) are aligned on 8 byte -+ boundaries */ -+ -+#undef BIGGEST_ALIGNMENT -+#define BIGGEST_ALIGNMENT 64 -+ -+/* In m68k svr4, a symbol_ref rtx can be a valid PIC operand if it is -+ an operand of a function call. */ -+#undef LEGITIMATE_PIC_OPERAND_P -+#define LEGITIMATE_PIC_OPERAND_P(X) \ -+ ((! symbolic_operand (X, VOIDmode) \ -+ && ! (GET_CODE (X) == CONST_DOUBLE && CONST_DOUBLE_MEM (X) \ -+ && GET_CODE (CONST_DOUBLE_MEM (X)) == MEM \ -+ && symbolic_operand (XEXP (CONST_DOUBLE_MEM (X), 0), VOIDmode))) \ -+ || (GET_CODE (X) == SYMBOL_REF && SYMBOL_REF_FLAG (X))) -+ -+/* Turn off function cse if we are doing PIC. We always want function -+ call to be done as `bsr foo@PLTPC', so it will force the assembler -+ to create the PLT entry for `foo'. Doing function cse will cause -+ the address of `foo' to be loaded into a register, which is exactly -+ what we want to avoid when we are doing PIC on svr4 m68k. */ -+#undef SUBTARGET_OVERRIDE_OPTIONS -+#define SUBTARGET_OVERRIDE_OPTIONS \ -+ if (flag_pic) flag_no_function_cse = 1; -+ -+/* For m68k SVR4, structures are returned using the reentrant -+ technique. */ -+ -+#undef PCC_STATIC_STRUCT_RETURN -+ -+/* The svr4 ABI for the m68k says that records and unions are returned -+ in memory. */ -+ -+#define DEFAULT_PCC_STRUCT_RETURN 1 -+ -+/* Output code to add DELTA to the first argument, and then jump to FUNCTION. -+ Used for C++ multiple inheritance. */ -+#define ASM_OUTPUT_MI_THUNK(FILE, THUNK_FNDECL, DELTA, FUNCTION) \ -+do { \ -+ if (DELTA > 0 && DELTA <= 8) \ -+ asm_fprintf (FILE, "\taddq.l %I%d,4(%Rsp)\n", DELTA); \ -+ else if (DELTA < 0 && DELTA >= -8) \ -+ asm_fprintf (FILE, "\tsubq.l %I%d,4(%Rsp)\n", -DELTA); \ -+ else \ -+ asm_fprintf (FILE, "\tadd.l %I%d,4(%Rsp)\n", DELTA); \ -+ \ -+ if (flag_pic) \ -+ { \ -+ fprintf (FILE, "\tbra.l "); \ -+ assemble_name (FILE, XSTR (XEXP (DECL_RTL (FUNCTION), 0), 0)); \ -+ fprintf (FILE, "@PLTPC\n"); \ -+ } \ -+ else \ -+ { \ -+ fprintf (FILE, "\tjmp "); \ -+ assemble_name (FILE, XSTR (XEXP (DECL_RTL (FUNCTION), 0), 0)); \ -+ fprintf (FILE, "\n"); \ -+ } \ -+} while (0) -+ -+/* Output assembler code for a block containing the constant parts -+ of a trampoline, leaving space for the variable parts. */ -+ -+/* On m68k svr4, the trampoline is different from the generic version -+ in that we use a1 as the static call chain. */ -+ -+#undef TRAMPOLINE_TEMPLATE -+#define TRAMPOLINE_TEMPLATE(FILE) \ -+{ \ -+ ASM_OUTPUT_SHORT (FILE, GEN_INT (0x227a)); \ -+ ASM_OUTPUT_SHORT (FILE, GEN_INT (8)); \ -+ ASM_OUTPUT_SHORT (FILE, GEN_INT (0x2f3a)); \ -+ ASM_OUTPUT_SHORT (FILE, GEN_INT (8)); \ -+ ASM_OUTPUT_SHORT (FILE, GEN_INT (0x4e75)); \ -+ ASM_OUTPUT_INT (FILE, const0_rtx); \ -+ ASM_OUTPUT_INT (FILE, const0_rtx); \ -+} -+ -+/* Redefine since we are using a different trampoline */ -+#undef TRAMPOLINE_SIZE -+#define TRAMPOLINE_SIZE 18 -+ -+/* Emit RTL insns to initialize the variable parts of a trampoline. -+ FNADDR is an RTX for the address of the function's pure code. -+ CXT is an RTX for the static chain value for the function. */ -+ -+#undef INITIALIZE_TRAMPOLINE -+#define INITIALIZE_TRAMPOLINE(TRAMP, FNADDR, CXT) \ -+{ \ -+ emit_move_insn (gen_rtx (MEM, SImode, plus_constant (TRAMP, 10)), CXT); \ -+ emit_move_insn (gen_rtx (MEM, SImode, plus_constant (TRAMP, 14)), FNADDR); \ -+} -+ -+/* Provide a LINK_SPEC appropriate for a NetBSD ELF target. -+ Differs only in explicit emulation selection. */ -+#undef LINK_SPEC -+#define LINK_SPEC \ -+ "-m m68kelfnbsd \ -+ %{assert*} \ -+ %{shared:-shared} \ -+ %{!shared: \ -+ -dc -dp \ -+ %{!static: \ -+ %{rdynamic:-export-dynamic} \ -+ %{!dynamic-linker:-dynamic-linker /usr/libexec/ld.elf_so}} \ -+ %{static:-static}}" diff --git a/cross/mipseb-netbsd/DESCR b/cross/mipseb-netbsd/DESCR deleted file mode 100644 index 792b09683f9..00000000000 --- a/cross/mipseb-netbsd/DESCR +++ /dev/null @@ -1,2 +0,0 @@ -This cross-compile environment is for NetBSD/mipseb (e.g. mipsco, newsmips, -sgimips). diff --git a/cross/mipseb-netbsd/MESSAGE b/cross/mipseb-netbsd/MESSAGE deleted file mode 100644 index 4749fe7b297..00000000000 --- a/cross/mipseb-netbsd/MESSAGE +++ /dev/null @@ -1,12 +0,0 @@ -=========================================================================== -$NetBSD: MESSAGE,v 1.2 2002/09/12 17:16:40 wiz Exp $ - -This pkg DOES NOT install headers or runtime link libraries. Only the -compilers are installed. - -In order to have a complete development setup, you need to install -includes and libraries in ${CROSSBASE}/mipseb-netbsd/include and -${CROSSBASE}/mipseb-netbsd/lib respectively, or symlink these paths to -the appropriate places. - -=========================================================================== diff --git a/cross/mipseb-netbsd/Makefile b/cross/mipseb-netbsd/Makefile deleted file mode 100644 index 24dea4710d7..00000000000 --- a/cross/mipseb-netbsd/Makefile +++ /dev/null @@ -1,27 +0,0 @@ -# $NetBSD: Makefile,v 1.5 2002/09/30 21:24:40 jlam Exp $ -# - -DISTVERSION= 1.3.0.0 -DISTFILES= # none - -MAINTAINER= packages@netbsd.org -HOMEPAGE= http://www.netbsd.org/ -COMMENT= Cross-compile environment for NetBSD/mipseb - -WRKSRC= ${WRKDIR}/${EGCS_DISTNAME} - -USE_BUILDLINK2= yes -USE_CROSS_BINUTILS= yes -BINUTILS_GNUTARGET= elf32-bigmips -BINUTILS_LDEMULATION= elf32bmip -USE_CROSS_EGCS= yes -EGCS_FAKE_RUNTIME= yes - -TARGET_ARCH= mipseb-netbsd - -.include "../../mk/bsd.prefs.mk" -.if (${MACHINE_ARCH} == sparc) -. include "../../lang/gcc/buildlink2.mk" -.endif - -.include "../COMMON/cross.mk" diff --git a/cross/mipseb-netbsd/PLIST b/cross/mipseb-netbsd/PLIST deleted file mode 100644 index d4c8fb36874..00000000000 --- a/cross/mipseb-netbsd/PLIST +++ /dev/null @@ -1 +0,0 @@ -@comment $NetBSD: PLIST,v 1.1 2001/10/31 22:03:38 zuntum Exp $ diff --git a/cross/mipseb-netbsd/distinfo b/cross/mipseb-netbsd/distinfo deleted file mode 100644 index 54f62487d61..00000000000 --- a/cross/mipseb-netbsd/distinfo +++ /dev/null @@ -1,9 +0,0 @@ -$NetBSD: distinfo,v 1.2 2001/04/21 09:36:25 skrll Exp $ - -SHA1 (binutils-2.9.1.tar.gz) = 9df3cdcd34f81118ee403f8794b277ad28a57e14 -Size (binutils-2.9.1.tar.gz) = 5694541 bytes -SHA1 (egcs-1.1.1.tar.gz) = 381f6c15ab042a4d3605490c29620ea5ad5592a6 -Size (egcs-1.1.1.tar.gz) = 11604853 bytes -SHA1 (egcs-1.1.1-NetBSD-19980104.diff.gz) = 85ebc334bf9472b9595c4348a6bc440e836b922a -Size (egcs-1.1.1-NetBSD-19980104.diff.gz) = 59770 bytes -SHA1 (patch-aa) = 15e1a97d82b38d130f4ea27404d0b3474da0df33 diff --git a/cross/mipseb-netbsd/patches/patch-aa b/cross/mipseb-netbsd/patches/patch-aa deleted file mode 100644 index 233543183b4..00000000000 --- a/cross/mipseb-netbsd/patches/patch-aa +++ /dev/null @@ -1,20 +0,0 @@ -$NetBSD: patch-aa,v 1.2 2000/11/09 12:54:58 wiz Exp $ - ---- gcc/config/mips/mips.h Tue Jul 21 07:15:32 1998 -+++ gcc/config/mips/mips.h Sat Feb 27 12:36:28 1999 -@@ -2519,13 +2519,14 @@ - fprintf (FILE, "\t.set\tnoat\n"); \ - fprintf (FILE, "\tmove\t%s,%s\t\t# save current return address\n", \ - reg_names[GP_REG_FIRST + 1], reg_names[GP_REG_FIRST + 31]); \ -- fprintf (FILE, "\tjal\t_mcount\n"); \ - fprintf (FILE, \ - "\t%s\t%s,%s,%d\t\t# _mcount pops 2 words from stack\n", \ - TARGET_64BIT ? "dsubu" : "subu", \ - reg_names[STACK_POINTER_REGNUM], \ - reg_names[STACK_POINTER_REGNUM], \ - Pmode == DImode ? 16 : 8); \ -+ fprintf (FILE, "\tjal\t_mcount\n"); \ -+ fprintf (FILE, "\tnop\n"); \ - fprintf (FILE, "\t.set\treorder\n"); \ - fprintf (FILE, "\t.set\tat\n"); \ - } diff --git a/cross/mipsel-netbsd/DESCR b/cross/mipsel-netbsd/DESCR deleted file mode 100644 index 98c6108bdc3..00000000000 --- a/cross/mipsel-netbsd/DESCR +++ /dev/null @@ -1,2 +0,0 @@ -This cross-compile environment is for NetBSD/mipsel (e.g. cobalt, hpcmips, -pmax). diff --git a/cross/mipsel-netbsd/MESSAGE b/cross/mipsel-netbsd/MESSAGE deleted file mode 100644 index 340c60318e4..00000000000 --- a/cross/mipsel-netbsd/MESSAGE +++ /dev/null @@ -1,12 +0,0 @@ -=========================================================================== -$NetBSD: MESSAGE,v 1.2 2002/09/12 17:16:41 wiz Exp $ - -This pkg DOES NOT install headers or runtime link libraries. Only the -compilers are installed. - -In order to have a complete development setup, you need to install -includes and libraries in ${CROSSBASE}/mipsel-netbsd/include and -${CROSSBASE}/mipsel-netbsd/lib respectively, or symlink these paths to -the appropriate places. - -=========================================================================== diff --git a/cross/mipsel-netbsd/Makefile b/cross/mipsel-netbsd/Makefile deleted file mode 100644 index ef1509c1e32..00000000000 --- a/cross/mipsel-netbsd/Makefile +++ /dev/null @@ -1,27 +0,0 @@ -# $NetBSD: Makefile,v 1.4 2002/09/30 21:24:40 jlam Exp $ -# - -DISTVERSION= 1.3.0.0 -DISTFILES= # none - -MAINTAINER= packages@netbsd.org -HOMEPAGE= http://www.netbsd.org/ -COMMENT= Cross-compile environment for NetBSD/mipsel - -WRKSRC= ${WRKDIR}/${EGCS_DISTNAME} - -USE_BUILDLINK2= yes -USE_CROSS_BINUTILS= yes -BINUTILS_GNUTARGET= elf32-littlemips -BINUTILS_LDEMULATION= elf32lmip -USE_CROSS_EGCS= yes -EGCS_FAKE_RUNTIME= yes - -TARGET_ARCH= mipsel-netbsd - -.include "../../mk/bsd.prefs.mk" -.if (${MACHINE_ARCH} == sparc) -. include "../../lang/gcc/buildlink2.mk" -.endif - -.include "../COMMON/cross.mk" diff --git a/cross/mipsel-netbsd/PLIST b/cross/mipsel-netbsd/PLIST deleted file mode 100644 index 9ee1d54050a..00000000000 --- a/cross/mipsel-netbsd/PLIST +++ /dev/null @@ -1 +0,0 @@ -@comment $NetBSD: PLIST,v 1.1 2001/10/31 22:03:39 zuntum Exp $ diff --git a/cross/mipsel-netbsd/distinfo b/cross/mipsel-netbsd/distinfo deleted file mode 100644 index 54f62487d61..00000000000 --- a/cross/mipsel-netbsd/distinfo +++ /dev/null @@ -1,9 +0,0 @@ -$NetBSD: distinfo,v 1.2 2001/04/21 09:36:25 skrll Exp $ - -SHA1 (binutils-2.9.1.tar.gz) = 9df3cdcd34f81118ee403f8794b277ad28a57e14 -Size (binutils-2.9.1.tar.gz) = 5694541 bytes -SHA1 (egcs-1.1.1.tar.gz) = 381f6c15ab042a4d3605490c29620ea5ad5592a6 -Size (egcs-1.1.1.tar.gz) = 11604853 bytes -SHA1 (egcs-1.1.1-NetBSD-19980104.diff.gz) = 85ebc334bf9472b9595c4348a6bc440e836b922a -Size (egcs-1.1.1-NetBSD-19980104.diff.gz) = 59770 bytes -SHA1 (patch-aa) = 15e1a97d82b38d130f4ea27404d0b3474da0df33 diff --git a/cross/mipsel-netbsd/patches/patch-aa b/cross/mipsel-netbsd/patches/patch-aa deleted file mode 100644 index 0f2bc590ced..00000000000 --- a/cross/mipsel-netbsd/patches/patch-aa +++ /dev/null @@ -1,20 +0,0 @@ -$NetBSD: patch-aa,v 1.2 2000/11/09 12:54:21 wiz Exp $ - ---- gcc/config/mips/mips.h Tue Jul 21 07:15:32 1998 -+++ gcc/config/mips/mips.h Sat Feb 27 12:36:28 1999 -@@ -2519,13 +2519,14 @@ - fprintf (FILE, "\t.set\tnoat\n"); \ - fprintf (FILE, "\tmove\t%s,%s\t\t# save current return address\n", \ - reg_names[GP_REG_FIRST + 1], reg_names[GP_REG_FIRST + 31]); \ -- fprintf (FILE, "\tjal\t_mcount\n"); \ - fprintf (FILE, \ - "\t%s\t%s,%s,%d\t\t# _mcount pops 2 words from stack\n", \ - TARGET_64BIT ? "dsubu" : "subu", \ - reg_names[STACK_POINTER_REGNUM], \ - reg_names[STACK_POINTER_REGNUM], \ - Pmode == DImode ? 16 : 8); \ -+ fprintf (FILE, "\tjal\t_mcount\n"); \ -+ fprintf (FILE, "\tnop\n"); \ - fprintf (FILE, "\t.set\treorder\n"); \ - fprintf (FILE, "\t.set\tat\n"); \ - } diff --git a/cross/powerpc-netbsd/DESCR b/cross/powerpc-netbsd/DESCR deleted file mode 100644 index 051c5b5ec62..00000000000 --- a/cross/powerpc-netbsd/DESCR +++ /dev/null @@ -1 +0,0 @@ -This cross-compile environment is for NetBSD/powerpc. diff --git a/cross/powerpc-netbsd/MESSAGE b/cross/powerpc-netbsd/MESSAGE deleted file mode 100644 index 916b28d0bb8..00000000000 --- a/cross/powerpc-netbsd/MESSAGE +++ /dev/null @@ -1,12 +0,0 @@ -=========================================================================== -$NetBSD: MESSAGE,v 1.2 2002/09/12 17:16:41 wiz Exp $ - -This pkg DOES NOT install headers or runtime link libraries. Only the -compilers are installed. - -In order to have a complete development setup, you need to install -includes and libraries in ${CROSSBASE}/powerpc-netbsd/include and -${CROSSBASE}/powerpc-netbsd/lib respectively, or symlink these paths to -the appropriate places. - -=========================================================================== diff --git a/cross/powerpc-netbsd/Makefile b/cross/powerpc-netbsd/Makefile deleted file mode 100644 index 7d2071d77a2..00000000000 --- a/cross/powerpc-netbsd/Makefile +++ /dev/null @@ -1,21 +0,0 @@ -# $NetBSD: Makefile,v 1.2 2001/02/16 14:05:04 wiz Exp $ -# - -DISTVERSION= 1.3.0.0 -DISTFILES= # none - -MAINTAINER= packages@netbsd.org -HOMEPAGE= http://www.netbsd.org/ -COMMENT= Cross-compile environment for NetBSD/powerpc - -WRKSRC= ${WRKDIR}/${EGCS_DISTNAME} - -USE_CROSS_BINUTILS= yes -BINUTILS_GNUTARGET= elf32-powerpc -BINUTILS_LDEMULATION= elf32ppc -USE_CROSS_EGCS= yes -EGCS_FAKE_RUNTIME= yes - -TARGET_ARCH= powerpc-netbsd - -.include "../COMMON/cross.mk" diff --git a/cross/powerpc-netbsd/PLIST b/cross/powerpc-netbsd/PLIST deleted file mode 100644 index b050d37db3e..00000000000 --- a/cross/powerpc-netbsd/PLIST +++ /dev/null @@ -1 +0,0 @@ -@comment $NetBSD: PLIST,v 1.1 2001/10/31 22:03:40 zuntum Exp $ diff --git a/cross/powerpc-netbsd/distinfo b/cross/powerpc-netbsd/distinfo deleted file mode 100644 index 69d0654fa9f..00000000000 --- a/cross/powerpc-netbsd/distinfo +++ /dev/null @@ -1,10 +0,0 @@ -$NetBSD: distinfo,v 1.3 2001/05/16 18:43:16 simonb Exp $ - -SHA1 (binutils-2.9.1.tar.gz) = 9df3cdcd34f81118ee403f8794b277ad28a57e14 -Size (binutils-2.9.1.tar.gz) = 5694541 bytes -SHA1 (egcs-1.1.1.tar.gz) = 381f6c15ab042a4d3605490c29620ea5ad5592a6 -Size (egcs-1.1.1.tar.gz) = 11604853 bytes -SHA1 (egcs-1.1.1-NetBSD-19980104.diff.gz) = 85ebc334bf9472b9595c4348a6bc440e836b922a -Size (egcs-1.1.1-NetBSD-19980104.diff.gz) = 59770 bytes -SHA1 (patch-aa) = c4dd4ed902d91a2df4257fc61b1b53dc0f3fe9d2 -SHA1 (patch-ab) = 0bce95f4636c1b2fdb10e5d0b5d4acf8647e6d28 diff --git a/cross/powerpc-netbsd/patches/patch-aa b/cross/powerpc-netbsd/patches/patch-aa deleted file mode 100644 index 9e2d89a7b1a..00000000000 --- a/cross/powerpc-netbsd/patches/patch-aa +++ /dev/null @@ -1,13 +0,0 @@ -$NetBSD: patch-aa,v 1.1 1999/01/06 01:20:28 tv Exp $ - ---- gcc/config/xm-netbsd.h.orig Tue Jan 5 16:59:00 1999 -+++ gcc/config/xm-netbsd.h Tue Jan 5 16:59:29 1999 -@@ -22,3 +22,8 @@ - running NetBSD. This file should not be specified as $xm_file itself; - instead $xm_file should be CPU/xm-netbsd.h, which should include both - CPU/xm-CPU.h and this file xm-netbsd.h. */ -+ -+/* XXX: temp fix for HOST_WIDE_INT breakage with PowerPC target */ -+#undef HOST_BITS_PER_LONG -+#define HOST_BITS_PER_LONG 4 -+ diff --git a/cross/powerpc-netbsd/patches/patch-ab b/cross/powerpc-netbsd/patches/patch-ab deleted file mode 100644 index ea261f33dd5..00000000000 --- a/cross/powerpc-netbsd/patches/patch-ab +++ /dev/null @@ -1,10 +0,0 @@ -$NetBSD: patch-ab,v 1.1 2001/05/16 18:43:16 simonb Exp $ - ---- gcc/config/rs6000/netbsd.h.orig Thu May 17 02:06:07 2001 -+++ gcc/config/rs6000/netbsd.h Thu May 17 02:33:44 2001 -@@ -70,4 +70,5 @@ - #undef CPP_SPEC - #define CPP_SPEC "\ - %{posix:-D_POSIX_SOURCE} \ -+%{msoft-float:-D_SOFT_FLOAT} \ - %{mcall-sysv: -D_CALL_SYSV} %{mcall-aix: -D_CALL_AIX} %{!mcall-sysv: %{!mcall-aix: -D_CALL_SYSV}}" diff --git a/cross/sh-netbsdcoff/DESCR b/cross/sh-netbsdcoff/DESCR deleted file mode 100644 index 8e8c81d7aa2..00000000000 --- a/cross/sh-netbsdcoff/DESCR +++ /dev/null @@ -1 +0,0 @@ -This cross-compile environment is for big-endian NetBSD/{mmeye,evbsh3}. diff --git a/cross/sh-netbsdcoff/MESSAGE b/cross/sh-netbsdcoff/MESSAGE deleted file mode 100644 index ff67b4e9ca1..00000000000 --- a/cross/sh-netbsdcoff/MESSAGE +++ /dev/null @@ -1,12 +0,0 @@ -=========================================================================== -$NetBSD: MESSAGE,v 1.2 2002/09/12 17:16:41 wiz Exp $ - -This pkg DOES NOT install headers or runtime link libraries. Only the -compilers are installed. - -In order to have a complete development setup, you need to install -includes and libraries in ${CROSSBASE}/sh-netbsdcoff/include and -${CROSSBASE}/sh-netbsdcoff/lib respectively, or symlink these paths to -the appropriate places. - -=========================================================================== diff --git a/cross/sh-netbsdcoff/Makefile b/cross/sh-netbsdcoff/Makefile deleted file mode 100644 index 14852b1f485..00000000000 --- a/cross/sh-netbsdcoff/Makefile +++ /dev/null @@ -1,22 +0,0 @@ -# $NetBSD: Makefile,v 1.3 2001/02/16 14:05:05 wiz Exp $ -# - -DISTVERSION= 1.3.0.0 -DISTFILES= # none - -MAINTAINER= packages@netbsd.org -HOMEPAGE= http://www.netbsd.org/ -COMMENT= Cross-compile environment for big-endian NetBSD/{mmeye,evbsh3} - -WRKSRC= ${WRKDIR}/${EGCS_DISTNAME} - -USE_CROSS_BINUTILS= yes -BINUTILS_GNUTARGET= coff-sh -BINUTILS_LDEMULATION= shunx -USE_CROSS_EGCS= yes -EGCS_FAKE_RUNTIME= yes -EGCS_MULTILIB= yes - -TARGET_ARCH= sh-netbsdcoff - -.include "../COMMON/cross.mk" diff --git a/cross/sh-netbsdcoff/PLIST b/cross/sh-netbsdcoff/PLIST deleted file mode 100644 index cbed673d725..00000000000 --- a/cross/sh-netbsdcoff/PLIST +++ /dev/null @@ -1,15 +0,0 @@ -@comment $NetBSD: PLIST,v 1.1 2001/10/31 22:03:41 zuntum Exp $ -${TARGET_ARCH}/include/assert.h -lib/gcc-lib/${TARGET_ARCH}/${EGCS_INTVERSION}/include/assert.h -lib/gcc-lib/${TARGET_ARCH}/${EGCS_INTVERSION}/include/stdlib.h -lib/gcc-lib/${TARGET_ARCH}/${EGCS_INTVERSION}/include/fixed -lib/gcc-lib/${TARGET_ARCH}/${EGCS_INTVERSION}/ml/libgcc.a -lib/gcc-lib/${TARGET_ARCH}/${EGCS_INTVERSION}/ml/m2/libgcc.a -lib/gcc-lib/${TARGET_ARCH}/${EGCS_INTVERSION}/ml/m3e/libgcc.a -lib/gcc-lib/${TARGET_ARCH}/${EGCS_INTVERSION}/m2/libgcc.a -lib/gcc-lib/${TARGET_ARCH}/${EGCS_INTVERSION}/m3e/libgcc.a -@dirrm lib/gcc-lib/${TARGET_ARCH}/${EGCS_INTVERSION}/m3e -@dirrm lib/gcc-lib/${TARGET_ARCH}/${EGCS_INTVERSION}/m2 -@dirrm lib/gcc-lib/${TARGET_ARCH}/${EGCS_INTVERSION}/ml/m3e -@dirrm lib/gcc-lib/${TARGET_ARCH}/${EGCS_INTVERSION}/ml/m2 -@dirrm lib/gcc-lib/${TARGET_ARCH}/${EGCS_INTVERSION}/ml diff --git a/cross/sh-netbsdcoff/distinfo b/cross/sh-netbsdcoff/distinfo deleted file mode 100644 index b2972f8ba23..00000000000 --- a/cross/sh-netbsdcoff/distinfo +++ /dev/null @@ -1,8 +0,0 @@ -$NetBSD: distinfo,v 1.2 2001/04/21 09:36:26 skrll Exp $ - -SHA1 (binutils-2.9.1.tar.gz) = 9df3cdcd34f81118ee403f8794b277ad28a57e14 -Size (binutils-2.9.1.tar.gz) = 5694541 bytes -SHA1 (egcs-1.1.1.tar.gz) = 381f6c15ab042a4d3605490c29620ea5ad5592a6 -Size (egcs-1.1.1.tar.gz) = 11604853 bytes -SHA1 (egcs-1.1.1-NetBSD-19980104.diff.gz) = 85ebc334bf9472b9595c4348a6bc440e836b922a -Size (egcs-1.1.1-NetBSD-19980104.diff.gz) = 59770 bytes diff --git a/cross/shel-netbsdcoff/DESCR b/cross/shel-netbsdcoff/DESCR deleted file mode 100644 index 1b9eeb9f2b0..00000000000 --- a/cross/shel-netbsdcoff/DESCR +++ /dev/null @@ -1 +0,0 @@ -This cross-compile environment is for little-endian NetBSD/{evbsh3,dreamcast}. diff --git a/cross/shel-netbsdcoff/MESSAGE b/cross/shel-netbsdcoff/MESSAGE deleted file mode 100644 index 61c6f7334c8..00000000000 --- a/cross/shel-netbsdcoff/MESSAGE +++ /dev/null @@ -1,12 +0,0 @@ -=========================================================================== -$NetBSD: MESSAGE,v 1.2 2002/09/12 17:16:42 wiz Exp $ - -This pkg DOES NOT install headers or runtime link libraries. Only the -compilers are installed. - -In order to have a complete development setup, you need to install -includes and libraries in ${CROSSBASE}/shel-netbsdcoff/include and -${CROSSBASE}/shel-netbsdcoff/lib respectively, or symlink these paths to -the appropriate places. - -=========================================================================== diff --git a/cross/shel-netbsdcoff/Makefile b/cross/shel-netbsdcoff/Makefile deleted file mode 100644 index 98942b7da35..00000000000 --- a/cross/shel-netbsdcoff/Makefile +++ /dev/null @@ -1,22 +0,0 @@ -# $NetBSD: Makefile,v 1.3 2001/02/16 14:05:06 wiz Exp $ -# - -DISTVERSION= 1.3.0.0 -DISTFILES= # none - -MAINTAINER= packages@netbsd.org -HOMEPAGE= http://www.netbsd.org/ -COMMENT= Cross-compile environment for little-endian NetBSD/{evbsh3,dreamcast} - -WRKSRC= ${WRKDIR}/${EGCS_DISTNAME} - -USE_CROSS_BINUTILS= yes -BINUTILS_GNUTARGET= coff-shl -BINUTILS_LDEMULATION= shlunx -USE_CROSS_EGCS= yes -EGCS_FAKE_RUNTIME= yes -EGCS_MULTILIB= yes - -TARGET_ARCH= shel-netbsdcoff - -.include "../COMMON/cross.mk" diff --git a/cross/shel-netbsdcoff/PLIST b/cross/shel-netbsdcoff/PLIST deleted file mode 100644 index 9c751779cf4..00000000000 --- a/cross/shel-netbsdcoff/PLIST +++ /dev/null @@ -1,15 +0,0 @@ -@comment $NetBSD: PLIST,v 1.1 2001/10/31 22:03:43 zuntum Exp $ -${TARGET_ARCH}/include/assert.h -lib/gcc-lib/${TARGET_ARCH}/${EGCS_INTVERSION}/include/assert.h -lib/gcc-lib/${TARGET_ARCH}/${EGCS_INTVERSION}/include/stdlib.h -lib/gcc-lib/${TARGET_ARCH}/${EGCS_INTVERSION}/include/fixed -lib/gcc-lib/${TARGET_ARCH}/${EGCS_INTVERSION}/ml/libgcc.a -lib/gcc-lib/${TARGET_ARCH}/${EGCS_INTVERSION}/ml/m2/libgcc.a -lib/gcc-lib/${TARGET_ARCH}/${EGCS_INTVERSION}/ml/m3e/libgcc.a -lib/gcc-lib/${TARGET_ARCH}/${EGCS_INTVERSION}/m2/libgcc.a -lib/gcc-lib/${TARGET_ARCH}/${EGCS_INTVERSION}/m3e/libgcc.a -@dirrm lib/gcc-lib/${TARGET_ARCH}/${EGCS_INTVERSION}/m3e -@dirrm lib/gcc-lib/${TARGET_ARCH}/${EGCS_INTVERSION}/m2 -@dirrm lib/gcc-lib/${TARGET_ARCH}/${EGCS_INTVERSION}/ml/m3e -@dirrm lib/gcc-lib/${TARGET_ARCH}/${EGCS_INTVERSION}/ml/m2 -@dirrm lib/gcc-lib/${TARGET_ARCH}/${EGCS_INTVERSION}/ml diff --git a/cross/shel-netbsdcoff/distinfo b/cross/shel-netbsdcoff/distinfo deleted file mode 100644 index b2972f8ba23..00000000000 --- a/cross/shel-netbsdcoff/distinfo +++ /dev/null @@ -1,8 +0,0 @@ -$NetBSD: distinfo,v 1.2 2001/04/21 09:36:26 skrll Exp $ - -SHA1 (binutils-2.9.1.tar.gz) = 9df3cdcd34f81118ee403f8794b277ad28a57e14 -Size (binutils-2.9.1.tar.gz) = 5694541 bytes -SHA1 (egcs-1.1.1.tar.gz) = 381f6c15ab042a4d3605490c29620ea5ad5592a6 -Size (egcs-1.1.1.tar.gz) = 11604853 bytes -SHA1 (egcs-1.1.1-NetBSD-19980104.diff.gz) = 85ebc334bf9472b9595c4348a6bc440e836b922a -Size (egcs-1.1.1-NetBSD-19980104.diff.gz) = 59770 bytes diff --git a/cross/sparc-netbsdelf/DESCR b/cross/sparc-netbsdelf/DESCR deleted file mode 100644 index 194e5422308..00000000000 --- a/cross/sparc-netbsdelf/DESCR +++ /dev/null @@ -1 +0,0 @@ -This cross-compile environment is for 32-bit ELF NetBSD/sparc. diff --git a/cross/sparc-netbsdelf/MESSAGE b/cross/sparc-netbsdelf/MESSAGE deleted file mode 100644 index f9244a1e7ad..00000000000 --- a/cross/sparc-netbsdelf/MESSAGE +++ /dev/null @@ -1,12 +0,0 @@ -=========================================================================== -$NetBSD: MESSAGE,v 1.2 2002/09/12 17:16:42 wiz Exp $ - -This pkg DOES NOT install headers or runtime link libraries. Only the -compilers are installed. - -In order to have a complete development setup, you need to install -includes and libraries in ${CROSSBASE}/sparc-netbsdelf/include and -${CROSSBASE}/sparc-netbsdelf/lib respectively, or symlink these paths to -the appropriate places. - -=========================================================================== diff --git a/cross/sparc-netbsdelf/Makefile b/cross/sparc-netbsdelf/Makefile deleted file mode 100644 index 76dcbb587a9..00000000000 --- a/cross/sparc-netbsdelf/Makefile +++ /dev/null @@ -1,21 +0,0 @@ -# $NetBSD: Makefile,v 1.2 2001/02/16 14:05:07 wiz Exp $ -# - -DISTVERSION= 1.3.0.0 -DISTFILES= # none - -MAINTAINER= packages@netbsd.org -HOMEPAGE= http://www.netbsd.org/ -COMMENT= Cross-compile environment for 32-bit ELF NetBSD/sparc - -WRKSRC= ${WRKDIR}/${BINUTILS_DISTNAME} - -USE_CROSS_BINUTILS= yes -BINUTILS_GNUTARGET= elf32-sparc -BINUTILS_LDEMULATION= elf32_sparc -USE_CROSS_EGCS= yes -EGCS_FAKE_RUNTIME= yes - -TARGET_ARCH= sparc-netbsdelf - -.include "../COMMON/cross.mk" diff --git a/cross/sparc-netbsdelf/PLIST b/cross/sparc-netbsdelf/PLIST deleted file mode 100644 index f02939b2843..00000000000 --- a/cross/sparc-netbsdelf/PLIST +++ /dev/null @@ -1 +0,0 @@ -@comment $NetBSD: PLIST,v 1.1 2001/10/31 22:03:43 zuntum Exp $ diff --git a/cross/sparc-netbsdelf/distinfo b/cross/sparc-netbsdelf/distinfo deleted file mode 100644 index 59c8f18543a..00000000000 --- a/cross/sparc-netbsdelf/distinfo +++ /dev/null @@ -1,12 +0,0 @@ -$NetBSD: distinfo,v 1.2 2001/04/21 09:36:26 skrll Exp $ - -SHA1 (binutils-2.9.1.tar.gz) = 9df3cdcd34f81118ee403f8794b277ad28a57e14 -Size (binutils-2.9.1.tar.gz) = 5694541 bytes -SHA1 (egcs-1.1.1.tar.gz) = 381f6c15ab042a4d3605490c29620ea5ad5592a6 -Size (egcs-1.1.1.tar.gz) = 11604853 bytes -SHA1 (egcs-1.1.1-NetBSD-19980104.diff.gz) = 85ebc334bf9472b9595c4348a6bc440e836b922a -Size (egcs-1.1.1-NetBSD-19980104.diff.gz) = 59770 bytes -SHA1 (patch-aa) = b4f3f5dcb5048958ac3e698be6afeb267c46c825 -SHA1 (patch-ab) = e6cab60c22f707aa86b48c81f30279be213cb95b -SHA1 (patch-ac) = 34743c9dff1d18b5212e525fcdcc4e62b75e0c6e -SHA1 (patch-ad) = 254a8afa872cea128e212aaf881a51426bccc1ba diff --git a/cross/sparc-netbsdelf/patches/patch-aa b/cross/sparc-netbsdelf/patches/patch-aa deleted file mode 100644 index c94c3cc8eeb..00000000000 --- a/cross/sparc-netbsdelf/patches/patch-aa +++ /dev/null @@ -1,21 +0,0 @@ -$NetBSD: patch-aa,v 1.1.1.1 1999/02/03 13:00:43 tv Exp $ - ---- ./gas/configure.orig Fri May 1 11:45:07 1998 -+++ ./gas/configure Mon Dec 28 17:43:29 1998 -@@ -1610,7 +1613,15 @@ - sparc-fujitsu-none) fmt=aout ;; - sparc-*-elf | sparc-*-sysv4* | sparc-*-solaris*) - fmt=elf ;; -- sparc-*-netbsd*) fmt=aout em=nbsd bfd_gas=yes ;; -+ sparc-*-netbsd*) em=nbsd bfd_gas=yes -+ case ${cpu} in -+ sparc) case ${os} in -+ *elf*) fmt=elf ;; -+ *) fmt=aout ;; -+ esac ;; -+ sparc64) fmt=elf ;; -+ esac -+ ;; - sparc-*-openbsd*) fmt=aout em=nbsd bfd_gas=yes ;; - - tic30-*-*aout*) fmt=aout bfd_gas=yes ;; diff --git a/cross/sparc-netbsdelf/patches/patch-ab b/cross/sparc-netbsdelf/patches/patch-ab deleted file mode 100644 index c7f3c71c0b9..00000000000 --- a/cross/sparc-netbsdelf/patches/patch-ab +++ /dev/null @@ -1,21 +0,0 @@ -$NetBSD: patch-ab,v 1.1.1.1 1999/02/03 23:01:08 mrg Exp $ - ---- ./gas/configure.in.orig Fri May 1 11:45:07 1998 -+++ ./gas/configure.in Mon Dec 28 17:43:29 1998 -@@ -1610,7 +1613,15 @@ - sparc-fujitsu-none) fmt=aout ;; - sparc-*-elf | sparc-*-sysv4* | sparc-*-solaris*) - fmt=elf ;; -- sparc-*-netbsd*) fmt=aout em=nbsd bfd_gas=yes ;; -+ sparc-*-netbsd*) em=nbsd bfd_gas=yes -+ case ${cpu} in -+ sparc) case ${os} in -+ *elf*) fmt=elf ;; -+ *) fmt=aout ;; -+ esac ;; -+ sparc64) fmt=elf ;; -+ esac -+ ;; - sparc-*-openbsd*) fmt=aout em=nbsd bfd_gas=yes ;; - - tic30-*-*aout*) fmt=aout bfd_gas=yes ;; diff --git a/cross/sparc-netbsdelf/patches/patch-ac b/cross/sparc-netbsdelf/patches/patch-ac deleted file mode 100644 index 8795f1a65bb..00000000000 --- a/cross/sparc-netbsdelf/patches/patch-ac +++ /dev/null @@ -1,17 +0,0 @@ -$NetBSD: patch-ac,v 1.3 2000/05/07 02:46:42 mycroft Exp $ - ---- ../egcs-1.1.1/gcc/config/sparc/netbsd.h.orig Sat May 6 21:01:21 2000 -+++ ../egcs-1.1.1/gcc/config/sparc/netbsd.h Sat May 6 21:05:16 2000 -@@ -12,10 +12,10 @@ - /* Make gcc agree with <machine/ansi.h> */ - - #undef SIZE_TYPE --#define SIZE_TYPE "unsigned int" -+#define SIZE_TYPE "long unsigned int" - - #undef PTRDIFF_TYPE --#define PTRDIFF_TYPE "int" -+#define PTRDIFF_TYPE "long int" - - #undef WCHAR_TYPE - #define WCHAR_TYPE "int" diff --git a/cross/sparc-netbsdelf/patches/patch-ad b/cross/sparc-netbsdelf/patches/patch-ad deleted file mode 100644 index 64469ac8dfa..00000000000 --- a/cross/sparc-netbsdelf/patches/patch-ad +++ /dev/null @@ -1,27 +0,0 @@ -$NetBSD: patch-ad,v 1.3 2000/05/07 12:21:24 mycroft Exp $ - ---- ../egcs-1.1.1/gcc/config/sparc/netbsdelf.h.orig Sat May 6 21:59:07 2000 -+++ ../egcs-1.1.1/gcc/config/sparc/netbsdelf.h Sat May 6 21:59:59 2000 -@@ -5,6 +5,9 @@ - - /* ok, clean up after <sparc/elf.h> */ - -+#undef INIT_SUBTARGET_OPTABS -+#define INIT_SUBTARGET_OPTABS -+ - #undef CPP_PREDEFINES - #define CPP_PREDEFINES "-D__sparc__ -D__NetBSD__ -D__ELF__ -D__KPRINTF_ATTRIBUTE__" - -@@ -22,10 +25,10 @@ - #include <netbsd.h> - - #undef SIZE_TYPE --#define SIZE_TYPE "unsigned int" -+#define SIZE_TYPE "long unsigned int" - - #undef PTRDIFF_TYPE --#define PTRDIFF_TYPE "int" -+#define PTRDIFF_TYPE "long int" - - #undef WCHAR_TYPE - #define WCHAR_TYPE "int" |