altos: Add ao_boot_chain to telemega v0.3
[fw/altos] / src / Makefile
1 #
2 # AltOS build
3 #
4
5 vpath make-altitude util
6 vpath make-altitude-pa util
7 vpath make-kalman util
8 vpath make-whiten util
9 vpath kalman.5c kalman
10 vpath kalman_filter.5c kalman
11 vpath kalman_micro.5c kalman
12 vpath load_csv.5c kalman
13 vpath matrix.5c kalman
14
15 include Version
16
17 SDCCDIRS=\
18         telemetrum-v1.2 telemetrum-v1.1 telemetrum-v1.0 \
19         teledongle-v0.2 teledongle-v0.1 \
20         telemini-v1.0 telenano-v0.1 \
21         telebt-v1.0 \
22         telemetrum-v0.1-sky telemetrum-v0.1-sirf \
23         telelaunch-v0.1 tidongle test \
24         teleterra-v0.2 teleshield-v0.1 \
25         telefire-v0.1 \
26         spiradio-v0.1
27
28 AVRDIRS=\
29         telescience-v0.1 telescience-pwm telepyro-v0.1 micropeak
30
31 ARMDIRS=\
32         telemega-v0.1 telemega-v0.3 megadongle-v0.1 stm-bringup stm-demo telelco-v0.1 \
33         telescience-v0.2
34
35 ifneq ($(shell which sdcc),)
36         SUBDIRS += $(SDCCDIRS)
37 endif
38
39 ifneq ($(shell which avr-gcc),)
40         SUBDIRS += $(AVRDIRS)
41 endif
42
43 ifneq ($(shell which arm-none-eabi-gcc),)
44         SUBDIRS += $(ARMDIRS)
45 endif
46
47 ALLDIRS=$(SDCCDIRS) $(AVRDIRS) $(ARMDIRS)
48
49 all: all-local all-recursive
50
51 RECURSIVE_TARGETS = all-recursive install-recursive
52
53 $(RECURSIVE_TARGETS):
54         @target=`echo $@ | sed 's/-recursive//'`; \
55         for subdir in $(SUBDIRS); do \
56                 echo "Making $$target in $$subdir"; \
57                 (cd $$subdir && $(MAKE) $$target) || exit 1; \
58         done
59
60 ALL_RECURSIVE_TARGETS = clean-recursive
61
62 $(ALL_RECURSIVE_TARGETS):
63         @target=`echo $@ | sed 's/-recursive//'`; \
64         for subdir in $(ALLDIRS); do \
65                 echo "Making $$target in $$subdir"; \
66                 (cd $$subdir && $(MAKE) $$target) || exit 1; \
67         done
68
69 distclean:      clean
70
71 clean: clean-local clean-recursive
72
73 install: install-recursive
74
75 uninstall:
76
77 all-recursive: all-local
78
79 all-local: altitude.h altitude-pa.h ao_kalman.h ao_whiten.h
80
81 altitude.h: make-altitude
82         nickle $< > $@
83
84 altitude-pa.h: make-altitude-pa
85         nickle $< > $@
86
87 ao_kalman.h: make-kalman kalman.5c kalman_filter.5c load_csv.5c matrix.5c
88         bash $< kalman > $@
89
90 ao_whiten.h: make-whiten
91         nickle $< > $@
92
93 clean-local:
94         rm -f altitude.h ao_kalman.h