1 | # |
---|
2 | # Config file for Gameboy Advance ARM -- |
---|
3 | # |
---|
4 | # $Id$ |
---|
5 | # |
---|
6 | |
---|
7 | include $(RTEMS_ROOT)/make/custom/default.cfg |
---|
8 | |
---|
9 | RTEMS_CPU=arm |
---|
10 | RTEMS_CPU_MODEL=arm7tdmi |
---|
11 | |
---|
12 | # This is the actual bsp directory used during the build process. |
---|
13 | RTEMS_BSP_FAMILY=gba |
---|
14 | |
---|
15 | # This contains the compiler options necessary to select the CPU model |
---|
16 | # and (hopefully) optimize for it. |
---|
17 | # |
---|
18 | #CPU_CFLAGS = -mcpu=$(RTEMS_CPU_MODEL) -mthumb -mthumb-interwork -msoft-float -mstructure-size-boundary=8 |
---|
19 | CPU_CFLAGS = -mcpu=$(RTEMS_CPU_MODEL) -msoft-float -mstructure-size-boundary=8 |
---|
20 | |
---|
21 | # optimize flag: typically -0, could use -O4 or -fast |
---|
22 | # -O4 is ok for RTEMS |
---|
23 | # NOTE2: some level of -O may be actually required by inline assembler |
---|
24 | CFLAGS_OPTIMIZE_V=-O3 |
---|
25 | CXXFLAGS_OPTIMIZE_V=-O3 |
---|
26 | |
---|
27 | # debug flags: typically none, but at least -O1 is required due to |
---|
28 | # this BSP using inlined code |
---|
29 | CFLAGS_DEBUG_V=-O1 -ggdb |
---|
30 | CXXFLAGS_DEBUG_V=-O1 -ggdb |
---|
31 | |
---|
32 | define make-exe |
---|
33 | $(LINK.c) $(AM_CFLAGS) $(AM_LDFLAGS) \ |
---|
34 | -Wl,-Map,$(basename $@).map -o $(basename $@).obj \ |
---|
35 | $(LINK_OBJS) $(LINK_LIBS) |
---|
36 | $(OBJCOPY) -O binary $(basename $@).obj $@ |
---|
37 | $(OBJCOPY) -O binary --remove-section=.comment \ |
---|
38 | --remove-section=.note --strip-unneeded \ |
---|
39 | $(basename $@).obj $(basename $@).gba |
---|
40 | $(NM) -g -n $(basename $@).obj > $(basename $@).num |
---|
41 | $(SIZE) $(basename $@).obj |
---|
42 | endef |
---|
43 | |
---|
44 | define make-cxx-exe |
---|
45 | $(LINK.cc) $(AM_CFLAGS) $(AM_CXXFLAGS) $(AM_LDFLAGS) \ |
---|
46 | -Wl,-Map,$(basename $@).map -o $(basename $@).obj \ |
---|
47 | $(LINK_OBJS) $(LINK_LIBS) |
---|
48 | $(OBJCOPY) -O binary $(basename $@).obj $@ |
---|
49 | $(OBJCOPY) -O binary --remove-section=.comment \ |
---|
50 | --remove-section=.note --strip-unneeded \ |
---|
51 | $(basename $@).obj $(basename $@).gba |
---|
52 | $(NM) -g -n $(basename $@).obj > $(basename $@).num |
---|
53 | $(SIZE) $(basename $@).obj |
---|
54 | endef |
---|
55 | |
---|
56 | # Miscellaneous additions go here |
---|