Add Adobe a.out support.
authorJohn Gilmore <gnu@cygnus>
Sat, 26 Sep 1992 02:20:05 +0000 (02:20 +0000)
committerJohn Gilmore <gnu@cygnus>
Sat, 26 Sep 1992 02:20:05 +0000 (02:20 +0000)
* 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'.

bfd/ChangeLog
bfd/configure.in
bfd/targets.c

index f344edb..3fcd06f 100644 (file)
@@ -1,3 +1,19 @@
+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,
@@ -13,8 +29,6 @@ Fri Sep 25 11:11:57 1992  Steve Chamberlain  (sac@thepub.cygnus.com)
        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)
 
index d7967ec..9917913 100644 (file)
@@ -15,6 +15,8 @@ case "${host_cpu}" in
 rs6000)        my_host=rs6000
        ;;
 
+we32k) my_host=we32k ;;
+
 mips)
        case "${host_vendor}" in
        dec)    my_host=decstation ;;
@@ -146,6 +148,11 @@ fi
 
 # 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 ;;
@@ -154,8 +161,9 @@ a29k-amd-ebmon              ) bfd_target=a29k-coff ;;
 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 ;;
@@ -166,6 +174,7 @@ m683?2-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 ;;
@@ -174,6 +183,7 @@ m683?2-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 ;;
@@ -188,8 +198,6 @@ m683?2-hp-bsd               ) bfd_target=hp300bsd ;;
 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 ;;
@@ -211,7 +219,10 @@ tahoe-*-*          ) bfd_target=tahoe ;;
 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 ;;
@@ -221,21 +232,16 @@ i[34]86-ncr-sysv4*        ) bfd_target=i386-elf ;;
 *-*-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
 
index 6d7b337..8f29553 100644 (file)
@@ -1,5 +1,5 @@
 /* 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.
@@ -48,7 +48,9 @@ DESCRIPTION
 
        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,
@@ -62,7 +64,9 @@ DESCRIPTION
 
        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::
@@ -375,6 +379,7 @@ extern bfd_target sunos_big_vec;
 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;
@@ -443,6 +448,7 @@ bfd_target *target_vector[] = {
        &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,