altosdroid: initial implementation of telemetry logging.
[fw/altos] / src / Makefile
index a6615321e9f564402e6ce3a19eceaa1619338b4b..b8828d461d65e27e9c393b6163e035c48fbd39b7 100644 (file)
@@ -1,14 +1,40 @@
 #
 # AltOS build
 #
-#
-CC=sdcc
+
+vpath make-altitude util
+vpath make-altitude-pa util
+vpath make-kalman util
+vpath make-whiten util
+vpath kalman.5c kalman
+vpath kalman_filter.5c kalman
+vpath load_csv.5c kalman
+vpath matrix.5c kalman
 
 include Version
 
-SUBDIRS=telemetrum-v1.1 telemetrum-v1.0 teledongle-v0.2 telemetrum-v0.1-sky telemetrum-v0.1-sirf teledongle-v0.1 tidongle test
+ifneq ($(shell which sdcc),)
+       SUBDIRS+=\
+       telemetrum-v1.2 telemetrum-v1.1 telemetrum-v1.0 \
+       teledongle-v0.2 teledongle-v0.1 \
+       telemini-v1.0 telenano-v0.1 \
+       telebt-v0.0 telebt-v0.1 \
+       telemetrum-v0.1-sky telemetrum-v0.1-sirf \
+       telelaunch-v0.1 tidongle test \
+       teleterra-v0.2 teleshield-v0.1 \
+       telefire-v0.1 \
+       spiradio-v0.1
+endif
+
+ifneq ($(shell which avr-gcc),)
+       SUBDIRS += telescience-v0.1 telepyro-v0.1
+endif
 
-all: all-recursive
+ifneq ($(shell which arm-none-eabi-gcc),)
+       SUBDIRS += megametrum-v0.1 stm-bringup stm-demo telelco-v0.1
+endif
+
+all: all-local all-recursive
 
 RECURSIVE_TARGETS = all-recursive clean-recursive install-recursive
 
@@ -21,8 +47,27 @@ $(RECURSIVE_TARGETS):
 
 distclean:     clean
 
-clean: clean-recursive
+clean: clean-local clean-recursive
 
 install: install-recursive
 
 uninstall:
+
+all-recursive: all-local
+
+all-local: altitude.h altitude-pa.h ao_kalman.h ao_whiten.h
+
+altitude.h: make-altitude
+       nickle $< > $@
+
+altitude-pa.h: make-altitude-pa
+       nickle $< > $@
+
+ao_kalman.h: make-kalman kalman.5c kalman_filter.5c load_csv.5c matrix.5c
+       bash $< kalman > $@
+
+ao_whiten.h: make-whiten
+       nickle $< > $@
+
+clean-local:
+       rm -f altitude.h ao_kalman.h