summaryrefslogtreecommitdiffstats
path: root/make/custom/mcp750.cfg
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--make/custom/mcp750.cfg38
1 files changed, 17 insertions, 21 deletions
diff --git a/make/custom/mcp750.cfg b/make/custom/mcp750.cfg
index e2446cd902..19f2d973e1 100644
--- a/make/custom/mcp750.cfg
+++ b/make/custom/mcp750.cfg
@@ -29,14 +29,6 @@ RTEMS_BSP_FAMILY=motorola_powerpc
# This defines the base address of the exception table.
# NOTE: Vectors are actually at 0xFFF00000 but file starts at offset 0x0100
#
-# PPC_ABI (ppc)
-# This defines the calling convention (Application Binary Interface)
-# used in this configuration. EABI is the only one supported.
-#
-# PPC_ASM (ppc)
-# This defines the assembly language format used in this configuration.
-# ELF is the only one supported.
-#
# PPC_USE_SPRG (RTEMS PowerPC port)
# If defined, then the PowerPC specific code in RTEMS will use some
# of the special purpose registers to slightly optimize interrupt
@@ -57,8 +49,6 @@ define make-target-options
@echo "#define PPCN_60X_USE_NONE 1" >>$@
@echo "#define PPC_USE_DATA_CACHE 1" >>$@
@echo "#define PPC_VECTOR_FILE_BASE 0x0100" >>$@
- @echo "#define PPC_ABI PPC_ABI_EABI" >>$@
- @echo "#define PPC_ASM PPC_ASM_ELF" >>$@
@echo "#define PPC_USE_SPRG 1" >>$@
endef
@@ -68,7 +58,7 @@ endef
# NOTE : cheking egcc 1.1.1 source code shows that the last know processor
# is the 604 model and that this is the default generation option.
#
-# CPU_CFLAGS = -mcpu=750
+CPU_CFLAGS = -mcpu=750
# optimize flag: typically -0, could use -O4 or -fast
# -O4 is ok for RTEMS
@@ -78,9 +68,14 @@ endef
# As far as I know, small data are pointer impose a very specific compliation
# model => not used.
# Currently the sdata2 and sbss2 sections are empty => r2 is not used...
-CFLAGS_OPTIMIZE_V=-O4 -mmultiple -mstring -mstrict-align -mcpu=750
+CFLAGS_OPTIMIZE_V=-O4 -mmultiple -mstring -mstrict-align
#CFLAGS_OPTIMIZE_V=-O4 -fno-keep-inline-functions -fvolatile-global -fvolatile -mstrict-align -mcpu=750
+# debug flags: typically none, but at least -O1 is required due to this
+# BSP using inlined code
+CFLAGS_DEBUG_V = -O1 -mmultiple -mstring -mstrict-align
+
+
# The following is a ld command file which works without using the
# -specs system in gcc 2.8. IT HAS NEVER BEEN TESTED WITH THIS BSP!!!
# $(LD) $(XLDFLAGS) -T $(LINKCMDS) \
@@ -94,18 +89,19 @@ CFLAGS_OPTIMIZE_V=-O4 -mmultiple -mstring -mstrict-align -mcpu=750
# $(LD_LIBS) \
# -Wl,-\( -Wl,-lc -Wl,-lrtemsall -Wl,-lgcc -Wl,-\)
define make-exe
- $(CC) $(CPPFLAGS) $(CFLAGS) -o $@ $(LINK_OBJS) $(LINK_LIBS)
+ $(LINK.c) $(AM_CFLAGS) $(AM_LDFLAGS) \
+ -o $@ $(LINK_OBJS) $(LINK_LIBS)
$(NM) -g -n $@ > $(basename $@).num
$(SIZE) $@
+ test -d ${PROJECT_RELEASE}/bin || mkdir ${PROJECT_RELEASE}/bin
$(CP) $@ $(PROJECT_ROOT)/powerpc-rtems/c/mcp750/lib/libbsp/powerpc/$(RTEMS_BSP_FAMILY)/bootloader/$(ARCH); \
- cd $(PROJECT_ROOT)/powerpc-rtems/c/mcp750/lib/libbsp/powerpc/$(RTEMS_BSP_FAMILY)/bootloader; \
- $(MAKE) bootloader BINARY_LOADED=$(basename $@).exe; \
- COMPLETE_FILE_NAME=$(basename $@).exe ;\
- echo $${COMPLETE_FILE_NAME} ;\
- FILE_NAME=`basename $${COMPLETE_FILE_NAME}` ;\
- echo $${FILE_NAME} ;\
- mkdir -p $(PROJECT_ROOT)/mcp750/bin ;\
- $(CP) bootloader $(PROJECT_ROOT)/mcp750/bin/$${FILE_NAME}
+ ( cd $(PROJECT_ROOT)/powerpc-rtems/c/mcp750/lib/libbsp/powerpc/$(RTEMS_BSP_FAMILY)/bootloader; \
+ $(MAKE) bootloader BINARY_LOADED=$@; )
+ f=`basename $@ .exe`; \
+ cp $(PROJECT_ROOT)/powerpc-rtems/c/mcp750/lib/libbsp/powerpc/$(RTEMS_BSP_FAMILY)/bootloader/bootloader \
+ ${PROJECT_RELEASE}/bin/$${f}$(LIB_VARIANT).exe \
+ && chmod 755 \
+ ${PROJECT_RELEASE}/bin/$${f}$(LIB_VARIANT).exe
endef
# Miscellaneous additions go here