Add TeleBalloon v1.2 support
[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 load_csv.5c kalman
12 vpath matrix.5c kalman
13
14 include Version
15
16 ifneq ($(shell which sdcc),)
17         SUBDIRS+=\
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-v0.0 telebt-v0.1 \
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         teleballoon-v1.2
28 endif
29
30 ifneq ($(shell which avr-gcc),)
31         SUBDIRS += telescience-v0.1 telepyro-v0.1
32 endif
33
34 ifneq ($(shell which arm-none-eabi-gcc),)
35         SUBDIRS += megametrum-v0.1 stm-bringup stm-demo telelco-v0.1
36 endif
37
38 all: all-local all-recursive
39
40 RECURSIVE_TARGETS = all-recursive clean-recursive install-recursive
41
42 $(RECURSIVE_TARGETS):
43         @target=`echo $@ | sed 's/-recursive//'`; \
44         for subdir in $(SUBDIRS); do \
45                 echo "Making $$target in $$subdir"; \
46                 (cd $$subdir && $(MAKE) $$target) || exit 1; \
47         done
48
49 distclean:      clean
50
51 clean: clean-local clean-recursive
52
53 install: install-recursive
54
55 uninstall:
56
57 all-recursive: all-local
58
59 all-local: altitude.h altitude-pa.h ao_kalman.h ao_whiten.h
60
61 altitude.h: make-altitude
62         nickle $< > $@
63
64 altitude-pa.h: make-altitude-pa
65         nickle $< > $@
66
67 ao_kalman.h: make-kalman kalman.5c kalman_filter.5c load_csv.5c matrix.5c
68         bash $< kalman > $@
69
70 ao_whiten.h: make-whiten
71         nickle $< > $@
72
73 clean-local:
74         rm -f altitude.h ao_kalman.h