b0943e5665fb34f94ee1872755df8d0f040e83a9
[fw/altos] / src / stm-bringup / Makefile
1 vpath % ..:../kernel:../product:../drivers:../stm
2 vpath ao-make-product.5c ../util
3
4 ifndef VERSION
5 include ../Version
6 endif
7 TOPDIR=..
8 include $(TOPDIR)/Makedefs
9
10 CC=arm-none-eabi-gcc
11 OBJCOPY=arm-none-eabi-objcopy
12
13 C_LIB=$(PDCLIB_LIBS_M3)
14
15 DEF_CFLAGS=-g -std=gnu99 -Os -mlittle-endian -mthumb -ffreestanding -nostdlib -I. -I../stm $(PDCLIB_INCLUDES)
16
17 # to run from SRAM
18 LD_FLAGS_RAM=-L../stm -Wl,-Taltos-ram.ld
19 LD_FLAGS=-L../stm -Wl,-Tbringup.ld
20
21 CFLAGS=$(DEF_CFLAGS) -mcpu=cortex-m3 -DCONFIG_STM32L_DISCOVERY
22
23 SRC=bringup.c ao_interrupt.c
24 OBJ=$(SRC:.c=.o)
25
26 all: bringup-ram.elf bringup.elf
27
28 %.bin: %.elf
29         $(OBJCOPY) -O binary $^ $@
30
31 bringup.elf: $(OBJ) bringup.ld
32         $(CC) $(CFLAGS) $(LD_FLAGS) -o $@ $(OBJ) $(C_LIB) -lgcc
33
34 bringup-ram.elf: $(OBJ) altos-ram.ld
35         $(CC) $(CFLAGS) $(LD_FLAGS_RAM) -o $@ $(OBJ) $(C_LIB) -lgcc
36
37 clean:
38         rm -f *.o
39         rm -rf *.elf
40         rm -rf *.bin
41
42 .PHONY: all clean
43
44 install:
45
46 uninstall: