+Fri Sep 25 19:14:48 1992 John Gilmore (gnu@cygnus.com)
+
+ Add Adobe a.out support.
+
+ * aout-adobe.c: New file. So far, only reads a.out.adobe. FIXME.
+ * config/adobe.mt: Add.
+ * configure.in (*-adobe-* target): Add.
+ * targets.c (a_out_adobe_vec): Add.
+ * Makefile.in: add aout-adobe.c.
+
+ * configure.in: Put two dashes in all entries to be matched.
+ Add comments to remind people to do this.
+ Reorder all entries that match manufacturer names, to occur
+ last, so they will only be matched if no more specific match
+ occurs. Remove manufacturers `aout', `bout', `coff', and `elf'.
+
Fri Sep 25 15:03:22 1992 Brendan Kehoe (brendan@rtl.cygnus.com)
* elf.c (section_from_elf_index): Return bfd_abs_section, not 0,
types.
* seclet.h: #ifndef around it to allow multiple inclusion
* srec.c: minor doc fix
-
-
Mon Sep 21 14:33:58 1992 Ian Lance Taylor (ian@cygnus.com)
rs6000) my_host=rs6000
;;
+we32k) my_host=we32k ;;
+
mips)
case "${host_vendor}" in
dec) my_host=decstation ;;
# per-target:
+# WHEN ADDING ENTRIES TO THIS MATRIX:
+# Make sure that the left side always has two dashes. Otherwise you
+# can get spurious matches. Even for unambiguous cases, do this as a
+# convention, else the table becomes a real mess to understand and maintain.
+
case "${target}" in
rs6000-ibm-* ) bfd_target=rs6000 ;;
a29k-amd-udi ) bfd_target=a29k-coff ;;
a29k-amd-* ) bfd_target=a29k-aout ;;
+we32k-*-* ) bfd_target=we32k ;;
+
h8300-hitachi-* ) bfd_target=h8300-coff ;;
-*-hitachi-* ) echo "bad hitachi cpu"; exit 1 ;;
i960-wrs-* ) bfd_target=i960-bout ;;
m68k-wrs-* ) bfd_target=m68k-aout ;;
m683?2-netx-* ) bfd_target=m68k-aout ;;
sparc-wrs-* ) bfd_target=sparc-aout ;;
+z8k*-*-* ) bfd_target=z8k-coff ;;
m68*-ericsson-* ) bfd_target=m68k-aout ;;
m68k-sun-* ) bfd_target=m68k-aout ;;
sparc-sun-sysv4 ) bfd_target=sparc-elf ;;
sparc-sun-solaris2* ) bfd_target=sparc-elf ;;
sparc-sun-* ) bfd_target=sparc-aout ;;
+sparclite-fujitsu-* ) bfd_target=sparc-aout ;;
mips-dec-* ) bfd_target=decstation ;;
vax-dec-* ) bfd_target=vax ;;
mips-sgi-* ) bfd_target=irix3 ;;
mips-big-* ) bfd_target=irix3 ;;
-*-tandem-* ) bfd_target=st2000 ;;
-
m68k-none-os68k ) bfd_target=m68k-aout ;;
m680[01234]0-none-os68k ) bfd_target=m68k-aout ;;
m683?2-none-os68k ) bfd_target=m68k-aout ;;
hppa*-hp-hpux ) bfd_target=hppahpux ;;
hppa*-hp-bsd ) bfd_target=hppabsd ;;
-i[34]86-ncr-sysv4* ) bfd_target=i386-elf ;;
+i[34]86-*-sysv4* ) bfd_target=i386-elf ;;
+
+tahoe-*-none ) bfd_target=${target_cpu} ;;
+vax-*-none ) bfd_target=${target_cpu} ;;
*-*-aout ) bfd_target=${target_cpu}-aout ;;
*-*-bsd ) bfd_target=${target_cpu}-aout ;;
*-*-linux* ) bfd_target=${target_cpu}-linux ;;
*-*-sysv* ) bfd_target=${target_cpu}-coff ;;
*-*-scosysv* ) bfd_target=${target_cpu}-coff ;;
-tahoe-*-none ) bfd_target=${target_cpu} ;;
-vax-*-none ) bfd_target=${target_cpu} ;;
-
-# These are obsolete and should be removed. FIXME. -- gnu
-*-aout-* ) bfd_target=${target_cpu}-aout ;;
-*-bout-* ) bfd_target=${target_cpu}-bout ;;
-*-coff-* ) bfd_target=${target_cpu}-coff ;;
-*-elf-* ) bfd_target=${target_cpu}-elf ;;
i386-none-* ) bfd_target=i386-coff ;;
+*-adobe-* ) bfd_target=adobe ;;
*-sony-* ) bfd_target=news ;;
*-intel-* ) bfd_target=${target_cpu}-coff ;;
*-stratus-* ) bfd_target=${target_cpu}-elf ;;
*-cbm-* ) bfd_target=${target_cpu}-elf ;;
*-ncr-* ) bfd_target=${target_cpu}-elf ;;
+*-hitachi-* ) echo "bad hitachi cpu"; exit 1 ;;
+*-tandem-* ) bfd_target=st2000 ;;
esac
/* Generic target-file-type support for the BFD library.
- Copyright (C) 1990-1991 Free Software Foundation, Inc.
+ Copyright 1990, 1991, 1992 Free Software Foundation, Inc.
Written by Cygnus Support.
This file is part of BFD, the Binary File Descriptor library.
o If the target string is still NULL, or the target string is
<<default>>, then the first item in the target vector is used
- as the target type. @xref{bfd_target}.
+ as the target type, and <<target_defaulted>> is set to
+ cause <<bfd_check_format>> to loop through all the targets.
+ @xref{bfd_target}. @xref{Formats}.
o Otherwise, the elements in the target vector are inspected
one by one, until a match on target name is found. When found,
Once the BFD has been opened and the target selected, the file
format may be determined. This is done by calling
- <<bfd_check_format>> on the BFD with a suggested format. The
+ <<bfd_check_format>> on the BFD with a suggested format.
+ If <<target_defaulted>> has been set, each possible target
+ type is tried to see if it recognizes the specified format. The
routine returns <<true>> when the application guesses right.
@menu
@* bfd_target::
extern bfd_target demo_64_vec;
extern bfd_target srec_vec;
extern bfd_target tekhex_vec;
+extern bfd_target a_out_adobe_vec;
extern bfd_target b_out_vec_little_host;
extern bfd_target b_out_vec_big_host;
extern bfd_target icoff_little_vec;
&icoff_big_vec,
&elf_little_vec,
&elf_big_vec,
+ &a_out_adobe_vec,
&b_out_vec_little_host,
&b_out_vec_big_host,
&m68kcoff_vec,