blob: a310b4f1f2c1303e5c1db8da91235d3073c3610b (
plain) (
blame)
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
|
##
## $Id$
##
AUTOMAKE_OPTIONS = foreign 1.4
PGM = $(ARCH)/start.o
C_FILES = start.c
C_O_FILES = $(C_FILES:%.c=$(ARCH)/%.o)
OBJS = $(C_O_FILES)
include $(RTEMS_ROOT)/make/custom/@RTEMS_BSP@.cfg
include $(top_srcdir)/../../../../../../automake/compile.am
include $(top_srcdir)/../../../../../../automake/lib.am
#
# (OPTIONAL) Add local stuff here using +=
#
$(PROJECT_RELEASE)/lib/start$(LIB_VARIANT).o: $(PGM)
$(INSTALL_DATA) $< $@
$(PROJECT_RELEASE)/lib/except_vect_332_ROM$(LIB_VARIANT).o: \
$(ARCH)/except_vect_332_ROM.o
$(INSTALL_DATA) $< $@
$(PROJECT_RELEASE)/lib/ram_init$(LIB_VARIANT): \
$(ARCH)/ram_init
$(INSTALL_DATA) $< $@
$(PROJECT_RELEASE)/lib/ram_init_FW$(LIB_VARIANT): \
$(ARCH)/ram_init_FW
$(INSTALL_DATA) $< $@
$(ARCH)/ram_init: $(srcdir)/start.c $(srcdir)/ram_init.ld \
$(srcdir)/ram_init.sed
sed -f $(srcdir)/ram_init.sed $(srcdir)/start.c >$(ARCH)/ram_init.S
$(CC) -D SIM_CRB=0x0000 -E $(ARCH)/ram_init.S >$(ARCH)/ram_init1.S
sed "/.org/ {N; s/\n/%/; P;}; /\.text/P; D;" $(ARCH)/ram_init1.S | \
sort | sed "h;1{s/.*/.data/;P;g;};s/%.*//;P;g;s/.*%//;" \
>$(ARCH)/ram_init2.S
$(CC) -nostdlib -Wl,-T$(srcdir)/ram_init.ld $(ARCH)/ram_init2.S \
-o $(ARCH)/ram_init
$(ARCH)/ram_init_FW: $(srcdir)/ram_init.ld $(ARCH)/ram_init.S
$(CC) -D FLASHWRITE -D SIM_CRB=0x0000 -E $(ARCH)/ram_init.S \
>$(ARCH)/ram_init_FW1.S
sed "/.org/ {N; s/\n/%/; P;}; /\.text/P; D;" $(ARCH)/ram_init_FW1.S | \
sort | sed "h;1{s/.*/.data/;P;g;};s/%.*//;P;g;s/.*%//;" \
>$(ARCH)/ram_init_FW2.S
$(CC) -nostdlib -Wl,-T$(srcdir)/ram_init.ld $(ARCH)/ram_init_FW2.S \
-o $(ARCH)/ram_init_FW
TMPINSTALL_FILES += $(PROJECT_RELEASE)/lib/start$(LIB_VARIANT).o \
$(PROJECT_RELEASE)/lib/ram_init$(LIB_VARIANT) \
$(PROJECT_RELEASE)/lib/ram_init_FW$(LIB_VARIANT) \
$(PROJECT_RELEASE)/lib/except_vect_332_ROM$(LIB_VARIANT).o
all-local: $(ARCH) $(OBJS) $(PGM) $(TMPINSTALL_FILES)
.PRECIOUS: $(PGM)
EXTRA_DIST = start.c except_vect_332_ROM.S ram_init.ld ram_init.sed
include $(top_srcdir)/../../../../../../automake/local.am
|