Merge branch 'master' of ssh://git.gag.com/scm/git/fw/altos
[fw/altos] / src / stmf0 / Makefile-stmf0.defs
1 ifndef TOPDIR
2 TOPDIR=..
3 endif
4
5 include $(TOPDIR)/Makedefs
6
7 vpath % $(TOPDIR)/stmf0:$(TOPDIR)/product:$(TOPDIR)/drivers:$(TOPDIR)/kernel:$(TOPDIR)/util:$(TOPDIR)/kalman:$(TOPDIR)/aes:$(TOPDIR):$(TOPDIR)/math
8 vpath make-altitude $(TOPDIR)/util
9 vpath make-kalman $(TOPDIR)/util
10 vpath kalman.5c $(TOPDIR)/kalman
11 vpath kalman_filter.5c $(TOPDIR)/kalman
12 vpath load_csv.5c $(TOPDIR)/kalman
13 vpath matrix.5c $(TOPDIR)/kalman
14 vpath ao-make-product.5c $(TOPDIR)/util
15
16 .SUFFIXES: .elf .ihx
17
18 .elf.ihx:
19         $(ELFTOHEX) --output=$@ $*.elf
20
21 ifndef VERSION
22 include $(TOPDIR)/Version
23 endif
24
25 ELFTOHEX=$(TOPDIR)/../ao-tools/ao-elftohex/ao-elftohex
26 CC=$(ARM_CC)
27
28 WARN_FLAGS=-Wall -Wextra -Werror -Wcast-align
29
30 AO_CFLAGS=-I. -I$(TOPDIR)/stmf0 -I$(TOPDIR)/kernel -I$(TOPDIR)/drivers \
31         -DNEWLIB_INTEGER_PRINTF_SCANF \
32         -I$(TOPDIR)/product -I$(TOPDIR) -I$(TOPDIR)/math \
33         -isystem $(NEWLIB_NANO)/arm-none-eabi/include
34
35 STMF0_CFLAGS=-std=gnu99 -mlittle-endian -mcpu=cortex-m0 -mthumb\
36         -ffreestanding -nostdlib $(AO_CFLAGS) $(WARN_FLAGS)
37
38 NICKLE=nickle
39
40 LIBS=-L$(NEWLIB_NANO)/arm-none-eabi/lib/thumb/v6-m -lc -lm -lgcc
41
42 V=0
43 # The user has explicitly enabled quiet compilation.
44 ifeq ($(V),0)
45 quiet = @printf "  $1 $2 $@\n"; $($1)
46 endif
47 # Otherwise, print the full command line.
48 quiet ?= $($1)
49
50 .c.o:
51         $(call quiet,CC) -c $(CFLAGS) -o $@ $<