Index: c/src/lib/libbsp/i960/rxgen960/Makefile.in
===================================================================
--- c/src/lib/libbsp/i960/rxgen960/Makefile.in	(revision d73a8649edb6d763d9129dab01005a4cae49cd85)
+++ c/src/lib/libbsp/i960/rxgen960/Makefile.in	(revision 919822f96141e66cea272c1695131f76f583e8b2)
@@ -5,12 +5,27 @@
 @SET_MAKE@
 srcdir = @srcdir@
-VPATH = @srcdir@
-RTEMS_ROOT = @top_srcdir@
+top_srcdir = @top_srcdir@
+top_builddir = ../..
+subdir = i960/rxgen960
+
+RTEMS_ROOT = @RTEMS_ROOT@
 PROJECT_ROOT = @PROJECT_ROOT@
 
-include $(RTEMS_ROOT)/make/custom/$(RTEMS_BSP).cfg
+VPATH = @srcdir@
+
+include $(RTEMS_ROOT)/make/custom/@RTEMS_BSP@.cfg
 include $(RTEMS_ROOT)/make/directory.cfg
+
+INSTALL_CHANGE = @INSTALL_CHANGE@
+
+# We only build the multiprocessing support if HAS_MP was defined
+MP_SUPPORT_yes_V = shmsupp
+MP_SUPPORT = $(MP_SUPPORT_$(HAS_MP)_V)
 
 # wrapup is the one that actually builds and installs the library
 #  from the individual .rel files built in other directories
-SUB_DIRS=include startup clock console shmsupp timer wrapup
+SUB_DIRS = include startup clock console $(MP_SUPPORT) timer wrapup
+
+Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
+	cd $(top_builddir) \
+	 && CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= $(SHELL) ./config.status
Index: c/src/lib/libbsp/i960/rxgen960/clock/Makefile.in
===================================================================
--- c/src/lib/libbsp/i960/rxgen960/clock/Makefile.in	(revision d73a8649edb6d763d9129dab01005a4cae49cd85)
+++ c/src/lib/libbsp/i960/rxgen960/clock/Makefile.in	(revision 919822f96141e66cea272c1695131f76f583e8b2)
@@ -5,22 +5,29 @@
 @SET_MAKE@
 srcdir = @srcdir@
-VPATH = @srcdir@
-RTEMS_ROOT = @top_srcdir@
+top_srcdir = @top_srcdir@
+top_builddir = ../../..
+subdir = i960/cvme961/clock
+
+RTEMS_ROOT = @RTEMS_ROOT@
 PROJECT_ROOT = @PROJECT_ROOT@
 
-PGM=${ARCH}/clock.rel
+VPATH = @srcdir@
+
+PGM = ${ARCH}/clock.rel
 
 # C source names, if any, go here -- minus the .c
-C_PIECES=ckinit
-C_FILES=$(C_PIECES:%=%.c)
-C_O_FILES=$(C_PIECES:%=${ARCH}/%.o)
+C_PIECES = ckinit
+C_FILES = $(C_PIECES:%=%.c)
+C_O_FILES = $(C_PIECES:%=${ARCH}/%.o)
 
-H_FILES=
+H_FILES =
 
-SRCS=$(C_FILES) $(H_FILES)
-OBJS=$(C_O_FILES)
+SRCS = $(C_FILES) $(H_FILES)
+OBJS = $(C_O_FILES)
 
-include $(RTEMS_ROOT)/make/custom/$(RTEMS_BSP).cfg
+include $(RTEMS_ROOT)/make/custom/@RTEMS_BSP@.cfg
 include $(RTEMS_ROOT)/make/leaf.cfg
+
+INSTALL_CHANGE = @INSTALL_CHANGE@
 
 #
@@ -28,11 +35,11 @@
 #
 
-DEFINES  +=
+DEFINES +=
 CPPFLAGS +=
-CFLAGS   +=
+CFLAGS +=
 
-LD_PATHS  +=
-LD_LIBS   +=
-LDFLAGS   +=
+LD_PATHS +=
+LD_LIBS +=
+LDFLAGS +=
 
 #
@@ -49,6 +56,10 @@
 	$(make-rel)
 
-all:	${ARCH} $(SRCS) $(PGM)
+all: ${ARCH} $(SRCS) $(PGM)
 
 # the .rel file built here will be put into libbsp.a by ../wrapup/Makefile
-install:  all
+install: all
+
+Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
+	cd $(top_builddir) \
+	 && CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= $(SHELL) ./config.status
Index: c/src/lib/libbsp/i960/rxgen960/console/Makefile.in
===================================================================
--- c/src/lib/libbsp/i960/rxgen960/console/Makefile.in	(revision d73a8649edb6d763d9129dab01005a4cae49cd85)
+++ c/src/lib/libbsp/i960/rxgen960/console/Makefile.in	(revision 919822f96141e66cea272c1695131f76f583e8b2)
@@ -5,27 +5,29 @@
 @SET_MAKE@
 srcdir = @srcdir@
-VPATH = @srcdir@
-RTEMS_ROOT = @top_srcdir@
+top_srcdir = @top_srcdir@
+top_builddir = ../../..
+subdir = i960/rxgen/console
+
+RTEMS_ROOT = @RTEMS_ROOT@
 PROJECT_ROOT = @PROJECT_ROOT@
 
-PGM=${ARCH}/console.rel
+VPATH = @srcdir@
+
+PGM = ${ARCH}/console.rel
 
 # C source names, if any, go here -- minus the .c
-C_PIECES=console pcimsgreg
-C_FILES=$(C_PIECES:%=%.c)
-C_O_FILES=$(C_PIECES:%=${ARCH}/%.o)
+C_PIECES = console pcimsgreg
+C_FILES = $(C_PIECES:%=%.c)
+C_O_FILES = $(C_PIECES:%=${ARCH}/%.o)
 
-H_FILES=$(srcdir)/concntl.h
+H_FILES =
 
-# Assembly source names, if any, go here -- minus the .s
-S_PIECES=
-S_FILES=$(S_PIECES:%=%.s)
-S_O_FILES=$(S_FILES:%.s=${ARCH}/%.o)
+SRCS = $(C_FILES) $(H_FILES)
+OBJS = $(C_O_FILES)
 
-SRCS=$(C_FILES) $(CC_FILES) $(H_FILES) $(S_FILES)
-OBJS=$(C_O_FILES) $(CC_O_FILES) $(S_O_FILES)
+include $(RTEMS_ROOT)/make/custom/@RTEMS_BSP@.cfg
+include $(RTEMS_ROOT)/make/leaf.cfg
 
-include $(RTEMS_ROOT)/make/custom/$(RTEMS_BSP).cfg
-include $(RTEMS_ROOT)/make/leaf.cfg
+INSTALL_CHANGE = @INSTALL_CHANGE@
 
 #
@@ -33,11 +35,11 @@
 #
 
-DEFINES  +=
+DEFINES +=
 CPPFLAGS +=
-CFLAGS   +=
+CFLAGS +=
 
-LD_PATHS  +=
-LD_LIBS   +=
-LDFLAGS   +=
+LD_PATHS +=
+LD_LIBS +=
+LDFLAGS +=
 
 #
@@ -54,6 +56,10 @@
 	$(make-rel)
 
-all:	${ARCH} $(SRCS) $(PGM)
-	$(INSTALL) -m 444 $(H_FILES) ${PROJECT_RELEASE}/include
+all: ${ARCH} $(SRCS) $(PGM)
 
 # the .rel file built here will be put into libbsp.a by ../wrapup/Makefile
+install: all
+
+Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
+	cd $(top_builddir) \
+	 && CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= $(SHELL) ./config.status
Index: c/src/lib/libbsp/i960/rxgen960/include/Makefile.in
===================================================================
--- c/src/lib/libbsp/i960/rxgen960/include/Makefile.in	(revision d73a8649edb6d763d9129dab01005a4cae49cd85)
+++ c/src/lib/libbsp/i960/rxgen960/include/Makefile.in	(revision 919822f96141e66cea272c1695131f76f583e8b2)
@@ -5,7 +5,12 @@
 @SET_MAKE@
 srcdir = @srcdir@
+top_srcdir = @top_srcdir@
+top_builddir = ../../..
+subdir = i960/rxgen960/include
+
+RTEMS_ROOT = @RTEMS_ROOT@
+PROJECT_ROOT = @PROJECT_ROOT@
+
 VPATH = @srcdir@
-RTEMS_ROOT = @top_srcdir@
-PROJECT_ROOT = @PROJECT_ROOT@
 
 H_FILES = $(srcdir)/bsp.h $(srcdir)/coverhd.h
@@ -24,15 +29,27 @@
 EQ_FILES =
 
-SRCS=$(H_FILES) $(EQ_FILES)
+SRCS = $(H_FILES) $(EQ_FILES)
 
-include $(RTEMS_ROOT)/make/custom/$(RTEMS_BSP).cfg
+include $(RTEMS_ROOT)/make/custom/@RTEMS_BSP@.cfg
 include $(RTEMS_ROOT)/make/leaf.cfg
+
+INSTALL_CHANGE = @INSTALL_CHANGE@
+mkinstalldirs = $(SHELL) $(top_srcdir)/@RTEMS_TOPdir@/mkinstalldirs
+
+INSTALLDIRS = $(PROJECT_INCLUDE) $(PROJECT_INCLUDE)/cpu
+
+$(INSTALLDIRS):
+	@$(mkinstalldirs) $(INSTALLDIRS)
 
 CLEAN_ADDITIONS +=
 CLOBBER_ADDITIONS +=
 
-all:	$(SRCS)
-	$(INSTALL) -m 444 $(H_FILES) $(PROJECT_INCLUDE)
-	$(INSTALL) -m 444 $(EQ_FILES) $(PROJECT_INCLUDE)/cpu
+all: $(SRCS)
+	@$(INSTALL_CHANGE) -m 644 $(H_FILES) $(PROJECT_INCLUDE)
+	@$(INSTALL_CHANGE) -m 644 $(EQ_FILES) $(PROJECT_INCLUDE)/cpu
 
-install:  all
+install: all
+
+Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
+	cd $(top_builddir) \
+	 && CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= $(SHELL) ./config.status
Index: c/src/lib/libbsp/i960/rxgen960/shmsupp/Makefile.in
===================================================================
--- c/src/lib/libbsp/i960/rxgen960/shmsupp/Makefile.in	(revision d73a8649edb6d763d9129dab01005a4cae49cd85)
+++ c/src/lib/libbsp/i960/rxgen960/shmsupp/Makefile.in	(revision 919822f96141e66cea272c1695131f76f583e8b2)
@@ -5,22 +5,29 @@
 @SET_MAKE@
 srcdir = @srcdir@
-VPATH = @srcdir@
-RTEMS_ROOT = @top_srcdir@
+top_srcdir = @top_srcdir@
+top_builddir = ../../..
+subdir = i960/rxgen960/shmsupp
+
+RTEMS_ROOT = @RTEMS_ROOT@
 PROJECT_ROOT = @PROJECT_ROOT@
 
-PGM=${ARCH}/shmsupp.rel
+VPATH = @srcdir@
+
+PGM = ${ARCH}/shmsupp.rel
 
 # C source names, if any, go here -- minus the .c
-C_PIECES=addrconv getcfg lock mpisr
-C_FILES=$(C_PIECES:%=%.c)
-C_O_FILES=$(C_PIECES:%=${ARCH}/%.o)
+C_PIECES = addrconv getcfg lock mpisr
+C_FILES = $(C_PIECES:%=%.c)
+C_O_FILES = $(C_PIECES:%=${ARCH}/%.o)
 
-H_FILES=
+H_FILES =
 
-SRCS=$(C_FILES) $(H_FILES)
-OBJS=$(C_O_FILES)
+SRCS = $(C_FILES) $(H_FILES)
+OBJS = $(C_O_FILES)
 
-include $(RTEMS_ROOT)/make/custom/$(RTEMS_BSP).cfg
+include $(RTEMS_ROOT)/make/custom/@RTEMS_BSP@.cfg
 include $(RTEMS_ROOT)/make/leaf.cfg
+
+INSTALL_CHANGE = @INSTALL_CHANGE@
 
 #
@@ -28,11 +35,11 @@
 #
 
-DEFINES  +=
+DEFINES +=
 CPPFLAGS +=
-CFLAGS   +=
+CFLAGS +=
 
-LD_PATHS  +=
-LD_LIBS   +=
-LDFLAGS   +=
+LD_PATHS +=
+LD_LIBS +=
+LDFLAGS +=
 
 #
@@ -49,7 +56,10 @@
 	$(make-rel)
 
-all:	${ARCH} $(SRCS) $(PGM)
+all: ${ARCH} $(SRCS) $(PGM)
 
 # the .rel file built here will be put into libbsp.a by ../wrapup/Makefile
-install:  all
+install: all
 
+Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
+	cd $(top_builddir) \
+	 && CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= $(SHELL) ./config.status
Index: c/src/lib/libbsp/i960/rxgen960/shmsupp/mpisr.c
===================================================================
--- c/src/lib/libbsp/i960/rxgen960/shmsupp/mpisr.c	(revision d73a8649edb6d763d9129dab01005a4cae49cd85)
+++ c/src/lib/libbsp/i960/rxgen960/shmsupp/mpisr.c	(revision 919822f96141e66cea272c1695131f76f583e8b2)
@@ -1,4 +1,3 @@
-/*  Shm_isr_cvme961()
- *
+/*
  *  NOTE: This routine is not used when in polling mode.  Either
  *        this routine OR Shm_clockisr is used in a particular system.
@@ -23,5 +22,5 @@
 #include "shm.h"
 
-rtems_isr Shm_isr_cvme961(
+rtems_isr Shm_isr_rxgen960(
   rtems_vector_number vector
 )
@@ -61,5 +60,5 @@
     (*(rtems_unsigned8 *)0xc00000b0) =
       (Shm_RTEMS_MP_Configuration->node - 1) | 0x10;
-    set_vector( Shm_isr_cvme961, 6, 1 );
+    set_vector( Shm_isr_rxgen960, 6, 1 );
                                         /* set ICMS Bector Base Register */
     (*(rtems_unsigned8 *)0xa0000053) = 0x60;  /* XINT6 vector is 0x62 */
Index: c/src/lib/libbsp/i960/rxgen960/startup/Makefile.in
===================================================================
--- c/src/lib/libbsp/i960/rxgen960/startup/Makefile.in	(revision d73a8649edb6d763d9129dab01005a4cae49cd85)
+++ c/src/lib/libbsp/i960/rxgen960/startup/Makefile.in	(revision 919822f96141e66cea272c1695131f76f583e8b2)
@@ -5,44 +5,43 @@
 @SET_MAKE@
 srcdir = @srcdir@
-VPATH = @srcdir@:@srcdir@/../../../shared
-RTEMS_ROOT = @top_srcdir@
+top_srcdir = @top_srcdir@
+top_builddir = ../../..
+subdir = i960/rxgen960/startup
+
+RTEMS_ROOT = @RTEMS_ROOT@
 PROJECT_ROOT = @PROJECT_ROOT@
 
-PGM=${ARCH}/startup.rel
-IPGM=${ARCH}/startup.indv
+VPATH = @srcdir@:@srcdir@/../../../shared
 
+PGM = ${ARCH}/startup.rel
 
 # C source names, if any, go here -- minus the .c
-# OLD:C_PIECES=bspclean bsplibc bsppost bspstart main sbrk setvec
-# we assume to get the following sources from bsplib/shared
-C_PIECES=bspstart bsppost bspclean bsplibc main sbrk setvec kkprintf frmstr nmi XtInt
-C_FILES=$(C_PIECES:%=%.c)
-C_O_FILES=$(C_PIECES:%=${ARCH}/%.o)
+#C_PIECES = bspclean bsplibc bsppost bspstart bootcard main sbrk setvec \
+#    gnatinstallhandler
+C_PIECES = bspstart cntrltbl exit fault flttbl frmstr intrtbl kkprintf \
+   nmi nulsystbl prcb rom_cntrltbl rom_ibr rom_prcb save_systbl
+   sctns setvec systbl
+C_FILES = $(C_PIECES:%=%.c)
+C_O_FILES = $(C_PIECES:%=${ARCH}/%.o)
 
-# C individual source names, if any, go here -- minus the .c
-CI_PIECES=cntrltbl flttbl intrtbl prcb sctns fault nulsystbl systbl rom_cntrltbl rom_prcb rom_ibr
-CI_FILES=$(CI_PIECES:%=%.c)
-CI_O_FILES=$(CI_PIECES:%=${ARCH}/%.o)
+S_PIECES = asmfault asmstub ihandler rxgen_romld sctns systbl
+S_FILES = $(S_PIECES:%=%.S)
+S_O_FILES = $(S_PIECES:%=${ARCH}/%.o)
 
-H_FILES=
+H_FILES =
 
-# Assembly source names, if any, go here -- minus the .s
-S_PIECES=
-S_FILES=$(S_PIECES:%=%.s)
-S_O_FILES=$(S_FILES:%.s=${ARCH}/%.o)
+SRCS = $(C_FILES) $(S_FILES) $(H_FILES)
+OBJS = $(C_O_FILES) $(S_O_FILES)
 
-# Assembly individual source names, if any, go here -- minus the .s
-SI_PIECES=rxgen_romld asmfault asmstub ihandler
-SI_FILES=$(SI_PIECES:%=%.s)
-SI_O_FILES=$(SI_FILES:%.s=${ARCH}/%.o)
+include $(RTEMS_ROOT)/make/custom/@RTEMS_BSP@.cfg
+include $(RTEMS_ROOT)/make/leaf.cfg
 
-SRCS=$(C_FILES) $(H_FILES) $(S_FILES)
-OBJS=$(C_O_FILES) $(S_O_FILES)
+INSTALL_CHANGE = @INSTALL_CHANGE@
+mkinstalldirs = $(SHELL) $(top_srcdir)/@RTEMS_TOPdir@/mkinstalldirs
 
-ISRCS=$(CI_FILES) $(H_FILES) $(SI_FILES)
-IOBJS=$(CI_O_FILES) $(SI_O_FILES)
+INSTALLDIRS = $(PROJECT_RELEASE)/lib
 
-include $(RTEMS_ROOT)/make/custom/$(RTEMS_BSP).cfg
-include $(RTEMS_ROOT)/make/leaf.cfg
+$(INSTALLDIRS):
+	@$(mkinstalldirs) $(INSTALLDIRS)
 
 #
@@ -50,11 +49,11 @@
 #
 
-DEFINES  +=
+DEFINES +=
 CPPFLAGS +=
-CFLAGS   +=
+CFLAGS +=
 
-LD_PATHS  +=
-LD_LIBS   +=
-LDFLAGS   +=
+LD_PATHS +=
+LD_LIBS +=
+LDFLAGS +=
 
 #
@@ -67,16 +66,15 @@
 CLEAN_ADDITIONS +=
 CLOBBER_ADDITIONS +=
+
 ${PGM}: ${SRCS} ${OBJS}
 	$(make-rel)
 
-${IPGM}: ${ISRCS} ${IOBJS}
-	touch ${IPGM}
-
-all:    ${ARCH} $(SRCS) $(PGM) $(ISRCS) $(IPGM)
-	$(INSTALL) $(srcdir)/linkcmds ${PROJECT_RELEASE}/lib
-	i960-rtems-strip --strip-debug ${ARCH}/rom_ibr.o
+all: ${ARCH} $(SRCS) $(PGM)
+	$(INSTALL_CHANGE) -m 644 $(srcdir)/linkcmds $(PROJECT_RELEASE)/lib
 
 # the .rel file built here will be put into libbsp.a by ../wrapup/Makefile
-install:  all
+install: all
 
-
+Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
+	cd $(top_builddir) \
+	 && CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= $(SHELL) ./config.status
Index: c/src/lib/libbsp/i960/rxgen960/timer/Makefile.in
===================================================================
--- c/src/lib/libbsp/i960/rxgen960/timer/Makefile.in	(revision d73a8649edb6d763d9129dab01005a4cae49cd85)
+++ c/src/lib/libbsp/i960/rxgen960/timer/Makefile.in	(revision 919822f96141e66cea272c1695131f76f583e8b2)
@@ -5,27 +5,34 @@
 @SET_MAKE@
 srcdir = @srcdir@
-VPATH = @srcdir@
-RTEMS_ROOT = @top_srcdir@
+top_srcdir = @top_srcdir@
+top_builddir = ../../..
+subdir = i960/rxgen/timer
+
+RTEMS_ROOT = @RTEMS_ROOT@
 PROJECT_ROOT = @PROJECT_ROOT@
 
-PGM=${ARCH}/timer.rel
+VPATH = @srcdir@
+
+PGM = ${ARCH}/timer.rel
 
 # C source names, if any, go here -- minus the .c
-C_PIECES=timer
-C_FILES=$(C_PIECES:%=%.c)
-C_O_FILES=$(C_PIECES:%=${ARCH}/%.o)
+C_PIECES = timer
+C_FILES = $(C_PIECES:%=%.c)
+C_O_FILES = $(C_PIECES:%=${ARCH}/%.o)
 
-H_FILES=
+H_FILES =
 
-# Assembly source names, if any, go here -- minus the .s
-S_PIECES=
-S_FILES=$(S_PIECES:%=%.s)
-S_O_FILES=$(S_FILES:%.s=${ARCH}/%.o)
+# Assembly source names, if any, go here -- minus the .S
+S_PIECES = timerisr
+S_FILES = $(S_PIECES:%=%.S)
+S_O_FILES = $(S_FILES:%.S=${ARCH}/%.o)
 
-SRCS=$(C_FILES) $(H_FILES) $(S_FILES)
-OBJS=$(C_O_FILES) $(S_O_FILES)
+SRCS = $(C_FILES) $(H_FILES) $(S_FILES)
+OBJS = $(C_O_FILES) $(S_O_FILES)
 
-include $(RTEMS_ROOT)/make/custom/$(RTEMS_BSP).cfg
+include $(RTEMS_ROOT)/make/custom/@RTEMS_BSP@.cfg
 include $(RTEMS_ROOT)/make/leaf.cfg
+
+INSTALL_CHANGE = @INSTALL_CHANGE@
 
 #
@@ -33,11 +40,11 @@
 #
 
-DEFINES  +=
+DEFINES +=
 CPPFLAGS +=
-CFLAGS   +=
+CFLAGS +=
 
-LD_PATHS  +=
-LD_LIBS   +=
-LDFLAGS   +=
+LD_PATHS +=
+LD_LIBS +=
+LDFLAGS +=
 
 #
@@ -54,6 +61,10 @@
 	$(make-rel)
 
-all:	${ARCH} $(SRCS) $(PGM)
+all: ${ARCH} $(SRCS) $(PGM)
 
 # the .rel file built here will be put into libbsp.a by ../wrapup/Makefile
-install:  all
+install: all
+
+Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
+	cd $(top_builddir) \
+	 && CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= $(SHELL) ./config.status
Index: c/src/lib/libbsp/i960/rxgen960/wrapup/Makefile.in
===================================================================
--- c/src/lib/libbsp/i960/rxgen960/wrapup/Makefile.in	(revision d73a8649edb6d763d9129dab01005a4cae49cd85)
+++ c/src/lib/libbsp/i960/rxgen960/wrapup/Makefile.in	(revision 919822f96141e66cea272c1695131f76f583e8b2)
@@ -5,18 +5,35 @@
 @SET_MAKE@
 srcdir = @srcdir@
-VPATH = @srcdir@
-RTEMS_ROOT = @top_srcdir@
+top_srcdir = @top_srcdir@
+top_builddir = ../../..
+subdir = i960/rxgen960/wrapup
+
+RTEMS_ROOT = @RTEMS_ROOT@
 PROJECT_ROOT = @PROJECT_ROOT@
 
-BSP_PIECES=startup clock console shmsupp timer
-GENERIC_PIECES=shmdr
+VPATH = @srcdir@
+
+include $(RTEMS_ROOT)/make/custom/@RTEMS_BSP@.cfg
+include $(RTEMS_ROOT)/make/lib.cfg
+
+INSTALL = @INSTALL@
+INSTALL_CHANGE = @INSTALL_CHANGE@
+
+BSP_PIECES = startup clock console timer
+GENERIC_PIECES =
+
+GENERIC_MP_REL_PIECES_yes_V = shmdr
+GENERIC_MP_REL_PIECES_no_V =
+GENERIC_PIECES += $(GENERIC_MP_REL_PIECES_$(HAS_MP)_V)
+
+BSP_MP_O_PIECES_yes_V = shmsupp
+BSP_MP_O_PIECES_no_V =
+BSP_PIECES += $(BSP_MP_O_PIECES_$(HAS_MP)_V)
 
 # bummer; have to use $foreach since % pattern subst rules only replace 1x
-OBJS=$(foreach piece, $(BSP_PIECES), ../$(piece)/$(ARCH)/$(piece).rel) \
-     $(foreach piece, $(GENERIC_PIECES), ../../../$(piece)/$(ARCH)/$(piece).rel)
-LIB=$(ARCH)/libbsp.a
-
-include $(RTEMS_ROOT)/make/custom/$(RTEMS_BSP).cfg
-include $(RTEMS_ROOT)/make/lib.cfg
+OBJS = $(foreach piece, $(BSP_PIECES), $(wildcard ../$(piece)/$(ARCH)/*.o)) \
+    $(foreach piece, $(GENERIC_PIECES), \
+    ../../../$(piece)/$(ARCH)/$(piece).rel)
+LIB = $(ARCH)/libbsp.a
 
 #
@@ -24,11 +41,11 @@
 #
 
-DEFINES  +=
+DEFINES +=
 CPPFLAGS +=
-CFLAGS   +=
+CFLAGS +=
 
-LD_PATHS  +=
-LD_LIBS   +=
-LDFLAGS   +=
+LD_PATHS +=
+LD_LIBS +=
+LDFLAGS +=
 
 #
@@ -45,7 +62,13 @@
 	$(make-library)
 
-all:	${ARCH} $(SRCS) $(LIB)
-	$(INSTALL_VARIANT) -m 644 $(LIB) ${PROJECT_RELEASE}/lib
+all: ${ARCH} $(SRCS) $(LIB)
+	$(INSTALL_VARIANT) -m 644 $(LIB) $(PROJECT_RELEASE)/lib
 
-install:  all
+install: all
 
+$(PROJECT_ROOT)/@RTEMS_BSP@/lib/bsp_specs: ../bsp_specs
+	$(INSTALL_DATA) $< $@
+
+Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
+	cd $(top_builddir) \
+	 && CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= $(SHELL) ./config.status
