Index: c/src/lib/libbsp/powerpc/motorola_powerpc/ChangeLog
===================================================================
--- c/src/lib/libbsp/powerpc/motorola_powerpc/ChangeLog	(revision 926ec3b2855673ca51e2891fec1bd537d84eded6)
+++ c/src/lib/libbsp/powerpc/motorola_powerpc/ChangeLog	(revision c6592940cc0f4b478cb8b2673e57103b061734d4)
@@ -1,2 +1,17 @@
+2003-12-22	Ralf Corsepius <corsepiu@faw.uni-ulm.de>
+
+	* bootloader/Makefile.am: Eliminate VPATH.
+	* clock/Makefile.am: Eliminate VPATH.
+	* console/Makefile.am: Eliminate VPATH.
+	* irq/Makefile.am: Eliminate VPATH.
+	* motorola/Makefile.am: Eliminate VPATH.
+	* openpic/Makefile.am: Eliminate VPATH.
+	* pci/Makefile.am: Eliminate VPATH.
+	* residual/Makefile.am: Eliminate VPATH.
+	* start/Makefile.am: Eliminate VPATH.
+	* startup/Makefile.am: Eliminate VPATH.
+	* vectors/Makefile.am: Eliminate VPATH.
+	* vme/Makefile.am: Eliminate VPATH.
+
 2003-12-13	Ralf Corsepius <corsepiu@faw.uni-ulm.de>
 
Index: c/src/lib/libbsp/powerpc/motorola_powerpc/bootloader/Makefile.am
===================================================================
--- c/src/lib/libbsp/powerpc/motorola_powerpc/bootloader/Makefile.am	(revision 926ec3b2855673ca51e2891fec1bd537d84eded6)
+++ c/src/lib/libbsp/powerpc/motorola_powerpc/bootloader/Makefile.am	(revision c6592940cc0f4b478cb8b2673e57103b061734d4)
@@ -8,12 +8,21 @@
 AUTOMAKE_OPTIONS = no-exeext
 
-VPATH = @srcdir@:@srcdir@/../../shared/bootloader:@srcdir@/../../shared/console
-
 noinst_PROGRAMS = bootloader
 
 ## IMPORTANT: head.S must be first, T. Straumann 12/17/2001
-bootloader_SOURCES = head.S exception.S em86real.S
-bootloader_SOURCES += misc.c pci.c zlib.c mm.c em86.c polled_io.c lib.c
-bootloader_SOURCES += bootldr.h zlib.h pci.h keyboard.h
+bootloader_SOURCES = $(top_srcdir)/../../powerpc/shared/bootloader/head.S \
+    $(top_srcdir)/../../powerpc/shared/bootloader/exception.S \
+    $(top_srcdir)/../../powerpc/shared/bootloader/em86real.S \
+    $(top_srcdir)/../../powerpc/shared/bootloader/misc.c \
+    $(top_srcdir)/../../powerpc/shared/bootloader/pci.c \
+    $(top_srcdir)/../../powerpc/shared/bootloader/zlib.c \
+    $(top_srcdir)/../../powerpc/shared/bootloader/mm.c \
+    $(top_srcdir)/../../powerpc/shared/bootloader/em86.c \
+    $(top_srcdir)/../../powerpc/shared/console/polled_io.c \
+    $(top_srcdir)/../../powerpc/shared/bootloader/lib.c \
+    $(top_srcdir)/../../powerpc/shared/bootloader/bootldr.h \
+    $(top_srcdir)/../../powerpc/shared/bootloader/zlib.h \
+    $(top_srcdir)/../../powerpc/shared/bootloader/pci.h \
+    $(top_srcdir)/../../powerpc/shared/console/keyboard.h
 
 NM = @NM@
Index: c/src/lib/libbsp/powerpc/motorola_powerpc/clock/Makefile.am
===================================================================
--- c/src/lib/libbsp/powerpc/motorola_powerpc/clock/Makefile.am	(revision 926ec3b2855673ca51e2891fec1bd537d84eded6)
+++ c/src/lib/libbsp/powerpc/motorola_powerpc/clock/Makefile.am	(revision c6592940cc0f4b478cb8b2673e57103b061734d4)
@@ -3,21 +3,16 @@
 ##
 
-VPATH = @srcdir@:@srcdir@/../../shared/clock
-
-C_FILES = p_clock.c
-C_O_FILES = $(C_FILES:%.c=$(ARCH)/%.$(OBJEXT))
-
-OBJS = $(C_O_FILES)
-
 include $(top_srcdir)/../../../../automake/compile.am
 include $(top_srcdir)/../../../../automake/lib.am
 
-#
-# (OPTIONAL) Add local stuff here using +=
-#
+powerpc_shared_clock_C_FILES = \
+    $(top_srcdir)/../../powerpc/shared/clock/p_clock.c
+OBJS = \
+    $(powerpc_shared_clock_C_FILES:$(top_srcdir)/../../powerpc/shared/clock/%.c=$(ARCH)/%.$(OBJEXT))
 
-# the .rel file built here will be put into libbsp.a by ../wrapup/Makefile
+$(ARCH)/%.$(OBJEXT): $(top_srcdir)/../../powerpc/shared/clock/%.c $(ARCH)/$(dirstamp)
+	${COMPILE} -o $@ -c $<
 
-all-local: $(OBJS)
+noinst_DATA = $(OBJS)
 
 include $(top_srcdir)/../../../../automake/local.am
Index: c/src/lib/libbsp/powerpc/motorola_powerpc/console/Makefile.am
===================================================================
--- c/src/lib/libbsp/powerpc/motorola_powerpc/console/Makefile.am	(revision 926ec3b2855673ca51e2891fec1bd537d84eded6)
+++ c/src/lib/libbsp/powerpc/motorola_powerpc/console/Makefile.am	(revision c6592940cc0f4b478cb8b2673e57103b061734d4)
@@ -3,20 +3,25 @@
 ##
 
-VPATH = @srcdir@:@srcdir@/../../shared/console:@srcdir@/../../../shared
-
-C_FILES = polled_io.c uart.c console.c inch.c reboot.c
-C_O_FILES = $(C_FILES:%.c=$(ARCH)/%.$(OBJEXT))
-
-H_FILES = ../../shared/console/consoleIo.h ../../shared/console/keyboard.h \
-    ../../shared/console/uart.h
-
-OBJS = $(C_O_FILES)
-
 include $(top_srcdir)/../../../../automake/compile.am
 include $(top_srcdir)/../../../../automake/lib.am
 
-#
-# (OPTIONAL) Add local stuff here using +=
-#
+powerpc_shared_console_C_FILES = \
+    $(top_srcdir)/../../powerpc/shared/console/polled_io.c \
+    $(top_srcdir)/../../powerpc/shared/console/uart.c \
+    $(top_srcdir)/../../powerpc/shared/console/console.c \
+    $(top_srcdir)/../../powerpc/shared/console/inch.c \
+    $(top_srcdir)/../../powerpc/shared/console/reboot.c
+OBJS = \
+    $(powerpc_shared_console_C_FILES:$(top_srcdir)/../../powerpc/shared/console/%.c=$(ARCH)/%.$(OBJEXT))
+
+$(ARCH)/%.$(OBJEXT): $(top_srcdir)/../../powerpc/shared/console/%.c $(ARCH)/$(dirstamp)
+	${COMPILE} -o $@ -c $<
+
+# FIXME: This is nonsense.
+noinst_HEADERS = $(top_srcdir)/../../powerpc/shared/console/consoleIo.h \
+    $(top_srcdir)/../../powerpc/shared/console/keyboard.h \
+    $(top_srcdir)/../../powerpc/shared/console/uart.h
+
+noinst_DATA = $(OBJS)
 
 AM_CPPFLAGS += -DSTATIC_LOG_ALLOC
Index: c/src/lib/libbsp/powerpc/motorola_powerpc/irq/Makefile.am
===================================================================
--- c/src/lib/libbsp/powerpc/motorola_powerpc/irq/Makefile.am	(revision 926ec3b2855673ca51e2891fec1bd537d84eded6)
+++ c/src/lib/libbsp/powerpc/motorola_powerpc/irq/Makefile.am	(revision c6592940cc0f4b478cb8b2673e57103b061734d4)
@@ -3,25 +3,31 @@
 ##
 
-VPATH = @srcdir@:@srcdir@/../../shared/irq
-
-C_FILES = irq_init.c i8259.c irq.c
-C_O_FILES = $(C_FILES:%.c=$(ARCH)/%.$(OBJEXT))
-
-include_bspdir = $(includedir)/bsp
-nodist_include_bsp_HEADERS = $(top_srcdir)/../shared/irq/irq.h
-
-S_FILES = irq_asm.S
-S_O_FILES = $(S_FILES:%.S=$(ARCH)/%.$(OBJEXT))
-
-OBJS = $(S_O_FILES) $(C_O_FILES)
-
 include $(top_srcdir)/../../../../automake/compile.am
 include $(top_srcdir)/../../../../automake/lib.am
 
-#
-# (OPTIONAL) Add local stuff here using +=
-#
+include_bspdir = $(includedir)/bsp
+nodist_include_bsp_HEADERS = $(top_srcdir)/../../powerpc/shared/irq/irq.h
 
-all-local: $(PREINSTALL_FILES) $(OBJS)
+powerpc_shared_irq_C_FILES = \
+    $(top_srcdir)/../../powerpc/shared/irq/irq_init.c \
+    $(top_srcdir)/../../powerpc/shared/irq/i8259.c \
+    $(top_srcdir)/../../powerpc/shared/irq/irq.c
+OBJS = \
+    $(powerpc_shared_irq_C_FILES:$(top_srcdir)/../../powerpc/shared/irq/%.c=$(ARCH)/%.$(OBJEXT))
+
+$(ARCH)/%.$(OBJEXT): $(top_srcdir)/../../powerpc/shared/irq/%.c $(ARCH)/$(dirstamp)
+	${COMPILE} -o $@ -c $<
+
+powerpc_shared_irq_S_FILES = \
+    $(top_srcdir)/../../powerpc/shared/irq/irq_asm.S
+OBJS += \
+    $(powerpc_shared_irq_S_FILES:$(top_srcdir)/../../powerpc/shared/irq/%.S=$(ARCH)/%.$(OBJEXT))
+
+$(ARCH)/%.$(OBJEXT): $(top_srcdir)/../../powerpc/shared/irq/%.S $(ARCH)/$(dirstamp)
+	${CCASCOMPILE} -o $@ -c $<
+
+noinst_DATA = $(OBJS)
+
+all-local: $(PREINSTALL_FILES)
 
 PREINSTALL_FILES =
@@ -31,5 +37,5 @@
 	@: > $(PROJECT_INCLUDE)/bsp/$(dirstamp)
 
-$(PROJECT_INCLUDE)/bsp/irq.h: $(top_srcdir)/../shared/irq/irq.h $(PROJECT_INCLUDE)/bsp/$(dirstamp)
+$(PROJECT_INCLUDE)/bsp/irq.h: $(top_srcdir)/../../powerpc/shared/irq/irq.h $(PROJECT_INCLUDE)/bsp/$(dirstamp)
 	$(INSTALL_DATA) $< $(PROJECT_INCLUDE)/bsp/irq.h
 PREINSTALL_FILES += $(PROJECT_INCLUDE)/bsp/irq.h
Index: c/src/lib/libbsp/powerpc/motorola_powerpc/motorola/Makefile.am
===================================================================
--- c/src/lib/libbsp/powerpc/motorola_powerpc/motorola/Makefile.am	(revision 926ec3b2855673ca51e2891fec1bd537d84eded6)
+++ c/src/lib/libbsp/powerpc/motorola_powerpc/motorola/Makefile.am	(revision c6592940cc0f4b478cb8b2673e57103b061734d4)
@@ -3,25 +3,22 @@
 ##
 
-VPATH = @srcdir@:@srcdir@/../../shared/motorola
-
-C_FILES = motorola.c
-C_O_FILES = $(C_FILES:%.c=$(ARCH)/%.$(OBJEXT))
-
-# FIXME: This doesn't give any sense here
-include_bspdir = $(includedir)/bsp
-nodist_include_bsp_HEADERS = $(top_srcdir)/../shared/motorola/motorola.h
-
-OBJS = $(C_O_FILES)
-
 include $(top_srcdir)/../../../../automake/compile.am
 include $(top_srcdir)/../../../../automake/lib.am
 
-#
-# (OPTIONAL) Add local stuff here using +=
-#
+include_bspdir = $(includedir)/bsp
+nodist_include_bsp_HEADERS = \
+    $(top_srcdir)/../../powerpc/shared/motorola/motorola.h
 
-# the .rel file built here will be put into libbsp.a by ../wrapup/Makefile
+powerpc_shared_motorola_C_FILES = \
+    $(top_srcdir)/../../powerpc/shared/motorola/motorola.c
+OBJS = \
+    $(powerpc_shared_motorola_C_FILES:$(top_srcdir)/../../powerpc/shared/motorola/%.c=$(ARCH)/%.$(OBJEXT))
 
-all-local: $(OBJS)
+$(ARCH)/%.$(OBJEXT): $(top_srcdir)/../../powerpc/shared/motorola/%.c $(ARCH)/$(dirstamp)
+	${COMPILE} -o $@ -c $<
+
+noinst_DATA = $(OBJS)
+
+all-local: $(PREINSTALL_FILES)
 
 PREINSTALL_FILES =
@@ -31,5 +28,5 @@
 	@: > $(PROJECT_INCLUDE)/bsp/$(dirstamp)
 
-$(PROJECT_INCLUDE)/bsp/motorola.h: $(top_srcdir)/../shared/motorola/motorola.h $(PROJECT_INCLUDE)/bsp/$(dirstamp)
+$(PROJECT_INCLUDE)/bsp/motorola.h: $(top_srcdir)/../../powerpc/shared/motorola/motorola.h $(PROJECT_INCLUDE)/bsp/$(dirstamp)
 	$(INSTALL_DATA) $< $(PROJECT_INCLUDE)/bsp/motorola.h
 PREINSTALL_FILES += $(PROJECT_INCLUDE)/bsp/motorola.h
Index: c/src/lib/libbsp/powerpc/motorola_powerpc/openpic/Makefile.am
===================================================================
--- c/src/lib/libbsp/powerpc/motorola_powerpc/openpic/Makefile.am	(revision 926ec3b2855673ca51e2891fec1bd537d84eded6)
+++ c/src/lib/libbsp/powerpc/motorola_powerpc/openpic/Makefile.am	(revision c6592940cc0f4b478cb8b2673e57103b061734d4)
@@ -3,17 +3,22 @@
 ##
 
-VPATH = @srcdir@:@srcdir@/../../shared/openpic
-
-C_FILES = openpic.c
-
-include_bspdir = $(includedir)/bsp
-nodist_include_bsp_HEADERS = $(top_srcdir)/../shared/openpic/openpic.h
-
-OBJS = $(C_FILES:%.c=$(ARCH)/%.$(OBJEXT))
-
 include $(top_srcdir)/../../../../automake/compile.am
 include $(top_srcdir)/../../../../automake/lib.am
 
-all-local: $(PREINSTALL_FILES) $(OBJS)
+include_bspdir = $(includedir)/bsp
+nodist_include_bsp_HEADERS = \
+    $(top_srcdir)/../../powerpc/shared/openpic/openpic.h
+
+powerpc_shared_openpic_C_FILES = \
+    $(top_srcdir)/../../powerpc/shared/openpic/openpic.c
+OBJS = \
+    $(powerpc_shared_openpic_C_FILES:$(top_srcdir)/../../powerpc/shared/openpic/%.c=$(ARCH)/%.$(OBJEXT))
+
+$(ARCH)/%.$(OBJEXT): $(top_srcdir)/../../powerpc/shared/openpic/%.c $(ARCH)/$(dirstamp)
+	${COMPILE} -o $@ -c $<
+
+noinst_DATA = $(OBJS)
+
+all-local: $(PREINSTALL_FILES)
 
 PREINSTALL_FILES =
@@ -23,5 +28,5 @@
 	@: > $(PROJECT_INCLUDE)/bsp/$(dirstamp)
 
-$(PROJECT_INCLUDE)/bsp/openpic.h: $(top_srcdir)/../shared/openpic/openpic.h $(PROJECT_INCLUDE)/bsp/$(dirstamp)
+$(PROJECT_INCLUDE)/bsp/openpic.h: $(top_srcdir)/../../powerpc/shared/openpic/openpic.h $(PROJECT_INCLUDE)/bsp/$(dirstamp)
 	$(INSTALL_DATA) $< $(PROJECT_INCLUDE)/bsp/openpic.h
 PREINSTALL_FILES += $(PROJECT_INCLUDE)/bsp/openpic.h
Index: c/src/lib/libbsp/powerpc/motorola_powerpc/pci/Makefile.am
===================================================================
--- c/src/lib/libbsp/powerpc/motorola_powerpc/pci/Makefile.am	(revision 926ec3b2855673ca51e2891fec1bd537d84eded6)
+++ c/src/lib/libbsp/powerpc/motorola_powerpc/pci/Makefile.am	(revision c6592940cc0f4b478cb8b2673e57103b061734d4)
@@ -3,22 +3,20 @@
 ##
 
-VPATH = @srcdir@:@srcdir@/../../shared/pci
-
-C_FILES = pci.c detect_raven_bridge.c pcifinddevice.c
-C_O_FILES = $(C_FILES:%.c=$(ARCH)/%.$(OBJEXT))
-
-include_bspdir = $(includedir)/bsp
-nodist_include_bsp_HEADERS = $(top_srcdir)/../shared/pci/pci.h
-
-OBJS = $(C_O_FILES)
-
 include $(top_srcdir)/../../../../automake/compile.am
 include $(top_srcdir)/../../../../automake/lib.am
 
-AM_CFLAGS += -O2
+include_bspdir = $(includedir)/bsp
+nodist_include_bsp_HEADERS = $(top_srcdir)/../../powerpc/shared/pci/pci.h
 
-# the .rel file built here will be put into libbsp.a by ../wrapup/Makefile
+power_shared_pci_C_FILES = $(top_srcdir)/../../powerpc/shared/pci/pci.c \
+    $(top_srcdir)/../../powerpc/shared/pci/detect_raven_bridge.c \
+    $(top_srcdir)/../../powerpc/shared/pci/pcifinddevice.c
+OBJS = \
+    $(power_shared_pci_C_FILES:$(top_srcdir)/../../powerpc/shared/pci/%.c=$(ARCH)/%.$(OBJEXT))
 
-all-local: $(PREINSTALL_FILES) $(OBJS)
+$(ARCH)/%.$(OBJEXT): $(top_srcdir)/../../powerpc/shared/pci/%.c $(ARCH)/$(dirstamp)
+	${COMPILE} -o $@ -c $<
+
+noinst_DATA = $(OBJS)
 
 PREINSTALL_FILES =
@@ -28,5 +26,5 @@
 	@: > $(PROJECT_INCLUDE)/bsp/$(dirstamp)
 
-$(PROJECT_INCLUDE)/bsp/pci.h: $(top_srcdir)/../shared/pci/pci.h $(PROJECT_INCLUDE)/bsp/$(dirstamp)
+$(PROJECT_INCLUDE)/bsp/pci.h: $(top_srcdir)/../../powerpc/shared/pci/pci.h $(PROJECT_INCLUDE)/bsp/$(dirstamp)
 	$(INSTALL_DATA) $< $(PROJECT_INCLUDE)/bsp/pci.h
 PREINSTALL_FILES += $(PROJECT_INCLUDE)/bsp/pci.h
Index: c/src/lib/libbsp/powerpc/motorola_powerpc/residual/Makefile.am
===================================================================
--- c/src/lib/libbsp/powerpc/motorola_powerpc/residual/Makefile.am	(revision 926ec3b2855673ca51e2891fec1bd537d84eded6)
+++ c/src/lib/libbsp/powerpc/motorola_powerpc/residual/Makefile.am	(revision c6592940cc0f4b478cb8b2673e57103b061734d4)
@@ -3,23 +3,20 @@
 ##
 
-VPATH = @srcdir@:@srcdir@/../../shared/residual
-
-C_FILES = residual.c
-C_O_FILES = $(C_FILES:%.c=$(ARCH)/%.$(OBJEXT))
-
-H_FILES = ../../shared/residual/pnp.h ../../shared/residual/residual.h
-
-OBJS = $(C_O_FILES)
-
 include $(top_srcdir)/../../../../automake/compile.am
 include $(top_srcdir)/../../../../automake/lib.am
 
-#
-# (OPTIONAL) Add local stuff here using +=
-#
+# FIXME: This does not make much sense
+noinst_HEADERS = $(top_srcdir)/../../powerpc/shared/residual/pnp.h \
+    $(top_srcdir)/../../powerpc/shared/residual/residual.h
 
-# the .rel file built here will be put into libbsp.a by ../wrapup/Makefile
+powerpc_shared_residual_C_FILES = \
+    $(top_srcdir)/../../powerpc/shared/residual/residual.c
+OBJS = \
+    $(powerpc_shared_residual_C_FILES:$(top_srcdir)/../../powerpc/shared/residual/%.c=$(ARCH)/%.$(OBJEXT))
 
-all-local: $(PREINSTALL_FILES) $(OBJS)
+$(ARCH)/%.$(OBJEXT): $(top_srcdir)/../../powerpc/shared/residual/%.c $(ARCH)/$(dirstamp)
+	${COMPILE} -o $@ -c $<
+
+noinst_DATA = $(OBJS)
 
 include $(top_srcdir)/../../../../automake/local.am
Index: c/src/lib/libbsp/powerpc/motorola_powerpc/start/Makefile.am
===================================================================
--- c/src/lib/libbsp/powerpc/motorola_powerpc/start/Makefile.am	(revision 926ec3b2855673ca51e2891fec1bd537d84eded6)
+++ c/src/lib/libbsp/powerpc/motorola_powerpc/start/Makefile.am	(revision c6592940cc0f4b478cb8b2673e57103b061734d4)
@@ -2,11 +2,4 @@
 ## $Id$
 ##
-
-VPATH = @srcdir@:@srcdir@/../../shared/start
-
-S_FILES = start.S rtems_crti.S
-S_O_FILES = $(S_FILES:%.S=$(ARCH)/%.$(OBJEXT))
-
-OBJS = $(S_O_FILES)
 
 include $(top_srcdir)/../../../../automake/compile.am
@@ -14,7 +7,14 @@
 include $(top_srcdir)/../../bspstart.am
 
-#
-# (OPTIONAL) Add local stuff here using +=
-#
+powerpc_shared_start_S_FILES = \
+    $(top_srcdir)/../../powerpc/shared/start/start.S \
+    $(top_srcdir)/../../powerpc/shared/start/rtems_crti.S
+
+OBJS = \
+    $(powerpc_shared_start_S_FILES:$(top_srcdir)/../../powerpc/shared/start/%.S=$(ARCH)/%.$(OBJEXT))
+
+$(ARCH)/%.$(OBJEXT): $(top_srcdir)/../../powerpc/shared/start/%.S $(ARCH)/$(dirstamp)
+	${CCASCOMPILE} -o $@ -c $<
+
 project_lib_DATA = $(ARCH)/start$(LIB_VARIANT).$(OBJEXT)
 project_lib_DATA += $(ARCH)/rtems_crti$(LIB_VARIANT).$(OBJEXT)
Index: c/src/lib/libbsp/powerpc/motorola_powerpc/startup/Makefile.am
===================================================================
--- c/src/lib/libbsp/powerpc/motorola_powerpc/startup/Makefile.am	(revision 926ec3b2855673ca51e2891fec1bd537d84eded6)
+++ c/src/lib/libbsp/powerpc/motorola_powerpc/startup/Makefile.am	(revision c6592940cc0f4b478cb8b2673e57103b061734d4)
@@ -3,20 +3,31 @@
 ##
 
-VPATH = @srcdir@:@srcdir@/../console:@srcdir@/../../shared/startup:@srcdir@/../../../shared
-
 PGM = $(ARCH)/startup.rel
-
-C_FILES = bootcard.c main.c bspstart.c bsppost.c bsplibc.c sbrk.c bspclean.c \
-    gnatinstallhandler.c pgtbl_setup.c pgtbl_activate.c
-C_O_FILES = $(C_FILES:%.c=$(ARCH)/%.$(OBJEXT))
-
-OBJS = $(C_O_FILES)
 
 include $(top_srcdir)/../../../../automake/compile.am
 include $(top_srcdir)/../../../../automake/lib.am
 
-#
-# (OPTIONAL) Add local stuff here using +=
-#
+powerpc_shared_startup_C_FILES = \
+    $(top_srcdir)/../../powerpc/shared/startup/bspstart.c \
+    $(top_srcdir)/../../powerpc/shared/startup/pgtbl_setup.c \
+    $(top_srcdir)/../../powerpc/shared/startup/pgtbl_activate.c \
+    $(top_srcdir)/../../powerpc/shared/startup/sbrk.c
+OBJS = \
+    $(powerpc_shared_startup_C_FILES:$(top_srcdir)/../../powerpc/shared/startup/%.c=$(ARCH)/%.$(OBJEXT))
+
+$(ARCH)/%.$(OBJEXT): $(top_srcdir)/../../powerpc/shared/startup/%.c $(ARCH)/$(dirstamp)
+	${COMPILE} -o $@ -c $<
+
+shared_C_FILES = $(top_srcdir)/../../shared/bootcard.c
+shared_C_FILES += $(top_srcdir)/../../shared/bspclean.c
+shared_C_FILES += $(top_srcdir)/../../shared/bsplibc.c
+shared_C_FILES += $(top_srcdir)/../../shared/bsppost.c
+shared_C_FILES += $(top_srcdir)/../../shared/main.c
+shared_C_FILES += $(top_srcdir)/../../shared/gnatinstallhandler.c
+OBJS += \
+    $(shared_C_FILES:$(top_srcdir)/../../shared/%.c=$(ARCH)/%.$(OBJEXT))
+
+$(ARCH)/%.$(OBJEXT): $(top_srcdir)/../../shared/%.c $(ARCH)/$(dirstamp)
+	${COMPILE} -o $@ -c $<
 
 $(PGM): $(OBJS)
Index: c/src/lib/libbsp/powerpc/motorola_powerpc/vectors/Makefile.am
===================================================================
--- c/src/lib/libbsp/powerpc/motorola_powerpc/vectors/Makefile.am	(revision 926ec3b2855673ca51e2891fec1bd537d84eded6)
+++ c/src/lib/libbsp/powerpc/motorola_powerpc/vectors/Makefile.am	(revision c6592940cc0f4b478cb8b2673e57103b061734d4)
@@ -3,28 +3,30 @@
 ##
 
-VPATH = @srcdir@:@srcdir@/../console:@srcdir@/../../shared/vectors
-
-C_FILES = vectors_init.c
-C_O_FILES = $(C_FILES:%.c=$(ARCH)/%.$(OBJEXT))
-
-S_FILES = vectors.S
-S_O_FILES = $(S_FILES:%.S=$(ARCH)/%.$(OBJEXT))
-
-OBJS = $(S_O_FILES) $(C_O_FILES)
-
 include $(top_srcdir)/../../../../automake/compile.am
 include $(top_srcdir)/../../../../automake/lib.am
 
-#
-# (OPTIONAL) Add local stuff here using +=
-#
+# FIXME: this does not make much sense
+include_bspdir = $(includedir)/bsp
+include_bsp_HEADERS = $(top_srcdir)/../../powerpc/shared/vectors/vectors.h
 
-$(PGM): $(OBJS)
-	$(make-rel)
+powerpc_shared_vectors_C_FILES = \
+    $(top_srcdir)/../..//powerpc/shared/vectors/vectors_init.c
+OBJS = \
+    $(powerpc_shared_vectors_C_FILES:$(top_srcdir)/../../powerpc/shared/vectors/%.c=$(ARCH)/%.$(OBJEXT))
 
-include_bspdir = $(includedir)/bsp
-include_bsp_HEADERS = $(top_srcdir)/../shared/vectors/vectors.h
+$(ARCH)/%.$(OBJEXT): $(top_srcdir)/../../powerpc/shared/vectors/%.c $(ARCH)/$(dirstamp)
+	${COMPILE} -o $@ -c $<
 
-all-local: $(PREINSTALL_FILES) $(OBJS)
+powerpc_shared_vectors_S_FILES = \
+    $(top_srcdir)/../../powerpc/shared/vectors/vectors.S
+OBJS += \
+    $(powerpc_shared_vectors_S_FILES:$(top_srcdir)/../../powerpc/shared/vectors/%.S=$(ARCH)/%.$(OBJEXT))
+
+$(ARCH)/%.$(OBJEXT): $(top_srcdir)/../../powerpc/shared/vectors/%.S $(ARCH)/$(dirstamp)
+	${CCASCOMPILE} -o $@ -c $<
+
+noinst_DATA = $(OBJS)
+
+all-local: $(PREINSTALL_FILES)
 
 PREINSTALL_FILES =
@@ -34,5 +36,5 @@
 	@: > $(PROJECT_INCLUDE)/bsp/$(dirstamp)
 
-$(PROJECT_INCLUDE)/bsp/vectors.h: $(top_srcdir)/../shared/vectors/vectors.h $(PROJECT_INCLUDE)/bsp/$(dirstamp)
+$(PROJECT_INCLUDE)/bsp/vectors.h: $(top_srcdir)/../../powerpc/shared/vectors/vectors.h $(PROJECT_INCLUDE)/bsp/$(dirstamp)
 	$(INSTALL_DATA) $< $(PROJECT_INCLUDE)/bsp/vectors.h
 PREINSTALL_FILES += $(PROJECT_INCLUDE)/bsp/vectors.h
Index: c/src/lib/libbsp/powerpc/motorola_powerpc/vme/Makefile.am
===================================================================
--- c/src/lib/libbsp/powerpc/motorola_powerpc/vme/Makefile.am	(revision 926ec3b2855673ca51e2891fec1bd537d84eded6)
+++ c/src/lib/libbsp/powerpc/motorola_powerpc/vme/Makefile.am	(revision c6592940cc0f4b478cb8b2673e57103b061734d4)
@@ -3,27 +3,31 @@
 ##
 
-VPATH = @srcdir@:@srcdir@/../../shared/vme:@srcdir@/../../../shared/vmeUniverse:
-
-H_FILES = ../pci/pci.h ../irq/irq.h ../vme/VME.h ../vme/VMEConfig.h
-
-C_FILES = vmeUniverse.c vmeconfig.c
-
-C_O_FILES = $(C_FILES:%.c=$(ARCH)/%.$(OBJEXT))
-
-OBJS = $(C_O_FILES)
-
-include_bspdir = $(includedir)/bsp
-include_bsp_HEADERS = ../../shared/vme/VMEConfig.h
-include_bsp_HEADERS += ../../shared/vme/VME.h
-include_bsp_HEADERS += ../../../shared/vmeUniverse/vmeUniverse.h
-
-all-local: $(PREINSTALL_FILES) $(OBJS)
-
 include $(top_srcdir)/../../../../automake/compile.am
 include $(top_srcdir)/../../../../automake/lib.am
 
-#
-# (OPTIONAL) Add local stuff here using +=
-#
+include_bspdir = $(includedir)/bsp
+
+include_bsp_HEADERS = $(top_srcdir)/../../shared/vmeUniverse/vmeUniverse.h
+shared_vmeUniverse_C_FILES = \
+    $(top_srcdir)/../../shared/vmeUniverse/vmeUniverse.c
+OBJS = \
+    $(shared_vmeUniverse_C_FILES:$(top_srcdir)/../../shared/vmeUniverse/%.c=$(ARCH)/%.$(OBJEXT))
+
+$(ARCH)/%.$(OBJEXT): $(top_srcdir)/../../shared/vmeUniverse/%.c $(ARCH)/$(dirstamp)
+	${COMPILE} -o $@ -c $<
+
+include_bsp_HEADERS += $(top_srcdir)/../../powerpc/shared/vme/VMEConfig.h
+include_bsp_HEADERS += $(top_srcdir)/../../powerpc/shared/vme/VME.h
+powerpc_shared_vme_C_FILES = \
+    $(top_srcdir)/../../powerpc/shared/vme/vmeconfig.c
+OBJS += \
+    $(powerpc_sharec_vme_C_FILES:$(top_srcdir)/../../powerpc/shared/vme/%.c=$(ARCH)/%.$(OBJEXT))
+
+$(ARCH)/%.$(OBJEXT): $(top_srcdir)/../../powerpc/shared/vme/%.c $(ARCH)/$(dirstamp)
+	${COMPILE} -o $@ -c $<
+
+noinst_DATA = $(OBJS)
+
+all-local: $(PREINSTALL_FILES)
 
 PREINSTALL_FILES =
@@ -33,15 +37,15 @@
 	@: > $(PROJECT_INCLUDE)/bsp/$(dirstamp)
 
-$(PROJECT_INCLUDE)/bsp/VMEConfig.h: ../../shared/vme/VMEConfig.h $(PROJECT_INCLUDE)/bsp/$(dirstamp)
+$(PROJECT_INCLUDE)/bsp/vmeUniverse.h: $(top_srcdir)/../../shared/vmeUniverse/vmeUniverse.h $(PROJECT_INCLUDE)/bsp/$(dirstamp)
+	$(INSTALL_DATA) $< $(PROJECT_INCLUDE)/bsp/vmeUniverse.h
+PREINSTALL_FILES += $(PROJECT_INCLUDE)/bsp/vmeUniverse.h
+
+$(PROJECT_INCLUDE)/bsp/VMEConfig.h: $(top_srcdir)/../../powerpc/shared/vme/VMEConfig.h $(PROJECT_INCLUDE)/bsp/$(dirstamp)
 	$(INSTALL_DATA) $< $(PROJECT_INCLUDE)/bsp/VMEConfig.h
 PREINSTALL_FILES += $(PROJECT_INCLUDE)/bsp/VMEConfig.h
 
-$(PROJECT_INCLUDE)/bsp/VME.h: ../../shared/vme/VME.h $(PROJECT_INCLUDE)/bsp/$(dirstamp)
+$(PROJECT_INCLUDE)/bsp/VME.h: $(top_srcdir)/../../powerpc/shared/vme/VME.h $(PROJECT_INCLUDE)/bsp/$(dirstamp)
 	$(INSTALL_DATA) $< $(PROJECT_INCLUDE)/bsp/VME.h
 PREINSTALL_FILES += $(PROJECT_INCLUDE)/bsp/VME.h
 
-$(PROJECT_INCLUDE)/bsp/vmeUniverse.h: ../../../shared/vmeUniverse/vmeUniverse.h $(PROJECT_INCLUDE)/bsp/$(dirstamp)
-	$(INSTALL_DATA) $< $(PROJECT_INCLUDE)/bsp/vmeUniverse.h
-PREINSTALL_FILES += $(PROJECT_INCLUDE)/bsp/vmeUniverse.h
-
 include $(top_srcdir)/../../../../automake/local.am
