altos/micropeak-v2.0: Finish hardware bring-up
[fw/altos] / src / micropeak-v2.0 / Makefile
1 #
2 # Tiny AltOS build
3 #
4 #
5
6 include ../stm32l0/Makefile.defs
7
8 PUBLISH_DIR=$(HOME)/altusmetrumllc/Binaries
9 PUBLISH_HEX=$(PUBLISH_DIR)/$(HEX)
10
11 MICRO_SRC=\
12         ao_report_micro.c \
13         ao_log_micro.c \
14         ao_microflight.c \
15         ao_microkalman.c
16
17 ALTOS_SRC_ = \
18         ao_micropeak.c \
19         ao_spi_stm.c \
20         ao_dma_stm.c \
21         ao_led_stmf0.c \
22         ao_timer.c \
23         ao_ms5607.c \
24         ao_exti_stm.c \
25         ao_convert_pa.c \
26         ao_romconfig.c \
27         ao_product.c \
28         ao_panic.c \
29         ao_stdio.c \
30         ao_serial_stm.c \
31         ao_usb_stm.c \
32         ao_mutex.c \
33         ao_interrupt.c \
34         ao_cmd.c \
35         ao_config.c \
36         ao_task.c \
37         ao_data.c \
38         ao_boot_chain.c \
39         ao_microflight.c \
40         ao_report_micro.c \
41         ao_storage_stm.c \
42         ao_storage.c \
43         ao_log_micro.c \
44         ao_microkalman.c
45
46 INC=\
47         ao.h \
48         ao_pins.h \
49         ao_arch.h \
50         ao_arch_funcs.h \
51         ao_exti.h \
52         ao_ms5607.h \
53         ao_log_micro.h \
54         ao_micropeak.h \
55         altitude-pa.h \
56         ao_product.h \
57         stm32l0.h
58
59 ALTOS_SRC = \
60         ao_interrupt.c \
61         ao_panic.c \
62         ao_micro.c \
63         ao_stdio.c \
64         ao_notask.c \
65         ao_serial_stm.c \
66         ao_timer.c \
67         ao_spi_stm32l0.c \
68         ao_adc_stm32l0.c \
69         ao_ms5607.c \
70         ao_exti_stm.c \
71         ao_convert_pa.c \
72         ao_led.c \
73         ao_cmd.c \
74         ao_product.c \
75         ao_romconfig.c \
76         ao_flash_stm32l0.c \
77         ao_storage.c \
78         ao_microflight.c \
79         ao_log_micro.c \
80         ao_microkalman.c
81
82 IDPRODUCT=0x14
83 PRODUCT=MicroPeak-v2.0
84 PRODUCT_DEF=-DMICROPEAK
85
86 CFLAGS = $(PRODUCT_DEF) $(STML0_CFLAGS) -Wl,--gc-sections -ffunction-sections
87
88 PROGNAME=micropeak-v2.0
89 PROG=$(PROGNAME)-$(VERSION).elf
90 HEX=$(PROGNAME)-$(VERSION).ihx
91
92 SRC=$(ALTOS_SRC)
93 OBJ=$(SRC:.c=.o)
94
95 all: $(PROG) $(HEX)
96
97 LDFLAGS=-nostartfiles $(CFLAGS) -L$(TOPDIR)/stm32l0 -Taltos.ld -n
98
99 $(PROG): Makefile $(OBJ) micropeak.ld
100         $(call quiet,CC) $(LDFLAGS) -o $(PROG) $(OBJ) $(LIBS) -Wl,-Map=$(PROGNAME)-$(VERSION).map
101
102 distclean:      clean
103
104 clean:
105         rm -f *.o *.elf *.ihx
106         rm -f ao_product.h
107
108 publish: $(PUBLISH_HEX)
109
110 $(PUBLISH_HEX): $(HEX)
111         cp -a $(HEX) $@
112
113 install:
114
115 uninstall:
116
117 $(OBJ): $(INC)