]> git.sur5r.net Git - openocd/blob - testing/examples/STR912Test/makefile
- added str912 test example, and test result
[openocd] / testing / examples / STR912Test / makefile
1 #\r
2 #       !!!! Do NOT edit this makefile with an editor which replace tabs by spaces !!!!    \r
3 #\r
4 ##############################################################################################\r
5\r
6 # On command line:\r
7 #\r
8 # make all = Create project\r
9 #\r
10 # make clean = Clean project files.\r
11 #\r
12 # To rebuild project do "make clean" and "make all".\r
13 #\r
14 \r
15 ##############################################################################################\r
16 # Start of default section\r
17 #\r
18 \r
19 TRGT = arm-elf-\r
20 CC   = $(TRGT)gcc\r
21 CP   = $(TRGT)objcopy\r
22 AS   = $(TRGT)gcc -x assembler-with-cpp\r
23 BIN  = $(CP) -O ihex \r
24 \r
25 MCU  = arm9e\r
26 \r
27 # List all default C defines here, like -D_DEBUG=1\r
28 DDEFS = \r
29 \r
30 # List all default ASM defines here, like -D_DEBUG=1\r
31 DADEFS = \r
32 \r
33 # List all default directories to look for include files here\r
34 DINCDIR = \r
35 \r
36 # List the default directory to look for the libraries here\r
37 DLIBDIR =\r
38 \r
39 # List all default libraries here\r
40 DLIBS = \r
41 \r
42 #\r
43 # End of default section\r
44 ##############################################################################################\r
45 \r
46 ##############################################################################################\r
47 # Start of user section\r
48 #\r
49 \r
50 # Define project name here\r
51 PROJECT = test\r
52 \r
53 # Define linker script file here\r
54 LDSCRIPT_RAM = ./prj/str912_ram.ld\r
55 LDSCRIPT_ROM = ./prj/str912_rom.ld\r
56 \r
57 # List all user C define here, like -D_DEBUG=1\r
58 UDEFS = \r
59 \r
60 # Define ASM defines here\r
61 UADEFS = \r
62 \r
63 # List C source files here\r
64 SRC  = ./src/main.c\r
65 \r
66 # List ASM source files here\r
67 ASRC = ./src/startup.s\r
68 \r
69 # List all user directories here\r
70 UINCDIR = ./inc\r
71 \r
72 # List the user directory to look for the libraries here\r
73 ULIBDIR =\r
74 \r
75 # List all user libraries here\r
76 ULIBS = \r
77 \r
78 # Define optimisation level here\r
79 OPT = -O0\r
80 \r
81 #\r
82 # End of user defines\r
83 ##############################################################################################\r
84 \r
85 \r
86 INCDIR  = $(patsubst %,-I%,$(DINCDIR) $(UINCDIR))\r
87 LIBDIR  = $(patsubst %,-L%,$(DLIBDIR) $(ULIBDIR))\r
88 DEFS    = $(DDEFS) $(UDEFS)\r
89 ADEFS   = $(DADEFS) $(UADEFS)\r
90 OBJS    = $(ASRC:.s=.o) $(SRC:.c=.o)\r
91 LIBS    = $(DLIBS) $(ULIBS)\r
92 MCFLAGS = -mcpu=$(MCU)\r
93 \r
94 ASFLAGS = $(MCFLAGS) -g -gdwarf-2 -Wa,-amhls=$(<:.s=.lst) $(ADEFS)\r
95 CPFLAGS = $(MCFLAGS) $(OPT) -gdwarf-2 -mthumb-interwork -fomit-frame-pointer -Wall -Wstrict-prototypes -fverbose-asm -Wa,-ahlms=$(<:.c=.lst) $(DEFS)\r
96 LDFLAGS_RAM = $(MCFLAGS) -nostartfiles -T$(LDSCRIPT_RAM) -Wl,-Map=$(PROJECT)_ram.map,--cref,--no-warn-mismatch $(LIBDIR)\r
97 LDFLAGS_ROM = $(MCFLAGS) -nostartfiles -T$(LDSCRIPT_ROM) -Wl,-Map=$(PROJECT)_rom.map,--cref,--no-warn-mismatch $(LIBDIR)\r
98 \r
99 # Generate dependency information\r
100 CPFLAGS += -MD -MP -MF .dep/$(@F).d\r
101 \r
102 #\r
103 # makefile rules\r
104 #\r
105 \r
106 all: RAM ROM\r
107 \r
108 RAM: $(OBJS) $(PROJECT)_ram.elf $(PROJECT)_ram.hex\r
109 \r
110 ROM: $(OBJS) $(PROJECT)_rom.elf $(PROJECT)_rom.hex\r
111 \r
112 %o : %c\r
113         $(CC) -c $(CPFLAGS) -I . $(INCDIR) $< -o $@\r
114 \r
115 %o : %s\r
116         $(AS) -c $(ASFLAGS) $< -o $@\r
117 \r
118 %ram.elf: $(OBJS)\r
119         $(CC) $(OBJS) $(LDFLAGS_RAM) $(LIBS) -o $@\r
120 \r
121 %rom.elf: $(OBJS)\r
122         $(CC) $(OBJS) $(LDFLAGS_ROM) $(LIBS) -o $@\r
123 \r
124 %hex: %elf\r
125         $(BIN) $< $@\r
126 \r
127 clean:\r
128         -rm -f $(OBJS)\r
129         -rm -f $(PROJECT)_ram.elf\r
130         -rm -f $(PROJECT)_ram.map\r
131         -rm -f $(PROJECT)_ram.hex\r
132         -rm -f $(PROJECT)_rom.elf\r
133         -rm -f $(PROJECT)_rom.map\r
134         -rm -f $(PROJECT)_rom.hex\r
135         -rm -f $(SRC:.c=.c.bak)\r
136         -rm -f $(SRC:.c=.lst)\r
137         -rm -f $(ASRC:.s=.s.bak)\r
138         -rm -f $(ASRC:.s=.lst)\r
139         -rm -fR .dep\r
140 \r
141\r
142 # Include the dependency files, should be the last of the makefile\r
143 #\r
144 -include $(shell mkdir .dep 2>/dev/null) $(wildcard .dep/*)\r
145 \r
146 # *** EOF ***