5 vpath % ..:../core:../product:../drivers:../avr
6 vpath ao-make-product.5c ../util
10 #PROGRAMMER=stk500v2 -P usb
13 LOADARG=-p $(DUDECPUTYPE) -c $(PROGRAMMER) -e -U flash:w:
28 # Common AltOS sources
30 TELESCIENCE_STORAGE= \
55 $(TELESCIENCE_STORAGE)\
58 PRODUCT=TeleScience-v0.1
60 PRODUCT_DEF=-DTELESCIENCE
62 CFLAGS = $(PRODUCT_DEF) -I. -I../avr -I../core -I..
63 CFLAGS += -g -mmcu=$(MCU) -Wall -Wstrict-prototypes -O3 -mcall-prologues -DAVR
69 SRC=$(ALTOS_SRC) ao_telescience.c
73 # The user has explicitly enabled quiet compilation.
75 quiet = @printf " $1 $2 $@\n"; $($1)
77 # Otherwise, print the full command line.
82 CHECK=sh ../util/check-avr-mem
84 $(PROG): Makefile $(OBJ)
85 $(call quiet,CC) $(LDFLAGS) $(CFLAGS) -o $(PROG) $(OBJ)
86 $(call quiet,CHECK) $(PROG) || ($(RM) -f $(PROG); exit 1)
90 $(OBJCOPY) -R .eeprom -O ihex $(PROG) $@
94 $(LOADCMD) $(LOADARG)$(PROG).hex
96 ao_product.h: ao-make-product.5c ../Version
97 $(call quiet,NICKLE,$<) $< -m altusmetrum.org -i $(IDPRODUCT) -p $(PRODUCT) -v $(VERSION) > $@
99 ao_product.rel: ao_product.c ao_product.h
100 $(call quiet,CC) -c $(CFLAGS) -D PRODUCT_DEFS='\"ao_product.h\"' -o$@ $<
112 $(OBJ): ao_product.h $(INC)