* listing.c (listing_print): Close the listing file if it is not
[deliverable/binutils-gdb.git] / gas / mpw-config.in
index f36bf7c221cc9cbdbf8dc59e281bdf93f0dd97d3..3e1f196e7656bb314c977da3a5c8db28a0d2b9ac 100644 (file)
@@ -2,19 +2,69 @@
 
 Set target_arch `echo {target_canonical} | sed -e 's/-.*-.*//'`
 
-# (should canonicalize arch name) */
+If "{target_arch}" =~ /powerpc/
+       Set short_arch_name "ppc"
+       Set target_cpu "powerpc"
+Else
+       Set short_arch_name "{target_arch}"
+End If
+
+# The following works for many configurations, though not all.
 
-Set target_format `echo {target_canonical} | sed -e 's/.*-.*-//'`
+Set obj_format `echo {target_canonical} | sed -e 's/.*-.*-//'`
 
-forward-include "{srcdir}"config:tc-{target_arch}.c targ-cpu.c
-forward-include "{srcdir}"config:tc-{target_arch}.h targ-cpu.h
+Set bfd_gas no
 
-forward-include "{srcdir}"config:obj-{target_format}.c obj-format.c
-forward-include "{srcdir}"config:obj-{target_format}.h obj-format.h
+Set TDEFINES ""
+
+Set EXTRA_OBJECTS ""
 
 # Default emulation.
 
-forward-include "{srcdir}"config:te-generic.h targ-env.h
+Set em generic
+
+If "{target_canonical}" =~ /m68k-apple-macos/
+       Set obj_format "coff"
+       Set TDEFINES '-d M68KCOFF'
+       Set EXTRA_OBJECTS '"{o}"m68k-parse.c.o'
+
+Else If "{target_canonical}" =~ /powerpc-apple-macos/
+       Set obj_format "coff"
+       Set bfd_gas yes
+       Set em macos
+
+Else If "{target_canonical}" =~ /i386-unknown-go32/
+       Set obj_format "coff"
+       Set TDEFINES '-d I386COFF'
+
+Else If "{target_canonical}" =~ /m68k-unknown-coff/
+       Set TDEFINES '-d M68KCOFF'
+
+Else If "{target_canonical}" =~ /mips-idt-ecoff/
+       Set bfd_gas yes
+       Set TDEFINES '-d TARGET_BYTES_BIG_ENDIAN'
+
+# start-sanitize-gm
+Else If "{target_canonical}" =~ /mips-gm-magic/
+       Set obj_format "ecoff"
+       Set bfd_gas yes
+       Set TDEFINES '-d TARGET_BYTES_BIG_ENDIAN'
+# end-sanitize-gm
+
+Else If "{target_canonical}" =~ /sh-hitachi-hms/
+       Set obj_format "coff"
+       forward-include "{srcroot}"opcodes:sh-opc.h 'opcodes/sh-opc.h'
+End If
+
+forward-include "{srcdir}"config:tc-{short_arch_name}.c targ-cpu.c
+forward-include "{srcdir}"config:tc-{short_arch_name}.h targ-cpu.h
+
+forward-include "{srcdir}"config:obj-{obj_format}.c obj-format.c
+forward-include "{srcdir}"config:obj-{obj_format}.h obj-format.h
+
+forward-include "{srcdir}"config:te-{em}.h targ-env.h
+
+# Special cases for float handling.
 
 If "{target_arch}" =~ /ns32k/
        forward-include "{srcdir}"config:atof-ns32k.c atof-targ.c
@@ -26,3 +76,36 @@ Else
        # Use IEEE by default.
        forward-include "{srcdir}"config:atof-ieee.c atof-targ.c
 End If
+
+Echo '# From mpw-config.in'                     > "{o}"mk.tmp
+Echo "TDEFINES = " {TDEFINES}                  >> "{o}"mk.tmp
+Echo "EXTRA_OBJECTS = " {EXTRA_OBJECTS}                >> "{o}"mk.tmp
+# (We use the -n option here so as not to get extra spaces inserted)
+Echo -n 'TARG_CPU_DEP = {TARG_CPU_DEP_'                >> "{o}"mk.tmp
+Echo -n {short_arch_name}                      >> "{o}"mk.tmp
+Echo -n '}'                                    >> "{o}"mk.tmp
+Echo '# End from mpw-config.in'                        >> "{o}"mk.tmp
+
+Echo '/* conf.  Generated by mpw-configure.  */' > "{o}"conf.new
+Echo -n '#define TARGET_CPU       "'           >> "{o}"conf.new
+Echo -n "{target_cpu}"                         >> "{o}"conf.new
+Echo    '"'                                    >> "{o}"conf.new
+Echo -n '#define TARGET_ALIAS       "'         >> "{o}"conf.new
+Echo -n "{target_alias}"                               >> "{o}"conf.new
+Echo    '"'                                    >> "{o}"conf.new
+Echo -n '#define TARGET_CANONICAL       "'             >> "{o}"conf.new
+Echo -n "{target_canonical}"                   >> "{o}"conf.new
+Echo    '"'                                    >> "{o}"conf.new
+Echo '#include "mpw.h"'                                >> "{o}"conf.new
+If "{bfd_gas}" =~ /yes/
+       Echo "#define BFD_ASSEMBLER"            >> "{o}"conf.new
+Else
+       Echo "#define MANY_SEGMENTS"            >> "{o}"conf.new
+End If
+Echo '#define CR_EOL'                          >> "{o}"conf.new
+Echo '#define OBJ_COFF_OMIT_TIMESTAMP'         >> "{o}"conf.new
+Echo '#define LOSING_COMPILER'                 >> "{o}"conf.new
+
+MoveIfChange "{o}"conf.new "{o}"conf
+
+sed -e "s/@srcdir@/{srcdir}/" "{srcdir}"gdbinit.in > "{o}"_gdbinit
This page took 0.025813 seconds and 4 git commands to generate.