1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
|
#
# Makefile for ACATS -- Helps pull BSP specific information
# into a form the script can use
#
include $(RTEMS_MAKEFILE_PATH)/Makefile.inc
include $(RTEMS_CUSTOM)
include $(PROJECT_ROOT)/make/leaf.cfg
# Tool helpers
rtemsdir=${RTEMS_MAKEFILE_PATH}
GNATMAKE=$(AS:as=gnatmake)
GNATCHOP=$(AS:as=gnatchop)
OBJCOPY=$(AS:as=objcopy)
CARGS = -B${rtemsdir}/lib/ -specs bsp_specs -qrtems
# GCC 4.6 in SVN doesn't like -G0... :(
CPU_CFLAGS_ADA=$(shell echo $(CPU_CFLAGS) | sed -e 's/-GO//')
CARGS += $(LDFLAGS) $(AM_LDFLAGS)
# RTS= --RTS=$(shell $(CC) -print-multi-directory $(CFLAGS))
all: RTEMS_SETTINGS rtems_init.o
rtems_init.o: ${ADASCRIPTDIR}/rtems_init.c
$(CC) $(CFLAGS) -c ${ADASCRIPTDIR}/rtems_init.c
RTEMS_SETTINGS: stamp-targetrun stamp-targetgcc \
stamp-targetchop stamp-targetmake
cat $? >RTEMS_SETTINGS
stamp-targetrun:
echo "target_run() {" >$@
ifeq ($(RTEMS_BSP),pc386)
echo " pc386 -C -l 60 -c $$"'*' >> $@
endif # pc386
ifeq ($(RTEMS_BSP),m32csim)
echo " m32csim -C -l 20 -c $$"'*' >> $@
endif # m32csim
ifeq ($(RTEMS_BSP),jmr3904)
echo " jmr3904 -C -l 240 $$"'*' >> $@
endif # jmr3904
ifeq ($(RTEMS_BSP),lm32_evr)
echo " qemu-lm32_evr -C -l 240 $$"'*' >> $@
endif # lm32_evr
ifeq ($(RTEMS_BSP),m32rsim)
echo " m32rsim -C -l 180 $$"'*' >> $@
endif # m32rsim
ifeq ($(RTEMS_BSP),psim)
echo " psim -C -l 180 $$"'*' >> $@
endif # psim
ifeq ($(RTEMS_BSP),erc32)
echo " runerc32 -C -c $$"'*' >> $@
endif # erc32
ifeq ($(RTEMS_BSP),sis)
echo " sis -C -l 180 $$"'*' >> $@
endif # sis
ifeq ($(RTEMS_BSP),edb7312)
echo " edb7312 -C -l 180 $$"'*' >> $@
endif # edb7312
ifeq ($(RTEMS_BSP),simsh1)
echo " simsh -C -l 60 $$"'*' >> $@
endif # simsh1
ifeq ($(RTEMS_BSP),h8sim)
echo " h8sim -C -l 60 $$"'*' >> $@
endif # h8sim
ifeq ($(RTEMS_BSP),qemuppc)
echo " qemuppc -C -l 90 $$"'*' >> $@
endif # qemuppc
ifeq ($(RTEMS_BSP),uC5282)
echo " $(OBJCOPY) -O binary $$"'*' "$$"'*'.ralf >>$@
echo " uC5282 -C -l 90 $$"'*' >> $@
#echo " rm -f "$$'*'.ralf >>$@
endif # uC5282
ifeq ($(RTEMS_BSP),mcf5206elite)
echo " nosim $$"'*' >> $@
endif # mcf5206elite
ifeq ($(RTEMS_BSP),niagara)
echo " nosim $$"'*' >> $@
endif # niagara
echo "}" >>$@
stamp-targetgcc:
echo "target_gcc() {" >$@
echo " $(CC) $$"'*' >> $@
echo "}" >>$@
stamp-targetchop:
echo "target_gnatchop() {" >$@
echo " $(GNATCHOP) $$"'*' >> $@
echo "}" >>$@
stamp-targetmake:
echo "target_gnatmake() {" >$@
echo "set -x" >>$@
echo ' $(GNATMAKE) $(CPU_CFLAGS_ADA) -fstack-check -v -O $$gnatflags $$gccflags $$* -bargs -Mgnat_main -largs $(CARGS) '$(shell pwd)/rtems_init.o' $$EXTERNAL_OBJECTS' >> $@
echo "}" >>$@
# $(GNATMAKE) -v -O -gnata -gnatE -gnato $(MAIN) -g \
# -bargs -Mgnat_main \
# -largs $(CARGS) rtems_init.o
# $(SIZE) $(MAIN)
clean:
rm -f b~$(MAIN).* *.o *.ali $(MAIN) stamp-*
|