diff options
Diffstat (limited to 'gas/mpw-make.sed')
-rw-r--r-- | gas/mpw-make.sed | 100 |
1 files changed, 100 insertions, 0 deletions
diff --git a/gas/mpw-make.sed b/gas/mpw-make.sed new file mode 100644 index 0000000..16f12a5 --- /dev/null +++ b/gas/mpw-make.sed @@ -0,0 +1,100 @@ +# Sed commands that finish translating the GAS Unix Makefile to MPW syntax. + +/^# @target_frag@/a\ +\ +HDEFINES = \ +LOCAL_LOADLIBES = \ + +/^srcroot = /s/^/#/ +/^target_alias = /s/^/#/ + +/INCLUDES/s/-i "{srcdir}":\([a-z]*\)/-i "{topsrcdir}"\1/ +/INCLUDES/s/-i "{srcdir}"\.\./-i "{topsrcdir}"/ + +/^INCLUDES = .*$/s/$/ -i "{topsrcdir}"include:mpw: -i ::extra-include:/ + +/$(TARG_CPU_DEP_@target_cpu_type@)/s/$(TARG_CPU_DEP_@target_cpu_type@)/{TARG_CPU_DEP}/ + +/@OPCODES_LIB@/s/@OPCODES_LIB@/::opcodes:libopcodes.o/ +/@BFDLIB@/s/@BFDLIB@/::bfd:libbfd.o/ + +# Point at the libraries directly. +/@OPCODES_DEP@/s/@OPCODES_DEP@/::opcodes:libopcodes.o/ +/@BFDDEP@/s/@BFDDEP@/::bfd:libbfd.o/ + +# Don't need this. +/@HLDFLAGS@/s/@HLDFLAGS@// + +/extra_objects@/s/extra_objects@/{EXTRA_OBJECTS}/ + +/LOADLIBES/s/{LOADLIBES}/{EXTRALIBS}/ + +/@ALL_OBJ_DEPS@/s/@ALL_OBJ_DEPS@/::bfd:bfd.h/ + +# This causes problems - not sure why. +/^tags TAGS/,/etags /d + +/^make-gas.com/s/^/#/ + +/true/s/ ; @true$// + +# Remove references to conf.in, we don't need them. +/conf\.in/s/conf\.in//g + +# Use _gdbinit everywhere instead of .gdbinit. +/gdbinit/s/\.gdbinit/_gdbinit/g + +/atof-targ/s/"{s}"atof-targ\.c/"{o}"atof-targ.c/g +/config/s/"{s}"config\.h/"{o}"config.h/g +/config/s/^config\.h/"{o}"config.h/ +/obj-format/s/"{s}"obj-format\.c/"{o}"obj-format.c/g +/obj-format/s/"{s}"obj-format\.h/"{o}"obj-format.h/g +/targ-cpu/s/"{s}"targ-cpu\.c/"{o}"targ-cpu.c/g +/targ-cpu/s/"{s}"targ-cpu\.h/"{o}"targ-cpu.h/g +/targ-env/s/"{s}"targ-env\.h/"{o}"targ-env.h/g + +/m68k-parse.c/s/"{s}"m68k-parse\.c/"{o}"m68k-parse.c/g +/m68k-parse.c/s/^m68k-parse\.c/"{o}"m68k-parse.c/ + +# Whack out the config.h dependency, it only causes excess rebuilds. +/{OBJS}/s/{OBJS} \\Option-f "{o}"config.h/{OBJS} \\Option-f/ +/gasp.c/s/gasp\.c "{o}"config.h/gasp.c/ + +# ALL_CFLAGS includes TDEFINES, which is not desirable at link time. +/CC_LD/s/ALL_CFLAGS/CFLAGS/g + +# The resource file is called mac-as.r. +/as.new.r/s/as\.new\.r/mac-as.r/ +/gasp.new.r/s/gasp\.new\.r/mac-as.r/ + +# ...and the PROG_NAME doesn't have a .new in it. +/PROG_NAME/s/PROG_NAME='"'as.new'"'/PROG_NAME='"'as'"'/ +/PROG_NAME/s/PROG_NAME='"'gasp.new'"'/PROG_NAME='"'gasp'"'/ + +# Whack out recursive makes, they won't work. +/^[ ][ ]*srcroot=/,/^[ ][ ]*(cd /d + +# Work around quoting problems by using multiple echo commands. +/'#define GAS_VERSION "{VERSION}"'/c\ + Echo -n '#define GAS_VERSION "' >> "{o}"config.new\ + Echo -n "{VERSION}" >> "{o}"config.new\ + Echo -n '"' >> "{o}"config.new + +# Add a "stamps" target. +$a\ +stamps \\Option-f config-stamp\ + +/^install \\Option-f/,/^$/c\ +install \\Option-f all install-only\ +\ +install-only \\Option-f\ + NewFolderRecursive "{bindir}"\ + Duplicate -y :as.new "{bindir}"as\ + Duplicate -y :gasp.new "{bindir}"gasp\ + + +# Whack out config-rebuilding targets, they won't work. +/^Makefile \\Option-f/,/^$/d +/^config.status \\Option-f/,/^$/d + +/^"{o}"config.h \\Option-f/s/^/#/ |