altos: Build pdclib locally if necessary
[fw/altos] / src / lpc / Makefile-lpc.defs
1 ifndef TOPDIR
2 TOPDIR=..
3 endif
4
5 include $(TOPDIR)/Makedefs
6
7 vpath % $(TOPDIR)/lpc:$(TOPDIR)/product:$(TOPDIR)/drivers:$(TOPDIR)/core:$(TOPDIR)/util:$(TOPDIR)/kalman:$(TOPDIR/aes):$(TOPDIR)
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
22 ifndef VERSION
23 include $(TOPDIR)/Version
24 endif
25
26 ELFTOHEX=$(TOPDIR)/../ao-tools/ao-elftohex/ao-elftohex
27 CC=$(ARM_CC)
28
29 AO_CFLAGS=-I. -I$(TOPDIR)/lpc -I$(TOPDIR)/core -I$(TOPDIR)/drivers -I$(TOPDIR)/product -I$(TOPDIR) $(PDCLIB_INCLUDES) 
30 LPC_CFLAGS=-std=gnu99 -mlittle-endian -mcpu=cortex-m0 -mthumb -ffreestanding -nostdlib $(AO_CFLAGS)
31
32 NICKLE=nickle
33
34 LIBS=$(PDCLIB_LIBS_M0) -lgcc
35
36 V=0
37 # The user has explicitly enabled quiet compilation.
38 ifeq ($(V),0)
39 quiet = @printf "  $1 $2 $@\n"; $($1)
40 endif
41 # Otherwise, print the full command line.
42 quiet ?= $($1)
43
44 .c.o:
45         $(call quiet,CC) -c $(CFLAGS) -o $@ $<