summaryrefslogtreecommitdiffstats
path: root/make/custom/gba.cfg
diff options
context:
space:
mode:
authorJoel Sherrill <joel.sherrill@OARcorp.com>2005-06-17 16:12:33 +0000
committerJoel Sherrill <joel.sherrill@OARcorp.com>2005-06-17 16:12:33 +0000
commit3f0bb34c6eb5039ed0d9a27d0a8c350019058fbe (patch)
tree5d16f7db03b3f0a19539caeca220590acf7b84c8 /make/custom/gba.cfg
parent2005-06-17 Joel Sherrill <joel@OARcorp.com> (diff)
downloadrtems-3f0bb34c6eb5039ed0d9a27d0a8c350019058fbe.tar.bz2
2005-06-17 Markku Puro <markku.puro@kopteri.net>
* Makefile.am: Adding GameBoy Advance BSP. * custom/gba.cfg: New file.
Diffstat (limited to 'make/custom/gba.cfg')
-rw-r--r--make/custom/gba.cfg60
1 files changed, 60 insertions, 0 deletions
diff --git a/make/custom/gba.cfg b/make/custom/gba.cfg
new file mode 100644
index 0000000000..521b1f99a9
--- /dev/null
+++ b/make/custom/gba.cfg
@@ -0,0 +1,60 @@
+#
+# Config file for Gameboy Advance ARM --
+#
+# $Id$
+#
+
+include $(RTEMS_ROOT)/make/custom/default.cfg
+
+RTEMS_CPU=arm
+RTEMS_CPU_MODEL=arm7tdmi
+
+# This is the actual bsp directory used during the build process.
+RTEMS_BSP_FAMILY=gba
+
+# This contains the compiler options necessary to select the CPU model
+# and (hopefully) optimize for it.
+#
+#CPU_CFLAGS = -mcpu=$(RTEMS_CPU_MODEL) -mthumb -mthumb-interwork -msoft-float -mstructure-size-boundary=8
+CPU_CFLAGS = -mcpu=$(RTEMS_CPU_MODEL) -msoft-float -mstructure-size-boundary=8
+
+# optimize flag: typically -0, could use -O4 or -fast
+# -O4 is ok for RTEMS
+# NOTE2: some level of -O may be actually required by inline assembler
+CFLAGS_OPTIMIZE_V=-O3
+CXXFLAGS_OPTIMIZE_V=-O3
+
+# debug flags: typically none, but at least -O1 is required due to
+# this BSP using inlined code
+CFLAGS_DEBUG_V=-O1 -ggdb
+CXXFLAGS_DEBUG_V=-O1 -ggdb
+
+# profile flag:
+CFLAGS_PROFILE_V=-pg
+CXXFLAGS_PROFILE_V=-pg
+
+define make-exe
+ $(LINK.c) $(AM_CFLAGS) $(AM_LDFLAGS) -static \
+ -Wl,-Map,$(basename $@).map -o $(basename $@).obj \
+ $(LINK_OBJS) $(LINK_LIBS)
+ $(OBJCOPY) -O binary $(basename $@).obj $@
+ $(OBJCOPY) -O binary --remove-section=.comment \
+ --remove-section=.note --strip-unneeded \
+ $(basename $@).obj $(basename $@).gba
+ $(NM) -g -n $(basename $@).obj > $(basename $@).num
+ $(SIZE) $(basename $@).obj
+endef
+
+define make-cxx-exe
+ $(LINK.cc) $(AM_CFLAGS) $(AM_CXXFLAGS) $(AM_LDFLAGS) -static \
+ -Wl,-Map,$(basename $@).map -o $(basename $@).obj \
+ $(LINK_OBJS) $(LINK_LIBS)
+ $(OBJCOPY) -O binary $(basename $@).obj $@
+ $(OBJCOPY) -O binary --remove-section=.comment \
+ --remove-section=.note --strip-unneeded \
+ $(basename $@).obj $(basename $@).gba
+ $(NM) -g -n $(basename $@).obj > $(basename $@).num
+ $(SIZE) $(basename $@).obj
+endef
+
+# Miscellaneous additions go here