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:
29 # Common AltOS sources
31 TELESCIENCE_STORAGE= \
57 $(TELESCIENCE_STORAGE)\
60 PRODUCT=TeleScience-PWM
62 PRODUCT_DEF=-DTELESCIENCE -DTELESCIENCE_PWM
64 CFLAGS = $(PRODUCT_DEF) -I. -I../avr -I../core -I..
65 CFLAGS += -g -mmcu=$(MCU) -Wall -Wstrict-prototypes -O3 -mcall-prologues -DAVR
71 SRC=$(ALTOS_SRC) ao_telescience.c
75 # The user has explicitly enabled quiet compilation.
77 quiet = @printf " $1 $2 $@\n"; $($1)
79 # Otherwise, print the full command line.
84 CHECK=sh ../util/check-avr-mem
86 $(PROG): Makefile $(OBJ)
87 $(call quiet,CC) $(LDFLAGS) $(CFLAGS) -o $(PROG) $(OBJ)
88 $(call quiet,CHECK) $(PROG) || ($(RM) -f $(PROG); exit 1)
92 $(OBJCOPY) -R .eeprom -O ihex $(PROG) $@
96 $(LOADCMD) $(LOADARG)$(PROG).hex
98 ao_product.h: ao-make-product.5c ../Version
99 $(call quiet,NICKLE,$<) $< -m altusmetrum.org -i $(IDPRODUCT) -p $(PRODUCT) -v $(VERSION) > $@
101 ao_product.o: ao_product.c ao_product.h
104 $(call quiet,CC) -c $(CFLAGS) $<
109 rm -f *.o $(PROG) $(PROG).hex
116 $(OBJ): ao_product.h $(INC)