Index: make/custom/Cygwin-posix.cfg
===================================================================
--- make/custom/Cygwin-posix.cfg	(revision 9e2e3673673ab941738ba4ec9bb0c4d28d08c009)
+++ make/custom/Cygwin-posix.cfg	(revision 6087a6925701db0d0da461fc38ec39bd73d02390)
@@ -17,11 +17,2 @@
 # optimize flag: typically -O2
 CFLAGS_OPTIMIZE_V = -O2 -g
-
-define make-exe
-	$(LINK.c) $(AM_CFLAGS) $(AM_LDFLAGS) -o $@ $(LINK_OBJS) $(LINK_LIBS)
-	$(NM) -g -n $@ > $(basename $@).num
-	$(SIZE) $@
-endef
-
-# *****************************************************************
-# Miscellaneous additions go here
Index: make/custom/FreeBSD-posix.cfg
===================================================================
--- make/custom/FreeBSD-posix.cfg	(revision 9e2e3673673ab941738ba4ec9bb0c4d28d08c009)
+++ make/custom/FreeBSD-posix.cfg	(revision 6087a6925701db0d0da461fc38ec39bd73d02390)
@@ -14,11 +14,2 @@
 # optimize flag: typically -O2
 CFLAGS_OPTIMIZE_V = -O2 -g
-
-define make-exe
-	$(LINK.c) $(AM_CFLAGS) $(AM_LDFLAGS) -o $@ $(LINK_OBJS) $(LINK_LIBS)
-	$(NM) -g -n $@ > $(basename $@).num
-	$(SIZE) $@
-endef
-
-# *****************************************************************
-# Miscellaneous additions go here
Index: make/custom/HPUX9-posix.cfg
===================================================================
--- make/custom/HPUX9-posix.cfg	(revision 9e2e3673673ab941738ba4ec9bb0c4d28d08c009)
+++ make/custom/HPUX9-posix.cfg	(revision 6087a6925701db0d0da461fc38ec39bd73d02390)
@@ -18,11 +18,2 @@
 # optimize flag: typically -O2
 CFLAGS_OPTIMIZE_V = -O2 -g
-
-define make-exe
-	$(LINK.c) $(AM_CFLAGS) $(AM_LDFLAGS) -o $@ $(LINK_OBJS) $(LINK_LIBS)
-	$(NM) -g -n $@ > $(basename $@).num
-	$(SIZE) $@
-endef
-
-# Miscellaneous additions go here
-
Index: make/custom/Linux-posix.cfg
===================================================================
--- make/custom/Linux-posix.cfg	(revision 9e2e3673673ab941738ba4ec9bb0c4d28d08c009)
+++ make/custom/Linux-posix.cfg	(revision 6087a6925701db0d0da461fc38ec39bd73d02390)
@@ -20,12 +20,3 @@
 
 # optimize flag: typically -O2
-CFLAGS_OPTIMIZE_V = -O2 -g
-
-define make-exe
-	$(LINK.c) $(AM_CFLAGS) $(AM_LDFLAGS) -o $@ $(LINK_OBJS) $(LINK_LIBS)
-	$(NM) -g -n $@ > $(basename $@).num
-	$(SIZE) $@
-endef
-
-# *****************************************************************
-# Miscellaneous additions go here
+CFLAGS_OPTIMIZE_V = -O0 -g
Index: make/custom/Solaris-posix.cfg
===================================================================
--- make/custom/Solaris-posix.cfg	(revision 9e2e3673673ab941738ba4ec9bb0c4d28d08c009)
+++ make/custom/Solaris-posix.cfg	(revision 6087a6925701db0d0da461fc38ec39bd73d02390)
@@ -21,12 +21,2 @@
 # optimize flag: typically -O2
 CFLAGS_OPTIMIZE_V = -O2 -g
-
-define make-exe
-	$(LINK.c) $(AM_CFLAGS) $(AM_LDFLAGS) -o $@ $(LINK_OBJS) $(LINK_LIBS)
-	$(NM) -g -n $@ > $(basename $@).num
-	$(SIZE) $@
-endef
-
-# *****************************************************************
-
-# Miscellaneous additions go here
Index: make/custom/av5282.cfg
===================================================================
--- make/custom/av5282.cfg	(revision 9e2e3673673ab941738ba4ec9bb0c4d28d08c009)
+++ make/custom/av5282.cfg	(revision 6087a6925701db0d0da461fc38ec39bd73d02390)
@@ -23,21 +23,7 @@
 endif
 
-
-# The following are definitions of make-exe which will work using ld as
-# is currently required.
-
-
-define make-exe
-	$(LINK.c) $(AM_CFLAGS) $(AM_LDFLAGS) -o $(basename $@).nxe \
-	    $(LINK_OBJS) $(LINK_LIBS) -Wl,-Tlinkcmds
-	$(OBJCOPY) -O binary --strip-all $(basename $@).nxe $@
-	$(SIZE) $(basename $@).nxe
+define bsp-post-link
+	$(default-bsp-post-link)
+	$(OBJCOPY) -O binary --strip-all \
+	    $(basename $@)$(EXEEXT) $(basename $@)$(DOWNEXT)
 endef
-define make-cxx-exe
-	$(LINK.cc) $(AM_CFLAGS) $(AM_LDFLAGS) -o $(basename $@).nxe \
-	    $(LINK_OBJS) $(LINK_LIBS) -Wl,-Tlinkcmds
-	$(OBJCOPY) -O binary --strip-all $(basename $@).nxe $@
-	$(SIZE) $(basename $@).nxe
-endef
-
-# Miscellaneous additions go here
Index: make/custom/bare.cfg
===================================================================
--- make/custom/bare.cfg	(revision 9e2e3673673ab941738ba4ec9bb0c4d28d08c009)
+++ make/custom/bare.cfg	(revision 6087a6925701db0d0da461fc38ec39bd73d02390)
@@ -29,12 +29,12 @@
 define make-exe
 	@echo "*** Cannot do a link with the bare bsp. ***"
-        @echo "#!/bin/sh" > $(basename $@).exe
-        @echo "echo \"Cannot do a link with the bare bsp.\"" >> $(basename $@).exe
+        @echo "#!/bin/sh" > $(basename $@)$(EXEEXT)
+        @echo "echo \"Cannot do a link with the bare bsp.\"" >> $(basename $@)$(EXEEXT)
 endef
 
 define make-cxx-exe
 	@echo "*** Cannot do a link with the bare bsp. ***"
-        @echo "#!/bin/sh" > $(basename $@).exe
-        @echo "echo \"Cannot do a link with the bare bsp.\"" >> $(basename $@).exe
+        @echo "#!/bin/sh" > $(basename $@)$(EXEEXT)
+        @echo "echo \"Cannot do a link with the bare bsp.\"" >> $(basename $@)$(EXEEXT)
 endef
 
Index: make/custom/c3xsim.cfg
===================================================================
--- make/custom/c3xsim.cfg	(revision 9e2e3673673ab941738ba4ec9bb0c4d28d08c009)
+++ make/custom/c3xsim.cfg	(revision 6087a6925701db0d0da461fc38ec39bd73d02390)
@@ -23,15 +23,2 @@
 # this target has no start file
 START_BASE=
-
-# The following are definitions of make-exe which will work using ld as
-# is currently required.
-
-define make-exe
-	$(LINK.c) $(AM_CFLAGS) $(AM_LDFLAGS) \
-	    $(LDLIBS) -o $@ \
-	    $(LINK_OBJS) $(LINK_LIBS)
-	$(NM) -g -n $@ > $(basename $@).num
-	$(SIZE) $@
-endef
-
-# Miscellaneous additions go here
Index: make/custom/c4xsim.cfg
===================================================================
--- make/custom/c4xsim.cfg	(revision 9e2e3673673ab941738ba4ec9bb0c4d28d08c009)
+++ make/custom/c4xsim.cfg	(revision 6087a6925701db0d0da461fc38ec39bd73d02390)
@@ -23,15 +23,2 @@
 # this target has no start file
 START_BASE=
-
-# The following are definitions of make-exe which will work using ld as
-# is currently required.
-
-define make-exe
-	$(LINK.c) $(AM_CFLAGS) $(AM_LDFLAGS) \
-	    $(LDLIBS) -o $@ \
-	    $(LINK_OBJS) $(LINK_LIBS)
-	$(NM) -g -n $@ > $(basename $@).num
-	$(SIZE) $@
-endef
-
-# Miscellaneous additions go here
Index: make/custom/csb336.cfg
===================================================================
--- make/custom/csb336.cfg	(revision 9e2e3673673ab941738ba4ec9bb0c4d28d08c009)
+++ make/custom/csb336.cfg	(revision 6087a6925701db0d0da461fc38ec39bd73d02390)
@@ -15,16 +15,6 @@
 #  This contains the compiler options necessary to select the CPU model
 #  and (hopefully) optimize for it. 
-#
 CPU_CFLAGS = -mcpu=arm920 -mstructure-size-boundary=8 
 
 # optimize flag: typically -O2
 CFLAGS_OPTIMIZE_V = -O2 -g
-
-define make-exe
-	$(LINK.c) $(AM_CFLAGS) $(AM_LDFLAGS) -o $@ \
-	    $(LINK_OBJS) $(LINK_LIBS)
-	$(NM) -g -n $(basename $@).exe > $(basename $@).num
-	$(SIZE) $(basename $@).exe
-endef
-
-# Miscellaneous additions go here
Index: make/custom/csb337.cfg
===================================================================
--- make/custom/csb337.cfg	(revision 9e2e3673673ab941738ba4ec9bb0c4d28d08c009)
+++ make/custom/csb337.cfg	(revision 6087a6925701db0d0da461fc38ec39bd73d02390)
@@ -15,17 +15,6 @@
 #  This contains the compiler options necessary to select the CPU model
 #  and (hopefully) optimize for it. 
-#
 CPU_CFLAGS = -mcpu=arm920 -mstructure-size-boundary=8 
 
 # optimize flag: typically -O2
 CFLAGS_OPTIMIZE_V = -O2 -g 
-
-
-define make-exe
-	$(LINK.c) $(AM_CFLAGS) $(AM_LDFLAGS) -o $@ \
-	    $(LINK_OBJS) $(LINK_LIBS)
-	$(NM) -g -n $(basename $@).exe > $(basename $@).num
-	$(SIZE) $(basename $@).exe
-endef
-
-# Miscellaneous additions go here
Index: make/custom/csb350.cfg
===================================================================
--- make/custom/csb350.cfg	(revision 9e2e3673673ab941738ba4ec9bb0c4d28d08c009)
+++ make/custom/csb350.cfg	(revision 6087a6925701db0d0da461fc38ec39bd73d02390)
@@ -21,16 +21,2 @@
 # optimize flag: typically -O2
 CFLAGS_OPTIMIZE_V = -O2 -g
-
-# The following are definitions of make-exe which will work using ld as
-# is currently required.
-
-define make-exe
-	$(LINK.c) $(AM_CFLAGS) $(AM_LDFLAGS) \
-	    $(LDLIBS) -o $@ \
-	    $(LINK_OBJS) $(LINK_LIBS)
-	$(NM) -g -n $@ > $(basename $@).num
-	$(SIZE) $@
-endef
-
-# Miscellaneous additions go here
-
Index: make/custom/csb360.cfg
===================================================================
--- make/custom/csb360.cfg	(revision 9e2e3673673ab941738ba4ec9bb0c4d28d08c009)
+++ make/custom/csb360.cfg	(revision 6087a6925701db0d0da461fc38ec39bd73d02390)
@@ -21,14 +21,2 @@
 # optimize flag: typically -O2
 CFLAGS_OPTIMIZE_V = -O2 -g -fomit-frame-pointer
-
-# The following are definitions of make-exe which will work using ld as
-# is currently required.
-
-define make-exe
-	$(LINK.c) $(AM_CFLAGS) $(AM_LDFLAGS) -o $@ \
-	    $(LINK_OBJS) $(LINK_LIBS)
-	$(NM) -g -n $@ > $(basename $@).num
-	$(SIZE) $@
-endef
-
-# Miscellaneous additions go here
Index: make/custom/default.cfg
===================================================================
--- make/custom/default.cfg	(revision 9e2e3673673ab941738ba4ec9bb0c4d28d08c009)
+++ make/custom/default.cfg	(revision 6087a6925701db0d0da461fc38ec39bd73d02390)
@@ -4,5 +4,5 @@
 #
 # Created by Jiri Gaisler, 16-03-97  (who is owed a debt of gratitude
-#   for converting RTEMS to autoconf.  Thanks. --joel)
+#   for the initial RTEMS autoconf support.  Thanks. --joel)
 #
 #  $Id$
@@ -21,2 +21,38 @@
 START_BASE=start
 
+## what to do about $(EXEEXT) --> $(EXEEXT)
+##    -o $(basename $@)$(EXEEXT)             OR
+##    -o $(basename $@)$(EXEEXT)                  OR
+
+EXEEXT=.exe
+DOWNEXT=.ralf
+
+define bsp-link-c
+	$(LINK.c) $(CPU_CFLAGS) $(AM_CFLAGS) $(AM_LDFLAGS) \
+	    -o $(basename $@)$(EXEEXT) $(LINK_OBJS) $(LINK_LIBS)
+endef
+
+define bsp-link-cxx
+	$(LINK.cc) $(CPU_CFLAGS) $(AM_CFLAGS) $(AM_LDFLAGS) \
+	    -o $(basename $@)$(EXEEXT) $(LINK_OBJS) $(LINK_LIBS)
+endef
+
+define default-bsp-post-link
+	$(NM) -g -n $@ > $(basename $@).num
+	$(SIZE) $@
+endef
+
+define bsp-post-link
+	$(default-bsp-post-link)
+	cp $(basename $@)$(EXEEXT) $(basename $@)$(DOWNEXT)
+endef
+
+define make-exe
+       $(bsp-link-c)
+       $(bsp-post-link)
+endef
+
+define make-cxx-exe
+       $(bsp-link-cxx)
+       $(bsp-post-link)
+endef
Index: make/custom/eZKit533.cfg
===================================================================
--- make/custom/eZKit533.cfg	(revision 9e2e3673673ab941738ba4ec9bb0c4d28d08c009)
+++ make/custom/eZKit533.cfg	(revision 6087a6925701db0d0da461fc38ec39bd73d02390)
@@ -21,15 +21,2 @@
 # gcc-4.2.0 segfaults on -OX > -O0
 CFLAGS_OPTIMIZE_V = -O0 -g
-
-# The following are definitions of make-exe which will work using ld as
-# is currently required.
-
-define make-exe
-	$(LINK.c) $(AM_CFLAGS) $(AM_LDFLAGS) \
-	    $(LDLIBS) -o $@ \
-	    $(LINK_OBJS) $(LINK_LIBS)
-	$(NM) -g -n $@ > $(basename $@).num
-	$(SIZE) $@
-endef
-
-# Miscellaneous additions go here
Index: make/custom/edb7312.cfg
===================================================================
--- make/custom/edb7312.cfg	(revision 9e2e3673673ab941738ba4ec9bb0c4d28d08c009)
+++ make/custom/edb7312.cfg	(revision 6087a6925701db0d0da461fc38ec39bd73d02390)
@@ -20,11 +20,2 @@
 # optimize flag: typically -O2
 CFLAGS_OPTIMIZE_V = -O2 -g
-
-define make-exe
-	$(LINK.c) $(AM_CFLAGS) $(AM_LDFLAGS) -o $@ \
-	    $(LINK_OBJS) $(LINK_LIBS)
-	$(NM) -g -n $(basename $@).exe > $(basename $@).num
-	$(SIZE) $(basename $@).exe
-endef
-
-# Miscellaneous additions go here
Index: make/custom/ep1a.cfg
===================================================================
--- make/custom/ep1a.cfg	(revision 9e2e3673673ab941738ba4ec9bb0c4d28d08c009)
+++ make/custom/ep1a.cfg	(revision 6087a6925701db0d0da461fc38ec39bd73d02390)
@@ -19,11 +19,2 @@
 # optimize flag: typically -O2
 CFLAGS_OPTIMIZE_V = -O2 -g
-
-define make-exe
-        $(LINK.c) $(AM_CFLAGS) $(AM_LDFLAGS) -o $(basename $@).exe \
-            $(LINK_OBJS) $(LINK_LIBS)
-        $(NM) -g -n $@ > $(basename $@).num
-        $(SIZE) $@
-endef
-
-# Miscellaneous additions go here
Index: make/custom/erc32.cfg
===================================================================
--- make/custom/erc32.cfg	(revision 9e2e3673673ab941738ba4ec9bb0c4d28d08c009)
+++ make/custom/erc32.cfg	(revision 6087a6925701db0d0da461fc38ec39bd73d02390)
@@ -20,13 +20,2 @@
 # optimize flag: typically -O2
 CFLAGS_OPTIMIZE_V = -O2 -g
-
-# The following are definitions of make-exe which will work using ld as
-# is currently required.
-
-define make-exe
-	$(LINK.c) $(AM_CFLAGS) $(AM_LDFLAGS) -o $(basename $@).exe \
-	    $(LINK_OBJS) $(LINK_LIBS) -Wl,-Map,$(basename $@).map
-	$(NM) -g -n $(basename $@).exe > $(basename $@).num
-	$(SIZE) $(basename $@).exe
-endef
-# Miscellaneous additions go here
Index: make/custom/gba.cfg
===================================================================
--- make/custom/gba.cfg	(revision 9e2e3673673ab941738ba4ec9bb0c4d28d08c009)
+++ make/custom/gba.cfg	(revision 6087a6925701db0d0da461fc38ec39bd73d02390)
@@ -22,27 +22,9 @@
 CFLAGS_OPTIMIZE_V = -O2 -g
 
-define make-exe
-	$(LINK.c) $(AM_CFLAGS) $(AM_LDFLAGS) \
-	    -Wl,-Map,$(basename $@).map -o $(basename $@).nxe \
-	    $(LINK_OBJS) $(LINK_LIBS)
-	$(OBJCOPY) -O binary  $(basename $@).nxe $@
+# Some GBA simulators want a .gba extension.
+define bsp-post-link
 	$(OBJCOPY) -O binary --remove-section=.comment \
 	    --remove-section=.note --strip-unneeded \
-	    $(basename $@).nxe $(basename $@).gba
-	$(NM) -g -n $(basename $@).nxe > $(basename $@).num
-	$(SIZE) $(basename $@).nxe
+	    $(basename $@)$(EXEEXT) $(basename $@)$(DOWNEXT)
+	$(default-bsp-post-link)
 endef
-
-define make-cxx-exe
-	$(LINK.cc) $(AM_CFLAGS) $(AM_CXXFLAGS) $(AM_LDFLAGS) \
-	    -Wl,-Map,$(basename $@).map -o $(basename $@).nxe \
-	    $(LINK_OBJS) $(LINK_LIBS)
-	$(OBJCOPY) -O binary  $(basename $@).nxe $@
-	$(OBJCOPY) -O binary --remove-section=.comment \
-	    --remove-section=.note --strip-unneeded  \
-	    $(basename $@).nxe $(basename $@).gba
-	$(NM) -g -n $(basename $@).nxe > $(basename $@).num
-	$(SIZE) $(basename $@).nxe
-endef
-
-# Miscellaneous additions go here
Index: make/custom/gen5200.cfg
===================================================================
--- make/custom/gen5200.cfg	(revision 9e2e3673673ab941738ba4ec9bb0c4d28d08c009)
+++ make/custom/gen5200.cfg	(revision 6087a6925701db0d0da461fc38ec39bd73d02390)
@@ -21,14 +21,3 @@
 CFLAGS_OPTIMIZE_V = -O2 -g -fno-keep-inline-functions
 
-# The following are definitions of make-exe which will work using ld as
-# is currently required.
-
-define make-exe
-	$(LINK.c) $(AM_CFLAGS) $(AM_LDFLAGS) \
-        -qnolinkcmds -T $(RTEMS_LINKCMDS) -o $(basename $@).exe \
-	    $(LINK_OBJS) $(LINK_LIBS)
-	$(NM) -g -n $(basename $@).exe > $(basename $@).num
-	$(SIZE) $(basename $@).exe
-endef
-
-# Miscellaneous additions go here
+AM_LDFLAGS += -qnolinkcmds -T $(RTEMS_LINKCMDS) 
Index: make/custom/gen68302.cfg
===================================================================
--- make/custom/gen68302.cfg	(revision 9e2e3673673ab941738ba4ec9bb0c4d28d08c009)
+++ make/custom/gen68302.cfg	(revision 6087a6925701db0d0da461fc38ec39bd73d02390)
@@ -20,13 +20,2 @@
 # optimize flag: typically -O2
 CFLAGS_OPTIMIZE_V = -O2 -g -fomit-frame-pointer
-
-# The following are definitions of make-exe which will work using ld as
-# is currently required.
-
-define make-exe
-	$(LINK.c) $(AM_CFLAGS) $(AM_LDFLAGS) -o $@ \
-	    $(LINK_OBJS) $(LINK_LIBS)
-	$(NM) -g -n $@ > $(basename $@).num
-	$(SIZE) $@
-endef
-# Miscellaneous additions go here
Index: make/custom/gen68340.cfg
===================================================================
--- make/custom/gen68340.cfg	(revision 9e2e3673673ab941738ba4ec9bb0c4d28d08c009)
+++ make/custom/gen68340.cfg	(revision 6087a6925701db0d0da461fc38ec39bd73d02390)
@@ -20,14 +20,2 @@
 # optimize flag: typically -O2
 CFLAGS_OPTIMIZE_V = -O2 -g -fomit-frame-pointer
-
-# The following are definitions of make-exe which will work using ld as
-# is currently required.
-
-define make-exe
-	$(LINK.c) $(AM_CFLAGS) $(AM_LDFLAGS) \
-	    -o $@ $(LINK_OBJS) $(LINK_LIBS)
-	$(NM) -g -n $@ > $(basename $@).num
-	$(SIZE) $@
-endef
-
-# Miscellaneous additions go here
Index: make/custom/gen68360.cfg
===================================================================
--- make/custom/gen68360.cfg	(revision 9e2e3673673ab941738ba4ec9bb0c4d28d08c009)
+++ make/custom/gen68360.cfg	(revision 6087a6925701db0d0da461fc38ec39bd73d02390)
@@ -28,14 +28,2 @@
 # optimize flag: typically -O2
 CFLAGS_OPTIMIZE_V = -O2 -g -fomit-frame-pointer
-
-# The following are definitions of make-exe which will work using ld as
-# is currently required.
-
-define make-exe
-	$(LINK.c) $(AM_CFLAGS) $(AM_LDFLAGS) -o $@ \
-	    $(LINK_OBJS) $(LINK_LIBS)
-	$(NM) -g -n $@ > $(basename $@).num
-	$(SIZE) $@
-endef
-
-# Miscellaneous additions go here
Index: make/custom/gen68360_040.cfg
===================================================================
--- make/custom/gen68360_040.cfg	(revision 9e2e3673673ab941738ba4ec9bb0c4d28d08c009)
+++ make/custom/gen68360_040.cfg	(revision 6087a6925701db0d0da461fc38ec39bd73d02390)
@@ -13,3 +13,2 @@
 
 include $(RTEMS_ROOT)/make/custom/gen68360.cfg
-
Index: make/custom/gen83xx.cfg
===================================================================
--- make/custom/gen83xx.cfg	(revision 9e2e3673673ab941738ba4ec9bb0c4d28d08c009)
+++ make/custom/gen83xx.cfg	(revision 6087a6925701db0d0da461fc38ec39bd73d02390)
@@ -26,22 +26,3 @@
 CFLAGS_OPTIMIZE_V = -O2 -g -fno-keep-inline-functions
 
-# The following are definitions of make-exe which will work using ld as
-# is currently required.
-
-define make-exe
-	$(LINK.c) $(AM_CFLAGS) $(AM_LDFLAGS) \
-        -qnolinkcmds -T $(RTEMS_LINKCMDS) -o $(basename $@).exe \
-	    $(LINK_OBJS) $(LINK_LIBS)
-	$(NM) -g -n $(basename $@).exe > $(basename $@).num
-	$(SIZE) $(basename $@).exe
-endef
-
-define make-cxx-exe
-	$(LINK.cc) $(AM_CFLAGS) $(AM_LDFLAGS) \
-        -qnolinkcmds -T $(RTEMS_LINKCMDS) -o $(basename $@).exe \
-	    $(LINK_OBJS) $(LINK_LIBS)
-	$(NM) -g -n $(basename $@).exe > $(basename $@).num
-	$(SIZE) $(basename $@).exe
-endef
-
-# Miscellaneous additions go here
+AM_LDFLAGS+= -qnolinkcmds -T $(RTEMS_LINKCMDS)
Index: make/custom/genmongoosev.cfg
===================================================================
--- make/custom/genmongoosev.cfg	(revision 9e2e3673673ab941738ba4ec9bb0c4d28d08c009)
+++ make/custom/genmongoosev.cfg	(revision 6087a6925701db0d0da461fc38ec39bd73d02390)
@@ -20,16 +20,2 @@
 # optimize flag: typically -O2
 CFLAGS_OPTIMIZE_V = -O2 -g
-
-# The following are definitions of make-exe which will work using ld as
-# is currently required.
-
-define make-exe
-	$(LINK.c) $(AM_CFLAGS) $(AM_LDFLAGS) \
-	    $(LDLIBS) -o $@ \
-	    $(LINK_OBJS) $(LINK_LIBS)
-	$(NM) -g -n $@ > $(basename $@).num
-	$(SIZE) $@
-endef
-
-# Miscellaneous additions go here
-
Index: make/custom/gensh1.cfg
===================================================================
--- make/custom/gensh1.cfg	(revision 9e2e3673673ab941738ba4ec9bb0c4d28d08c009)
+++ make/custom/gensh1.cfg	(revision 6087a6925701db0d0da461fc38ec39bd73d02390)
@@ -25,16 +25,2 @@
 # optimize flag: typically -O2
 CFLAGS_OPTIMIZE_V = -O2 -g 
-
-# The following are definitions of make-exe which will work using ld as
-# is currently required.
-
-define make-exe
-	$(LINK.c) $(AM_CFLAGS) $(AM_LDFLAGS) \
-	    -Wl,-Map,$(basename $@).map \
-	    $(LDLIBS) -o $@ \
-	    $(LINK_OBJS) $(LINK_LIBS)
-	$(NM) -g -n $@ > $(basename $@).num
-	$(SIZE) $@
-endef
-
-# Miscellaneous additions go here
Index: make/custom/gensh2.cfg
===================================================================
--- make/custom/gensh2.cfg	(revision 9e2e3673673ab941738ba4ec9bb0c4d28d08c009)
+++ make/custom/gensh2.cfg	(revision 6087a6925701db0d0da461fc38ec39bd73d02390)
@@ -25,15 +25,2 @@
 # optimize flag: typically -O2
 CFLAGS_OPTIMIZE_V = -O2 -g 
-
-# The following are definitions of make-exe which will work using ld as
-# is currently required.
-
-define make-exe
-	$(LINK.c) $(AM_CFLAGS) $(AM_LDFLAGS) -Wl,-Map,$(basename $@).map \
-	    $(LDLIBS) -o $@ \
-	    $(LINK_OBJS) $(LINK_LIBS)
-	$(NM) -g -n $@ > $(basename $@).num
-	$(SIZE) $@
-endef
-
-# Miscellaneous additions go here
Index: make/custom/gensh4.cfg
===================================================================
--- make/custom/gensh4.cfg	(revision 9e2e3673673ab941738ba4ec9bb0c4d28d08c009)
+++ make/custom/gensh4.cfg	(revision 6087a6925701db0d0da461fc38ec39bd73d02390)
@@ -32,15 +32,2 @@
 # optimize flag: typically -O2
 CFLAGS_OPTIMIZE_V = -O2 -g 
-
-# The following are definitions of make-exe which will work using ld as
-# is currently required.
-
-define make-exe
-	$(LINK.c) $(AM_CFLAGS) $(AM_LDFLAGS) -Wl,-Map,$(basename $@).map \
-	    $(LDLIBS) -o $@ \
-	    $(LINK_OBJS) $(LINK_LIBS)
-	$(NM) -g -n $@ > $(basename $@).num
-	$(SIZE) $@
-endef
-
-# Miscellaneous additions go here
Index: make/custom/gp32.cfg
===================================================================
--- make/custom/gp32.cfg	(revision 9e2e3673673ab941738ba4ec9bb0c4d28d08c009)
+++ make/custom/gp32.cfg	(revision 6087a6925701db0d0da461fc38ec39bd73d02390)
@@ -21,19 +21,6 @@
 CFLAGS_OPTIMIZE_V = -O2 -g
 
-define make-exe
-	$(LINK.c) $(AM_CFLAGS) $(AM_LDFLAGS) -o $@ \
-	    $(LINK_OBJS) $(LINK_LIBS)
-	$(OBJCOPY) -O binary $(basename $@).exe $(basename $@).nxe
-	$(NM) -g -n $(basename $@).exe > $(basename $@).num
-	$(SIZE) $(basename $@).exe
+define bsp-post-link
+	$(OBJCOPY) -O binary $(basename $@)$(EXEEXT) $(basename $@)$(DOWNEXT)
+	$(default-bsp-post-link)
 endef
-
-define make-cxx-exe
-	$(LINK.cc) $(AM_CFLAGS) $(AM_CXXFLAGS) $(AM_LDFLAGS) -o $@ \
-	    $(LINK_OBJS) $(LINK_LIBS)
-	$(OBJCOPY) -O binary $(basename $@).exe $(basename $@).nxe
-	$(NM) -g -n $(basename $@).exe > $(basename $@).num
-	$(SIZE) $(basename $@).exe
-endef
-
-# Miscellaneous additions go here
Index: make/custom/h8sim.cfg
===================================================================
--- make/custom/h8sim.cfg	(revision 9e2e3673673ab941738ba4ec9bb0c4d28d08c009)
+++ make/custom/h8sim.cfg	(revision 6087a6925701db0d0da461fc38ec39bd73d02390)
@@ -20,16 +20,2 @@
 # optimize flag: typically -O2
 CFLAGS_OPTIMIZE_V = -O2 -g
-
-# The following are definitions of make-exe which will work using ld as
-# is currently required.
-
-define make-exe
-	$(LINK.c) $(AM_CFLAGS) $(AM_LDFLAGS) \
-	    $(LDLIBS) -o $@ \
-	    $(LINK_OBJS) $(LINK_LIBS)
-	$(NM) -g -n $@ > $(basename $@).num
-	$(SIZE) $@
-endef
-
-# Miscellaneous additions go here
-
Index: make/custom/hurricane.cfg
===================================================================
--- make/custom/hurricane.cfg	(revision 9e2e3673673ab941738ba4ec9bb0c4d28d08c009)
+++ make/custom/hurricane.cfg	(revision 6087a6925701db0d0da461fc38ec39bd73d02390)
@@ -19,17 +19,8 @@
 CFLAGS_OPTIMIZE_V = -O2 -g -fomit-frame-pointer
 
-# The following are definitions of make-exe which will work using ld as
-# is currently required.
-
-define make-exe
-	$(LINK.c) $(AM_CFLAGS) $(AM_LDFLAGS) \
-	    -o $@ -Xlinker -Map -Xlinker $(basename $@).map $(LINK_OBJS) $(LINK_LIBS)
+define bsp-post-link
 	$(OBJCOPY) -O srec $@ $(basename $@).srec1
-        $(PACKHEX) < $(basename $@).srec1 > $(basename $@).srec
+        $(PACKHEX) < $(basename $@).srec1 > $(basename $@)$(DOWNEXT)
 	$(RM) $(basename $@).srec1
-	$(NM) -g -n $@ > $(basename $@).num
-	$(SIZE) $@
+	$(default-bsp-post-link)
 endef
-
-# Miscellaneous additions go here
-
Index: make/custom/i386ex.cfg
===================================================================
--- make/custom/i386ex.cfg	(revision 9e2e3673673ab941738ba4ec9bb0c4d28d08c009)
+++ make/custom/i386ex.cfg	(revision 6087a6925701db0d0da461fc38ec39bd73d02390)
@@ -21,19 +21,8 @@
 CFLAGS_OPTIMIZE_V = -O2 -g
 
-#  Something like this should produce a map file but this does not work.
-
-# The following are definitions of make-exe which will work using ld as
-# is currently required.
-
-define make-exe
-	$(LINK.c) $(AM_CFLAGS) $(AM_LDFLAGS) -o $(basename $@).nxe \
-	    $(LINK_OBJS) $(LINK_LIBS)
-	$(OBJCOPY) -O srec $(basename $@).nxe $(basename $@).srec
+define bsp-post-link
+	$(OBJCOPY) -O srec $(basename $@)$(EXEEXT) $(basename $@).srec
 	sed -e 's/.$$//' -e '/^S0/d' $(basename $@).srec | \
-	          $(PACKHEX) > $(basename $@).exe
-	$(NM) -g -n $(basename $@).nxe > $(basename $@).num
-	$(SIZE) $(basename $@).nxe
+	          $(PACKHEX) > $(basename $@)$(DOWNEXT)
+	$(default-bsp-post-link)
 endef
-
-# Miscellaneous additions go here
-
Index: make/custom/idp.cfg
===================================================================
--- make/custom/idp.cfg	(revision 9e2e3673673ab941738ba4ec9bb0c4d28d08c009)
+++ make/custom/idp.cfg	(revision 6087a6925701db0d0da461fc38ec39bd73d02390)
@@ -21,16 +21,9 @@
 CFLAGS_OPTIMIZE_V = -O2 -g -fomit-frame-pointer
 
-# The following are definitions of make-exe which will work using ld as
-# is currently required.
-
-define make-exe
-	$(LINK.c) $(AM_CFLAGS) $(AM_LDFLAGS) -o $(basename $@).nxe \
-	    $(LINK_OBJS) $(LINK_LIBS)
-	$(OBJCOPY) -O srec $(basename $@).nxe $(basename $@).srec
+define bsp-post-link
+	$(OBJCOPY) -O srec $(basename $@)$(EXEEXT) $(basename $@).srec
 	sed -e 's/.$$//' -e '/^S0/d' $(basename $@).srec | \
-	    $(PACKHEX) > $(basename $@).exe
-	$(NM) -g -n $(basename $@).nxe > $(basename $@).num
-	$(SIZE) $(basename $@).nxe
+	    $(PACKHEX) > $(basename $@)$(DOWNEXT)
+	rm -f  $(basename $@).srec
+	$(default-bsp-post-link)
 endef
-
-# Miscellaneous additions go here
Index: make/custom/jmr3904.cfg
===================================================================
--- make/custom/jmr3904.cfg	(revision 9e2e3673673ab941738ba4ec9bb0c4d28d08c009)
+++ make/custom/jmr3904.cfg	(revision 6087a6925701db0d0da461fc38ec39bd73d02390)
@@ -23,16 +23,2 @@
 # optimize flag: typically -O2
 CFLAGS_OPTIMIZE_V = -O2 -g
-
-# The following are definitions of make-exe which will work using ld as
-# is currently required.
-
-define make-exe
-	$(LINK.c) $(AM_CFLAGS) -G0 $(AM_LDFLAGS) \
-	    $(LDLIBS) -o $@ \
-	    $(LINK_OBJS) $(LINK_LIBS)
-	$(NM) -g -n $@ > $(basename $@).num
-	$(SIZE) $@
-endef
-
-# Miscellaneous additions go here
-
Index: make/custom/leon2.cfg
===================================================================
--- make/custom/leon2.cfg	(revision 9e2e3673673ab941738ba4ec9bb0c4d28d08c009)
+++ make/custom/leon2.cfg	(revision 6087a6925701db0d0da461fc38ec39bd73d02390)
@@ -18,13 +18,2 @@
 # optimize flag: typically -O2
 CFLAGS_OPTIMIZE_V = -O2 -g
-
-# The following are definitions of make-exe which will work using ld as
-# is currently required.
-
-define make-exe
-	$(LINK.c) $(AM_CFLAGS) $(AM_LDFLAGS) -o $(basename $@).exe \
-	    $(LINK_OBJS) $(LINK_LIBS)
-	$(NM) -g -n $(basename $@).exe > $(basename $@).num
-	$(SIZE) $(basename $@).exe
-endef
-# Miscellaneous additions go here
Index: make/custom/leon3.cfg
===================================================================
--- make/custom/leon3.cfg	(revision 9e2e3673673ab941738ba4ec9bb0c4d28d08c009)
+++ make/custom/leon3.cfg	(revision 6087a6925701db0d0da461fc38ec39bd73d02390)
@@ -20,14 +20,2 @@
 # optimize flag: typically -O2
 CFLAGS_OPTIMIZE_V = -O2 -g
-
-# The following are definitions of make-exe which will work using ld as
-# is currently required.
-
-define make-exe
-	$(LINK.c) $(AM_CFLAGS) $(AM_LDFLAGS) -o $(basename $@).exe \
-           $(LINK_OBJS) $(LINK_LIBS)
-	$(NM) -g -n $(basename $@).exe > $(basename $@).num
-	$(SIZE) $(basename $@).exe
-endef
-# Miscellaneous additions go here
-
Index: make/custom/mbx8xx.cfg
===================================================================
--- make/custom/mbx8xx.cfg	(revision 9e2e3673673ab941738ba4ec9bb0c4d28d08c009)
+++ make/custom/mbx8xx.cfg	(revision 6087a6925701db0d0da461fc38ec39bd73d02390)
@@ -46,20 +46,15 @@
 CPU_CFLAGS = -mcpu=$(8XX_CPU_TYPE) -Dmpc$(8XX_CPU_TYPE) -D$(RTEMS_MBX_MODEL)
 
-
 # optimize flag: typically -O2
 CFLAGS_OPTIMIZE_V = -O2 -g -fno-keep-inline-functions
-
-define make-exe
-	$(LINK.c) $(AM_CFLAGS) $(AM_LDFLAGS) $(MBX8xx_LDFLAGS) \
-	    -o $(basename $@)_sym.exe $(LINK_OBJS) $(LINK_LIBS)
-	$(NM) -g -n $(basename $@)_sym.exe > $(basename $@).nm
-	cp $(basename $@)_sym.exe $(basename $@).exe 
-	$(STRIP) $(basename $@).exe
-	$(SIZE) $(basename $@)_sym.exe
-endef
-
-# Miscellaneous additions go here
 
 # Override default start file
 START_BASE=
 
+AM_LDFLAGS += $(MBX8xx_LDFLAGS)
+
+define bsp-post-link
+	cp $(basename $@)$(EXEEXT) $(basename $@)$(DOWNEXT) 
+	$(STRIP) $(basename $@)$(DOWNEXT)
+	$(default-bsp-post-link)
+endef
Index: make/custom/mcf5206elite.cfg
===================================================================
--- make/custom/mcf5206elite.cfg	(revision 9e2e3673673ab941738ba4ec9bb0c4d28d08c009)
+++ make/custom/mcf5206elite.cfg	(revision 6087a6925701db0d0da461fc38ec39bd73d02390)
@@ -21,14 +21,2 @@
 # optimize flag: typically -O2
 CFLAGS_OPTIMIZE_V = -O2 -g -fomit-frame-pointer
-
-# The following are definitions of make-exe which will work using ld as
-# is currently required.
-
-define make-exe
-	$(LINK.c) $(AM_CFLAGS) $(AM_LDFLAGS) -o $@ \
-	    $(LINK_OBJS) $(LINK_LIBS)
-	$(NM) -g -n $@ > $(basename $@).num
-	$(SIZE) $@
-endef
-
-# Miscellaneous additions go here
Index: make/custom/mcf5235.cfg
===================================================================
--- make/custom/mcf5235.cfg	(revision 9e2e3673673ab941738ba4ec9bb0c4d28d08c009)
+++ make/custom/mcf5235.cfg	(revision 6087a6925701db0d0da461fc38ec39bd73d02390)
@@ -21,8 +21,6 @@
 CPU_CFLAGS = -m528x
 
-
 # optimize flag: typically -O2
 CFLAGS_OPTIMIZE_V = -O2 -g -fomit-frame-pointer
-
 
 ifndef MTARGET
@@ -30,31 +28,9 @@
 endif
 
-# The following are definitions of make-exe which will work using ld as
+# This defines the operations performed on the linked executable.
 # is currently required.
-
-define bsp-link-c
-	$(LINK.c) $(AM_CFLAGS) $(AM_LDFLAGS) \
-	    -o $(basename $@)$(EXEEXT) $(LINK_OBJS) $(LINK_LIBS)
-endef
-
-define bsp-link-cxx
-	$(LINK.cc) $(AM_CFLAGS) $(AM_LDFLAGS) \
-	    -o $(basename $@)$(EXEEXT) $(LINK_OBJS) $(LINK_LIBS)
-endef
-
 define bsp-post-link
-	$(OBJCOPY) -O binary --strip-all $(basename $@)$(EXEEXT) $(basename $@).nxe
+	$(OBJCOPY) -O binary --strip-all \
+	    $(basename $@)$(EXEEXT) $(basename $@)$(DOWNEXT)
 	$(SIZE) $(basename $@)$(EXEEXT)
 endef
-
-define make-exe
-       $(bsp-link-c)
-       $(bsp-post-link)
-endef
-
-define make-cxx-exe
-       $(bsp-link-cxx)
-       $(bsp-post-link)
-endef
-
-# Miscellaneous additions go here
Index: make/custom/mcp750.cfg
===================================================================
--- make/custom/mcp750.cfg	(revision 9e2e3673673ab941738ba4ec9bb0c4d28d08c009)
+++ make/custom/mcp750.cfg	(revision 6087a6925701db0d0da461fc38ec39bd73d02390)
@@ -21,16 +21,13 @@
 CFLAGS_OPTIMIZE_V = -O2 -g -mmultiple -mstring -mstrict-align
 
-define make-exe
-  	$(LINK.c) $(AM_CFLAGS) $(AM_LDFLAGS) \
-	   -o $(basename $@).nxe $(LINK_OBJS) $(LINK_LIBS)
- 	$(NM) -g -n $(basename $@).nxe > $(basename $@).num
- 	$(SIZE) $(basename $@).nxe
- 	$(OBJCOPY) -O binary -R .comment -S $(basename $@).nxe rtems
+define bsp-post-link
+	$(default-bsp-post-link)
+ 	$(OBJCOPY) -O binary -R .comment -S $(basename $@)$(EXEEXT) rtems
  	gzip -vf9 rtems
- 	$(LD) -o $@ $(PROJECT_RELEASE)/lib/bootloader.o --just-symbols=$(basename $@).nxe \
- 	-b binary rtems.gz -T $(PROJECT_RELEASE)/lib/ppcboot.lds \
- 	-Map $(basename $@).map && chmod 755 $@
+ 	$(LD) -o $(basename $@)$(DOWNEXT) \
+	    $ $(PROJECT_RELEASE)/lib/bootloader.o \
+	    --just-symbols=$(basename $@)$(EXEEXT) \
+ 	    -b binary rtems.gz -T $(PROJECT_RELEASE)/lib/ppcboot.lds \
+ 	    -Map $(basename $@).map && chmod 755 $@
  	rm -f rtems.gz
 endef
-
-# Miscellaneous additions go here
Index: make/custom/mpc8260ads.cfg
===================================================================
--- make/custom/mpc8260ads.cfg	(revision 9e2e3673673ab941738ba4ec9bb0c4d28d08c009)
+++ make/custom/mpc8260ads.cfg	(revision 6087a6925701db0d0da461fc38ec39bd73d02390)
@@ -22,14 +22,2 @@
 # optimize flag: typically -O2
 CFLAGS_OPTIMIZE_V = -O2 -g -fno-keep-inline-functions
-
-# The following are definitions of make-exe which will work using ld as
-# is currently required.
-
-define make-exe
-	$(LINK.c) $(AM_CFLAGS) $(AM_LDFLAGS) -o $(basename $@).exe \
-	    $(LINK_OBJS) $(LINK_LIBS)
-	$(NM) -g -n $@ > $(basename $@).num
-	$(SIZE) $@
-endef
-
-# Miscellaneous additions go here
Index: make/custom/mrm332.cfg
===================================================================
--- make/custom/mrm332.cfg	(revision 9e2e3673673ab941738ba4ec9bb0c4d28d08c009)
+++ make/custom/mrm332.cfg	(revision 6087a6925701db0d0da461fc38ec39bd73d02390)
@@ -20,7 +20,4 @@
 CFLAGS_OPTIMIZE_V = -O2 -g -fomit-frame-pointer
 
-# The following are definitions of make-exe which will work using ld as
-# is currently required.
-
 ifeq ($(MRM_IN_ROM),yes)
 # Build a rommable image - move the .data section after the .text section
@@ -28,22 +25,4 @@
 CPU_CFLAGS += -qnolinkcmds -T $(exec_prefix)/mrm332/lib/linkcmds_ROM
 endif
-
-#  This is a good way to get debug information.  The output file is large
-#  though and greatly slows the build process so only do this if needed.
-#	$(OBJDUMP) -dxC $(basename $@).nxe > $(basename $@).dump
-#
-#  chrisj: This is questionable. Why not keep unstipped ELF files
-#          about the use objdump and nm to get at the debug
-#          information rather than subject everyone to this.
-#
-
-define bsp-link-c
-	$(LINK.c) $(AM_CFLAGS) $(AM_LDFLAGS) -o $(basename $@)$(EXEEXT) \
-	    $(LINK_OBJS) $(LINK_LIBS)
-endef
-define bsp-link-cxx
-	$(LINK.cc) $(AM_CFLAGS) $(AM_LDFLAGS) -o $(basename $@)$(EXEEXT) \
-	    $(LINK_OBJS) $(LINK_LIBS)
-endef
 
 ifeq ($(MRM_IN_ROM),yes)
@@ -61,29 +40,16 @@
 	$(OBJCOPY) -O srec $(basename $@)$(EXEEXT) $(basename $@).srec
 	sed -e 's/.$$//' -e '/^S0/d' $(basename $@).srec | \
-	    $(PACKHEX) > $(basename $@).nxe
+	    $(PACKHEX) > $(basename $@)$(DOWNEXT)
 	$(NM) -g -n $(basename $@).pxe > $(basename $@).pnum
-	$(NM) -g -n $(basename $@).nxe > $(basename $@).num
-	$(SIZE) $(basename $@)$(EXEEXT)
+	rm -f $(basename $@).srec $(basename $@).srec
+	$(default-bsp-post-link)
 endef
 else
 define bsp-post-link
 	$(OBJCOPY) -O srec $(basename $@)$(EXEEXT) $(basename $@).srec
-#	m68k-rtems-objdump -dxC $(basename $@).nxe > $(basename $@).dump
 	sed -e 's/.$$//' -e '/^S0/d' $(basename $@).srec | \
-	    $(PACKHEX) > $(basename $@).nxe
-	$(NM) -g -n $(basename $@)$(EXEEXT) > $(basename $@).num
-	$(SIZE) $(basename $@)$(EXEEXT)
+	    $(PACKHEX) > $(basename $@)$(DOWNEXT)
+	rm -f $(basename $@).srec
+	$(default-bsp-post-link)
 endef
 endif
-
-define make-exe
-       $(bsp-link-c)
-       $(bsp-post-link)
-endef
-
-define make-cxx-exe
-       $(bsp-link-cxx)
-       $(bsp-post-link)
-endef
-
-# Miscellaneous additions go here
Index: make/custom/mtx603e.cfg
===================================================================
--- make/custom/mtx603e.cfg	(revision 9e2e3673673ab941738ba4ec9bb0c4d28d08c009)
+++ make/custom/mtx603e.cfg	(revision 6087a6925701db0d0da461fc38ec39bd73d02390)
@@ -20,14 +20,13 @@
 CFLAGS_OPTIMIZE_V = -O2 -g -mmultiple -mstring -mstrict-align
 
-define make-exe
-  	$(LINK.c) $(AM_CFLAGS) $(AM_LDFLAGS) \
-	   -o $(basename $@).nxe $(LINK_OBJS) $(LINK_LIBS)
- 	$(NM) -g -n $(basename $@).nxe > $(basename $@).num
- 	$(SIZE) $(basename $@).nxe
- 	$(OBJCOPY) -O binary -R .comment -S $(basename $@).nxe rtems
+define bsp-post-link
+	$(default-bsp-post-link)
+ 	$(OBJCOPY) -O binary -R .comment -S $(basename $@)$(EXEEXT) rtems
  	gzip -vf9 rtems
- 	$(LD) -o $@ $(PROJECT_RELEASE)/lib/bootloader.o --just-symbols=$(basename $@).nxe \
- 	-b binary rtems.gz -T $(PROJECT_RELEASE)/lib/ppcboot.lds \
- 	-Map $(basename $@).map && chmod 755 $@
+ 	$(LD) -o $(basename $@)$(DOWNEXT) \
+	   $(PROJECT_RELEASE)/lib/bootloader.o \
+	    --just-symbols=$(basename $@)$(EXEEXT) \
+ 	    -b binary rtems.gz -T $(PROJECT_RELEASE)/lib/ppcboot.lds \
+ 	    -Map $(basename $@).map && chmod 755 $@
  	rm -f rtems.gz
 endef
Index: make/custom/mvme136.cfg
===================================================================
--- make/custom/mvme136.cfg	(revision 9e2e3673673ab941738ba4ec9bb0c4d28d08c009)
+++ make/custom/mvme136.cfg	(revision 6087a6925701db0d0da461fc38ec39bd73d02390)
@@ -22,16 +22,10 @@
 CFLAGS_OPTIMIZE_V = -Os -g -fomit-frame-pointer -DNDEBUG
 
-# The following are definitions of make-exe which will work using ld as
-# is currently required.
+define bsp-post-link
+	$(OBJCOPY) -O srec $(basename $@)$(EXEEXT) $(basename $@).srec
+	sed -e 's/.$$//' -e '/^S0/d' $(basename $@).srec | \
+	    $(PACKHEX) > $(basename $@)$(DOWNEXT)
+	rm -f $(basename $@).srec
+	$(default-bsp-post-link)
+endef
 
-define make-exe
-	$(LINK.c) $(AM_CFLAGS) $(AM_LDFLAGS) -o $(basename $@).nxe \
-	    $(LINK_OBJS) $(LINK_LIBS)
-	$(OBJCOPY) -O srec $(basename $@).nxe $(basename $@).srec
-	sed -e 's/.$$//' -e '/^S0/d' $(basename $@).srec | \
-	    $(PACKHEX) > $(basename $@).exe
-	$(NM) -g -n $(basename $@).nxe > $(basename $@).num
-	$(SIZE) $(basename $@).nxe
-endef
-# Miscellaneous additions go here
-
Index: make/custom/mvme147.cfg
===================================================================
--- make/custom/mvme147.cfg	(revision 9e2e3673673ab941738ba4ec9bb0c4d28d08c009)
+++ make/custom/mvme147.cfg	(revision 6087a6925701db0d0da461fc38ec39bd73d02390)
@@ -20,16 +20,9 @@
 CFLAGS_OPTIMIZE_V = -O2 -g -fomit-frame-pointer
 
-# The following are definitions of make-exe which will work using ld as
-# is currently required.
-
-define make-exe
-	$(LINK.c) $(AM_CFLAGS) $(AM_LDFLAGS) -o $(basename $@).nxe \
-	    $(LINK_OBJS) $(LINK_LIBS)
-	$(OBJCOPY) -O srec $(basename $@).nxe $(basename $@).srec
+define bsp-post-link
+	$(OBJCOPY) -O srec $(basename $@)$(EXEEXT) $(basename $@).srec
 	sed -e 's/.$$//' -e '/^S0/d' $(basename $@).srec | \
-	    $(PACKHEX) > $(basename $@).exe
-	$(NM) -g -n $(basename $@).nxe > $(basename $@).num
-	$(SIZE) $(basename $@).nxe
+	    $(PACKHEX) > $(basename $@)$(DOWNEXT)
+	rm -f $(basename $@).srec
+	$(default-bsp-post-link)
 endef
-# Miscellaneous additions go here
-
Index: make/custom/mvme162.cfg
===================================================================
--- make/custom/mvme162.cfg	(revision 9e2e3673673ab941738ba4ec9bb0c4d28d08c009)
+++ make/custom/mvme162.cfg	(revision 6087a6925701db0d0da461fc38ec39bd73d02390)
@@ -24,19 +24,8 @@
 CFLAGS_OPTIMIZE_V = -O2 -g -fomit-frame-pointer
 
-# The following are definitions of make-exe which will work using ld as
-# is currently required.
-
-define make-exe
-	$(LINK.c) $(AM_CFLAGS) $(AM_LDFLAGS) \
-	    -o $(basename $@).nxe $(LINK_OBJS) $(LINK_LIBS)
-	#$(OBJCOPY) -O srec $(basename $@).nxe $(basename $@).srec
-	#sed -e 's/.$$//' -e '/^S0/d' $(basename $@).srec | \
-	#    $(PACKHEX) > $(basename $@).exe
-	$(OBJCOPY) -O binary $(basename $@).nxe $(basename $@).exe
-	$(NM) -g -n $(basename $@).nxe > $(basename $@).num
-	$(SIZE) $(basename $@).nxe
+define bsp-post-link
+	$(default-bsp-post-link)
+	$(OBJCOPY) -O binary $(basename $@)$(EXEEXT) $(basename $@)$(DOWNEXT)
 endef
-
-# Miscellaneous additions go here
 
 # BSP-specific tools
Index: make/custom/mvme162lx.cfg
===================================================================
--- make/custom/mvme162lx.cfg	(revision 9e2e3673673ab941738ba4ec9bb0c4d28d08c009)
+++ make/custom/mvme162lx.cfg	(revision 6087a6925701db0d0da461fc38ec39bd73d02390)
@@ -30,19 +30,8 @@
 CFLAGS_OPTIMIZE_V = -O2 -g -fomit-frame-pointer
 
-# The following are definitions of make-exe which will work using ld as
-# is currently required.
-
-define make-exe
-	$(LINK.c) $(AM_CFLAGS) $(AM_LDFLAGS) \
-	    -o $(basename $@).nxe $(LINK_OBJS) $(LINK_LIBS)
-	#$(OBJCOPY) -O srec $(basename $@).nxe $(basename $@).srec
-	#sed -e 's/.$$//' -e '/^S0/d' $(basename $@).srec | \
-	#    $(PACKHEX) > $(basename $@).exe
-	$(OBJCOPY) -O binary $(basename $@).nxe $(basename $@).exe
-	$(NM) -g -n $(basename $@).nxe > $(basename $@).num
-	$(SIZE) $(basename $@).nxe
+define bsp-post-link
+	$(default-bsp-post-link)
+	$(OBJCOPY) -O binary $(basename $@)$(EXEEXT) $(basename $@)$(DOWNEXT)
 endef
-
-# Miscellaneous additions go here
 
 # BSP-specific tools
Index: make/custom/mvme167.cfg
===================================================================
--- make/custom/mvme167.cfg	(revision 9e2e3673673ab941738ba4ec9bb0c4d28d08c009)
+++ make/custom/mvme167.cfg	(revision 6087a6925701db0d0da461fc38ec39bd73d02390)
@@ -28,13 +28,6 @@
 CFLAGS_OPTIMIZE_V = -O2 -g -fno-omit-frame-pointer
 
-# Here is the rule to actually build a $(ARCH)/foo.exe
-# It also builds $(ARCH)/foo.nm
-# Usage ref: src/tests/sptest/sp1/Makefile
-#
 # We use TFTP to transfer files to the MVME167. We generate binary files
 # rather than S-records. We skip the header during downloads.
-
-# The following are definitions of make-exe which will work using ld as
-# is currently required.
 
 # The MC68040 does not implement all MC68881/MC68882 instructions, so use
@@ -48,12 +41,7 @@
 # Floating-point support will then be limited. See the mvme167 README file
 # for more details.
-define make-exe
-	$(LINK.c) $(AM_CFLAGS) $(AM_LDFLAGS) -o $(basename $@)_sym.exe \
-	    $(LINK_OBJS) $(LINK_LIBS)
-	$(NM) -g -n $(basename $@)_sym.exe > $(basename $@).nm
-	cp $(basename $@)_sym.exe $(basename $@).exe 
-	$(STRIP) $(basename $@).exe
-	$(SIZE) $(basename $@)_sym.exe
+define bsp-post-link
+	$(default-bsp-post-link)
+	cp $(basename $@)$(EXEEXT) $(basename $@)$(DOWNEXT)
+	$(STRIP) $(basename $@)$(DOWNEXT)
 endef
-
-# Miscellaneous additions go here
Index: make/custom/mvme2100.cfg
===================================================================
--- make/custom/mvme2100.cfg	(revision 9e2e3673673ab941738ba4ec9bb0c4d28d08c009)
+++ make/custom/mvme2100.cfg	(revision 6087a6925701db0d0da461fc38ec39bd73d02390)
@@ -20,29 +20,13 @@
 CFLAGS_OPTIMIZE_V = -O2 -g -mmultiple -mstring -mstrict-align
 
-define make-exe
-  	$(LINK.c) $(AM_CFLAGS) $(AM_LDFLAGS) \
-	   -o $(basename $@).nxe $(LINK_OBJS) $(LINK_LIBS)
- 	$(NM) -g -n $(basename $@).nxe > $(basename $@).num
- 	$(SIZE) $(basename $@).nxe
- 	$(OBJCOPY) -O binary -R .comment -S $(basename $@).nxe rtems
+define bsp-post-link
+	$(default-bsp-post-link)
+ 	$(OBJCOPY) -O binary -R .comment -S $(basename $@)$(EXEEXT) rtems
  	gzip -vf9 rtems
- 	$(LD) -o $@ $(PROJECT_RELEASE)/lib/bootloader.o --just-symbols=$(basename $@).nxe \
- 	-b binary rtems.gz -T $(PROJECT_RELEASE)/lib/ppcboot.lds \
- 	-Map $(basename $@).map && chmod 755 $@
+ 	$(LD) -o $(basename $@)$(DOWNEXT) \
+	    $(PROJECT_RELEASE)/lib/bootloader.o \
+	    --just-symbols=$(basename $@)$(EXEEXT) \
+ 	    -b binary rtems.gz -T $(PROJECT_RELEASE)/lib/ppcboot.lds \
+ 	    -Map $(basename $@).map && chmod 755 $@
  	rm -f rtems.gz
 endef
-
-define make-cxx-exe
-  	$(LINK.cc) $(AM_CFLAGS) $(AM_LDFLAGS) \
-	   -o $(basename $@).nxe $(LINK_OBJS) $(LINK_LIBS)
- 	$(NM) -g -n $(basename $@).nxe > $(basename $@).num
- 	$(SIZE) $(basename $@).nxe
- 	$(OBJCOPY) -O binary -R .comment -S $(basename $@).nxe rtems
- 	gzip -vf9 rtems
- 	$(LD) -o $@ $(PROJECT_RELEASE)/lib/bootloader.o --just-symbols=$(basename $@).nxe \
- 	-b binary rtems.gz -T $(PROJECT_RELEASE)/lib/ppcboot.lds \
- 	-Map $(basename $@).map && chmod 755 $@
- 	rm -f rtems.gz
-endef
-
-# Miscellaneous additions go here
Index: make/custom/mvme2307.cfg
===================================================================
--- make/custom/mvme2307.cfg	(revision 9e2e3673673ab941738ba4ec9bb0c4d28d08c009)
+++ make/custom/mvme2307.cfg	(revision 6087a6925701db0d0da461fc38ec39bd73d02390)
@@ -21,19 +21,15 @@
 CFLAGS_OPTIMIZE_V = -O2 -g
 
-define make-exe
-  	$(LINK.c) $(AM_CFLAGS) $(AM_LDFLAGS) \
-	   -o $(basename $@).nxe $(LINK_OBJS) $(LINK_LIBS)
- 	$(NM) -g -n $(basename $@).nxe > $(basename $@).num
- 	$(SIZE) $(basename $@).nxe
- 	$(OBJCOPY) -O binary -R .comment -S $(basename $@).nxe rtems
+define bsp-post-link
+	$(default-bsp-post-link)
+ 	$(OBJCOPY) -O binary -R .comment -S $(basename $@)$(EXEEXT) rtems
  	gzip -vf9 rtems
- 	$(LD) -o $@ $(PROJECT_RELEASE)/lib/bootloader.o --just-symbols=$(basename $@).nxe \
- 	-b binary rtems.gz -T $(PROJECT_RELEASE)/lib/ppcboot.lds \
- 	-Map $(basename $@).map && chmod 755 $@
+ 	$(LD) -o $(basename $@)$(DOWNEXT)  $(PROJECT_RELEASE)/lib/bootloader.o \
+	    --just-symbols=$(basename $@)$(EXEEXT) \
+ 	    -b binary rtems.gz -T $(PROJECT_RELEASE)/lib/ppcboot.lds \
+ 	    -Map $(basename $@).map && chmod 755 $@
  	rm -f rtems.gz
 endef
 
-# Miscellaneous additions go here
-
 # No start file
 START_BASE=
Index: make/custom/mvme3100.cfg
===================================================================
--- make/custom/mvme3100.cfg	(revision 9e2e3673673ab941738ba4ec9bb0c4d28d08c009)
+++ make/custom/mvme3100.cfg	(revision 6087a6925701db0d0da461fc38ec39bd73d02390)
@@ -29,19 +29,8 @@
 CFLAGS_DEBUG_V = -O1 -g
 
-define make-exe
-        $(LINK.c) $(AM_CFLAGS) $(AM_LDFLAGS) -o $(@:%.exe=%.nxe) $(LINK_OBJS) $(LINK_LIBS)
-        $(NM) -g -n $(@:%.exe=%.nxe) > $(basename $(@:%.exe=%.nxe)).num
-        $(SIZE) $(@:%.exe=%.nxe)
-#       test -d ${PROJECT_RELEASE}/bin || mkdir ${PROJECT_RELEASE}/bin
-        $(OBJCOPY) -Obinary $(@:%.exe=%.nxe) $(@:%.exe=%)$(LIB_VARIANT).exe
-endef
-
-define make-cxx-exe
-        $(LINK.cc) $(AM_CFLAGS) $(AM_LDFLAGS) -o $(@:%.exe=%.nxe) $(LINK_OBJS) $(LINK_LIBS)
-        $(NM) -g -n $(@:%.exe=%.nxe) > $(basename $(@:%.exe=%.nxe)).num
-        $(SIZE) $(@:%.exe=%.nxe)
-#       test -d ${PROJECT_RELEASE}/bin || mkdir ${PROJECT_RELEASE}/bin
-        $(OBJCOPY) -Obinary $(@:%.exe=%.nxe) $(@:%.exe=%)$(LIB_VARIANT).exe
-endef
+define bsp-post-link
+	$(default-bsp-post-link)
+	$(OBJCOPY) -O binary $(basename $@)$(EXEEXT) $(basename $@)$(DOWNEXT)
+endif
 
 # Miscellaneous additions go here
Index: make/custom/mvme5500.cfg
===================================================================
--- make/custom/mvme5500.cfg	(revision 9e2e3673673ab941738ba4ec9bb0c4d28d08c009)
+++ make/custom/mvme5500.cfg	(revision 6087a6925701db0d0da461fc38ec39bd73d02390)
@@ -23,12 +23,8 @@
 CFLAGS_OPTIMIZE_V = -O2 -g
 
-define make-exe
-        $(LINK.c) $(AM_CFLAGS) $(AM_LDFLAGS) -o $@ $(LINK_OBJS) $(LINK_LIBS)
-        $(NM) -g -n $@ > $(basename $@).num
-        $(SIZE) $@
-        $(OBJCOPY) -Obinary $@ $(@:%.exe=%)$(LIB_VARIANT).bin
+define bsp-post-link
+	$(default-bsp-post-link)
+	$(OBJCOPY) -O binary $(basename $@)$(EXEEXT) $(basename $@)$(DOWNEXT)
 endef
-
-# Miscellaneous additions go here
 
 # No start file
Index: make/custom/nios2_iss.cfg
===================================================================
--- make/custom/nios2_iss.cfg	(revision 9e2e3673673ab941738ba4ec9bb0c4d28d08c009)
+++ make/custom/nios2_iss.cfg	(revision 6087a6925701db0d0da461fc38ec39bd73d02390)
@@ -24,19 +24,7 @@
 CFLAGS_OPTIMIZE_V = -O0 -g
 
-# The following are definitions of make-exe which will work using ld as
-# is currently required.
-
-define make-exe
-	$(LINK.c) $(AM_CFLAGS) $(AM_LDFLAGS) -o $(basename $@).nxe \
-	    $(LINK_OBJS) $(LINK_LIBS)
-	$(OBJCOPY) -O binary --strip-all $(basename $@).nxe -R entry -R exceptions $@
-	$(SIZE) $(basename $@).nxe
+define bsp-post-link
+	$(OBJCOPY) -O binary --strip-all $(basename $@)$(EXEEXT) \
+	    -R entry -R exceptions $(basename $@)$(DOWNEXT)
+	$(default-bsp-post-link)
 endef
-define make-cxx-exe
-	$(LINK.cc) $(AM_CFLAGS) $(AM_LDFLAGS) -o $(basename $@).nxe \
-	    $(LINK_OBJS) $(LINK_LIBS)
-	$(OBJCOPY) -O binary --strip-all $(basename $@).nxe -R entry -R exceptions $@
-	$(SIZE) $(basename $@).nxe
-endef
-
-# Miscellaneous additions go here
Index: make/custom/ods68302.cfg
===================================================================
--- make/custom/ods68302.cfg	(revision 9e2e3673673ab941738ba4ec9bb0c4d28d08c009)
+++ make/custom/ods68302.cfg	(revision 6087a6925701db0d0da461fc38ec39bd73d02390)
@@ -28,17 +28,4 @@
 CFLAGS_OPTIMIZE_V = -O2 -g -fomit-frame-pointer
 
-# The following are definitions of make-exe which will work using ld as
-# is currently required.
-
-define make-exe
-	$(LINK.c) $(AM_CFLAGS) $(AM_LDFLAGS) \
-	    -o $@ \
-	    $(LINK_OBJS) $(LINK_LIBS)
-	$(NM) -g -n $@ > $(basename $@).num
-	$(SIZE) $@
-endef
-
-# Miscellaneous additions go here
-
 ifeq ($(RTEMS_DEBUGGER),yes)
 LINKCMDS=$(PROJECT_RELEASE)/lib/debugrom
Index: make/custom/pc386.cfg
===================================================================
--- make/custom/pc386.cfg	(revision 9e2e3673673ab941738ba4ec9bb0c4d28d08c009)
+++ make/custom/pc386.cfg	(revision 6087a6925701db0d0da461fc38ec39bd73d02390)
@@ -24,5 +24,5 @@
 CFLAGS_OPTIMIZE_V = -O2 -g
 
-# Here is the rule to actually build a $(ARCH)/foo.exe
+# Here is the rule to actually build a $(ARCH)/foo$(EXEEXT)
 # It also builds $(ARCH)/foo.sr and $(ARCH)/foo.nm
 # Usage ref: src/tests/sptest/sp1/Makefile
@@ -43,20 +43,8 @@
 HEADERADDR=0x00097E00
 
-# The following are definitions of make-exe which will work using ld as
-# is currently required.
-
-define bsp-link-c
-	$(LINK.c) $(AM_CFLAGS) $(AM_LDFLAGS) -Wl,-Ttext,$(RELOCADDR) \
-	    -o $(basename $@)$(EXEEXT) \
-	    $(LINK_OBJS) $(LINK_LIBS)
-endef
-
-define bsp-link-cxx
-	$(LINK.cc) $(AM_CFLAGS) $(AM_LDFLAGS) -Wl,-Ttext,$(RELOCADDR) \
-	    -o $(basename $@)$(EXEEXT) \
-	    $(LINK_OBJS) $(LINK_LIBS)
-endef
+AM_LDFLAGS+= -Wl,-Ttext,$(RELOCADDR)
 
 define bsp-post-link
+	$(default-bsp-post-link)
 	$(OBJCOPY) -O elf32-i386 \
 	    --remove-section=.rodata \
@@ -65,30 +53,8 @@
 	    --strip-unneeded $(basename $@)$(EXEEXT) $(basename $@).nxe
 	$(OBJCOPY) -O binary $(basename $@).nxe $(basename $@).bin
-	$(PROJECT_TOOLS)/bin2boot -v $(basename $@).bt $(HEADERADDR)\
+	$(PROJECT_TOOLS)/bin2boot -v $(basename $@)$(DOWNEXT) $(HEADERADDR)\
 	  $(START16FILE) $(START16ADDR) 0 $(basename $@).bin $(RELOCADDR) 0
-	$(NM) -g -n $(basename $@)$(EXEEXT) > $(basename $@).num
-	$(SIZE) $(basename $@)$(EXEEXT)
-#	test -d ${PROJECT_RELEASE}/BootImgs \
-#	  || mkdir ${PROJECT_RELEASE}/BootImgs
-#	f=`basename $@ .exe`; \
-#        cp $(basename $@).bt \
-#	    ${PROJECT_RELEASE}/BootImgs/$${f}$(LIB_VARIANT).bt \
-#	&& chmod 755 \
-#	  ${PROJECT_RELEASE}/BootImgs/$${f}$(LIB_VARIANT).bt 
-#	$(LINK.c) $(AM_CFLAGS) $(AM_LDFLAGS) -Wl,-Ttext,$(RELOCADDR) \
-#	    -o $@ $(LINK_OBJS) $(LINK_LIBS)
+	rm -f $(basename $@).nxe
 endef
-
-define make-exe
-       $(bsp-link-c)
-       $(bsp-post-link)
-endef
-
-define make-cxx-exe
-       $(bsp-link-cxx)
-       $(bsp-post-link)
-endef
-
-# Miscellaneous additions go here
 
 # BSP-specific tools
Index: make/custom/posix.cfg
===================================================================
--- make/custom/posix.cfg	(revision 9e2e3673673ab941738ba4ec9bb0c4d28d08c009)
+++ make/custom/posix.cfg	(revision 6087a6925701db0d0da461fc38ec39bd73d02390)
@@ -18,5 +18,5 @@
 START_BASE=
 
-# Here is the rule to actually build a $(ARCH)/foo.exe
+# Here is the rule to actually build a $(ARCH)/foo$(EXEEXT)
 # It also builds $(ARCH)/foo.sr and $(ARCH)/foo.nm
 # Usage ref: src/tests/sptest/sp1/Makefile
Index: make/custom/psim.cfg
===================================================================
--- make/custom/psim.cfg	(revision 9e2e3673673ab941738ba4ec9bb0c4d28d08c009)
+++ make/custom/psim.cfg	(revision 6087a6925701db0d0da461fc38ec39bd73d02390)
@@ -21,11 +21,2 @@
 # optimize flag: typically -O2
 CFLAGS_OPTIMIZE_V = -O2 -g -fno-keep-inline-functions
-
-define make-exe
-	$(LINK.c) $(AM_CFLAGS) $(AM_LDFLAGS) -o $(basename $@).exe \
-	    $(LINK_OBJS) $(LINK_LIBS)
-	$(NM) -g -n $@ > $(basename $@).num
-	$(SIZE) $@
-endef
-
-# Miscellaneous additions go here
Index: make/custom/rbtx4925.cfg
===================================================================
--- make/custom/rbtx4925.cfg	(revision 9e2e3673673ab941738ba4ec9bb0c4d28d08c009)
+++ make/custom/rbtx4925.cfg	(revision 6087a6925701db0d0da461fc38ec39bd73d02390)
@@ -19,17 +19,8 @@
 CFLAGS_OPTIMIZE_V = -O2 -g -fomit-frame-pointer
 
-# The following are definitions of make-exe which will work using ld as
-# is currently required.
-
-define make-exe
-	$(LINK.c) $(AM_CFLAGS) $(AM_LDFLAGS) \
-	    -o $@ -Xlinker -Map -Xlinker $(basename $@).map $(LINK_OBJS) $(LINK_LIBS)
+define bsp-post-link
 	$(OBJCOPY) -O srec $@ $(basename $@).srec1
-        $(PACKHEX) < $(basename $@).srec1 > $(basename $@).srec
+        $(PACKHEX) < $(basename $@).srec1 > $(basename $@)$(DOWNEXT)
 	$(RM) $(basename $@).srec1
-	$(NM) -g -n $@ > $(basename $@).num
-	$(SIZE) $@
+	$(default-bsp-post-link)
 endef
-
-# Miscellaneous additions go here
-
Index: make/custom/rbtx4938.cfg
===================================================================
--- make/custom/rbtx4938.cfg	(revision 9e2e3673673ab941738ba4ec9bb0c4d28d08c009)
+++ make/custom/rbtx4938.cfg	(revision 6087a6925701db0d0da461fc38ec39bd73d02390)
@@ -19,13 +19,6 @@
 CFLAGS_OPTIMIZE_V = -O2 -g -fomit-frame-pointer
 
-# The following are definitions of make-exe which will work using ld as
-# is currently required.
-
-define make-exe
-	$(LINK.c) $(AM_CFLAGS) $(AM_LDFLAGS) \
-	    -o $@ -Xlinker -Map -Xlinker $(basename $@).map $(LINK_OBJS) $(LINK_LIBS)
-	$(OBJCOPY) --srec-len=30 -O srec $@ $(basename $@).srec
+define bsp-post-link
+	$(OBJCOPY) --srec-len=30 -O srec $@ $(basename $@)$(DOWNEXT)
+	$(default-bsp-post-link)
 endef
-
-# Miscellaneous additions go here
-
Index: make/custom/rtl22xx.cfg
===================================================================
--- make/custom/rtl22xx.cfg	(revision 9e2e3673673ab941738ba4ec9bb0c4d28d08c009)
+++ make/custom/rtl22xx.cfg	(revision 6087a6925701db0d0da461fc38ec39bd73d02390)
@@ -23,11 +23,2 @@
 # -O2 so far.
 CFLAGS_OPTIMIZE_V = -Os -g -DNDEBUG
-
-define make-exe
-	$(LINK.c) $(AM_CFLAGS) $(AM_LDFLAGS) -o $@ \
-	    $(LINK_OBJS) $(LINK_LIBS) -Wl,-Map,$(basename $@).map
-	$(NM) -g -n $(basename $@).exe > $(basename $@).num
-	$(SIZE) $(basename $@).exe
-endef
-
-# Miscellaneous additions go here
Index: make/custom/score603e.cfg
===================================================================
--- make/custom/score603e.cfg	(revision 9e2e3673673ab941738ba4ec9bb0c4d28d08c009)
+++ make/custom/score603e.cfg	(revision 6087a6925701db0d0da461fc38ec39bd73d02390)
@@ -26,14 +26,9 @@
 CFLAGS_OPTIMIZE_V = -O2 -g -fno-keep-inline-functions
 
-define make-exe
-	$(LINK.c) $(AM_CFLAGS) $(AM_LDFLAGS) \
-	    -o $(basename $@).nxe $(LINK_OBJS) $(LINK_LIBS)
-	$(NM) -g -n $(basename $@).nxe > $(basename $@).num
-	$(SIZE) $(basename $@).nxe
-	$(OBJCOPY) -O srec $(basename $@).nxe $(basename $@).s1
+define bsp-post-link
+	$(default-bsp-post-link)
+	$(OBJCOPY) -O srec $(basename $@)$(EXEEXT) $(basename $@).s1
 	sed -e 's/.$$//' $(basename $@).s1 | \
-	  $(PACKHEX) >$(basename $@).exe
+	  $(PACKHEX) >$(basename $@)$(DOWNEXT)
 	rm -f $(basename $@).s1
 endef
-
-# Miscellaneous additions go here
Index: make/custom/shsim.cfg
===================================================================
--- make/custom/shsim.cfg	(revision 9e2e3673673ab941738ba4ec9bb0c4d28d08c009)
+++ make/custom/shsim.cfg	(revision 6087a6925701db0d0da461fc38ec39bd73d02390)
@@ -20,16 +20,2 @@
 # optimize flag: typically -O2
 CFLAGS_OPTIMIZE_V = -O2 -g
-
-# The following are definitions of make-exe which will work using ld as
-# is currently required.
-
-define make-exe
-	$(LINK.c) $(AM_CFLAGS) $(AM_LDFLAGS) \
-	    $(LDLIBS) -o $@ \
-	    $(LINK_OBJS) $(LINK_LIBS)
-	$(NM) -g -n $@ > $(basename $@).num
-	$(SIZE) $@
-endef
-
-# Miscellaneous additions go here
-
Index: make/custom/sim68000.cfg
===================================================================
--- make/custom/sim68000.cfg	(revision 9e2e3673673ab941738ba4ec9bb0c4d28d08c009)
+++ make/custom/sim68000.cfg	(revision 6087a6925701db0d0da461fc38ec39bd73d02390)
@@ -20,13 +20,6 @@
 CFLAGS_OPTIMIZE_V = -O2 -g -fomit-frame-pointer
 
-# The following are definitions of make-exe which will work using ld as
-# is currently required.
-
-define make-exe
-	$(LINK.c) $(AM_CFLAGS) $(AM_LDFLAGS) \
-	    -o $(basename $@).nxe $(LINK_OBJS) $(LINK_LIBS)
-	$(OBJCOPY) -O srec $(basename $@).nxe $(basename $@).exe
-	$(NM) -g -n $(basename $@).nxe > $(basename $@).num
-	$(SIZE) $(basename $@).nxe
+define bsp-post-link
+	$(default-bsp-post-link)
+	$(OBJCOPY) -O srec $(basename $@)$(EXEEXT) $(basename $@)$(DOWNEXT)
 endef
-# Miscellaneous additions go here
Index: make/custom/simcpu32.cfg
===================================================================
--- make/custom/simcpu32.cfg	(revision 9e2e3673673ab941738ba4ec9bb0c4d28d08c009)
+++ make/custom/simcpu32.cfg	(revision 6087a6925701db0d0da461fc38ec39bd73d02390)
@@ -20,14 +20,6 @@
 CFLAGS_OPTIMIZE_V = -O2 -g -fomit-frame-pointer
 
-# The following are definitions of make-exe which will work using ld as
-# is currently required.
-
-define make-exe
-	$(LINK.c) $(AM_CFLAGS) $(AM_LDFLAGS) \
-	    -o $(basename $@).nxe $(LINK_OBJS) $(LINK_LIBS)
-	$(OBJCOPY) -O srec $(basename $@).nxe $(basename $@).exe
-	$(NM) -g -n $@ > $(basename $@).num
-	$(SIZE) $@
+define bsp-post-link
+	$(default-bsp-post-link)
+	$(OBJCOPY) -O srec $(basename $@)$(EXEEXT) $(basename $@)$(DOWNEXT)
 endef
-
-# Miscellaneous additions go here
Index: make/custom/simsh4.cfg
===================================================================
--- make/custom/simsh4.cfg	(revision 9e2e3673673ab941738ba4ec9bb0c4d28d08c009)
+++ make/custom/simsh4.cfg	(revision 6087a6925701db0d0da461fc38ec39bd73d02390)
@@ -29,18 +29,4 @@
 CPU_CFLAGS = -m4 -ml
 
-
 # optimize flag: typically -O2
 CFLAGS_OPTIMIZE_V = -O2 -g 
-
-# The following are definitions of make-exe which will work using ld as
-# is currently required.
-
-define make-exe
-	$(LINK.c) $(AM_CFLAGS) $(AM_LDFLAGS) -Wl,-Map,$(basename $@).map \
-	    $(LDLIBS) -o $@ \
-	    $(LINK_OBJS) $(LINK_LIBS)
-	$(NM) -g -n $@ > $(basename $@).num
-	$(SIZE) $@
-endef
-
-# Miscellaneous additions go here
Index: make/custom/simsh7032.cfg
===================================================================
--- make/custom/simsh7032.cfg	(revision 9e2e3673673ab941738ba4ec9bb0c4d28d08c009)
+++ make/custom/simsh7032.cfg	(revision 6087a6925701db0d0da461fc38ec39bd73d02390)
@@ -22,4 +22,2 @@
 # optimize flag: typically -O2
 CFLAGS_OPTIMIZE_V = -O2 -g 
-
-# Miscellaneous additions go here
Index: make/custom/simsh7045.cfg
===================================================================
--- make/custom/simsh7045.cfg	(revision 9e2e3673673ab941738ba4ec9bb0c4d28d08c009)
+++ make/custom/simsh7045.cfg	(revision 6087a6925701db0d0da461fc38ec39bd73d02390)
@@ -22,4 +22,2 @@
 # optimize flag: typically -O2
 CFLAGS_OPTIMIZE_V = -O2 -g 
-
-# Miscellaneous additions go here
Index: make/custom/sis.cfg
===================================================================
--- make/custom/sis.cfg	(revision 9e2e3673673ab941738ba4ec9bb0c4d28d08c009)
+++ make/custom/sis.cfg	(revision 6087a6925701db0d0da461fc38ec39bd73d02390)
@@ -6,3 +6,2 @@
 
 include $(RTEMS_ROOT)/make/custom/erc32.cfg
-
Index: make/custom/ss555.cfg
===================================================================
--- make/custom/ss555.cfg	(revision 9e2e3673673ab941738ba4ec9bb0c4d28d08c009)
+++ make/custom/ss555.cfg	(revision 6087a6925701db0d0da461fc38ec39bd73d02390)
@@ -28,14 +28,9 @@
 CFLAGS_OPTIMIZE_V = -O2 -g -fno-keep-inline-functions
 
-define make-exe
-	$(LINK.c) $(AM_CFLAGS) $(AM_LDFLAGS) $(SS555_LDFLAGS) \
-	    -o $(basename $@)_sym.exe $(LINK_OBJS) $(LINK_LIBS)
-	$(NM) -g -n $(basename $@)_sym.exe > $(basename $@).nm
-	cp $(basename $@)_sym.exe $(basename $@).exe 
-	$(STRIP) $(basename $@).exe
-	$(SIZE) $(basename $@)_sym.exe
+define bsp-post-link
+	$(default-bsp-post-link)
+	cp $(basename $@)$(EXEEXT) $(basename $@)$(DOWNEXT) 
+	$(STRIP) $(basename $@)$(DOWNEXT)
 endef
-
-# Miscellaneous additions go here
 
 # Override default start file
Index: make/custom/ts_386ex.cfg
===================================================================
--- make/custom/ts_386ex.cfg	(revision 9e2e3673673ab941738ba4ec9bb0c4d28d08c009)
+++ make/custom/ts_386ex.cfg	(revision 6087a6925701db0d0da461fc38ec39bd73d02390)
@@ -22,12 +22,6 @@
 CFLAGS_OPTIMIZE_V = -O2 -g 
 
-define make-exe
-	$(LINK.c) $(AM_CFLAGS) $(AM_LDFLAGS) -o $(basename $@).nxe \
-	    $(LINK_OBJS) $(LINK_LIBS)
-	$(OBJCOPY) -O binary $(basename $@).nxe $(basename $@).exe
-	$(NM) -g -n $(basename $@).nxe > $(basename $@).num
-	$(SIZE) $(basename $@).nxe
+define bsp-post-link
+	$(default-bsp-post-link)
+	$(OBJCOPY) -O binary $(basename $@)$(EXEEXT) $(basename $@)$(DOWNEXT)
 endef
-
-# Miscellaneous additions go here
-
Index: make/custom/uC5282.cfg
===================================================================
--- make/custom/uC5282.cfg	(revision 9e2e3673673ab941738ba4ec9bb0c4d28d08c009)
+++ make/custom/uC5282.cfg	(revision 6087a6925701db0d0da461fc38ec39bd73d02390)
@@ -18,19 +18,6 @@
 CFLAGS_OPTIMIZE_V = -O2 -g
 
-# The following are definitions of make-exe which will work using ld as
-# is currently required.
-
-define make-exe
-	$(LINK.c) $(AM_CFLAGS) $(AM_LDFLAGS) -o $(basename $@).nxe \
-	    $(LINK_OBJS) $(LINK_LIBS)
-	$(OBJCOPY) -O binary --strip-all $(basename $@).nxe $@
-	$(SIZE) $(basename $@).nxe
+define bsp-post-link
+	$(default-bsp-post-link)
+	$(OBJCOPY) -O binary $(basename $@)$(EXEEXT) $(basename $@)$(DOWNEXT)
 endef
-define make-cxx-exe
-	$(LINK.cc) $(AM_CFLAGS) $(AM_LDFLAGS) -o $(basename $@).nxe \
-	    $(LINK_OBJS) $(LINK_LIBS)
-	$(OBJCOPY) -O binary --strip-all $(basename $@).nxe $@
-	$(SIZE) $(basename $@).nxe
-endef
-
-# Miscellaneous additions go here
Index: make/custom/virtex.cfg
===================================================================
--- make/custom/virtex.cfg	(revision 9e2e3673673ab941738ba4ec9bb0c4d28d08c009)
+++ make/custom/virtex.cfg	(revision 6087a6925701db0d0da461fc38ec39bd73d02390)
@@ -3,11 +3,4 @@
 #
 #  $Id$
-#
-#  this is derived from:
-#
-#  Config file for a PowerPC 403 based helas403 card
-#
-#  Id: helas403.cfg,v 1.8 2000/07/13 15:05:38 joel Exp
-#
 #
 
@@ -30,28 +23,9 @@
 CFLAGS_OPTIMIZE_V = -O2 -g -fno-keep-inline-functions
 
-
 # No start file
 START_BASE=
 
-# The following are definitions of make-exe which will work using ld as
-# is currently required.  It is expected that as of gcc 2.8, the end user
-# will be able to override parts of the compilers specs and link using gcc.
-
-define make-exe
-	$(LINK.c) $(AM_CFLAGS) $(AM_LDFLAGS) -o $(basename $@).exe $(LINK_OBJS) $(LINK_LIBS)
-	$(OBJCOPY) -O srec $(basename $@).exe $(basename $@).srec
-	$(NM) -g -n $@ > $(basename $@).num
-	$(SIZE) $@
+define bsp-post-link
+	$(default-bsp-post-link)
+	$(OBJCOPY) -O srec $(basename $@)$(EXEEXT) $(basename $@)$(DOWNEXT)
 endef
-
-#	$(OBJCOPY) -O srec --srec-len 120 $(basename $@).exe $(basename $@).srec
-define make-cxx-exe
-	$(LINK.cc) $(AM_CFLAGS) $(AM_CXXFLAGS) $(AM_LDFLAGS) \
-	    -o $(basename $@).exe $(LINK_OBJS) $(LINK_LIBS)
-	$(OBJCOPY) -O srec $(basename $@).exe $(basename $@).srec
-	$(NM) -g -n $@ > $(basename $@).num
-	$(SIZE) $@
-endef
-
-# Miscellaneous additions go here
-
