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:
17 LDFLAGS=-L/usr/lib/ldscripts -Tavr5.x
31 # Common AltOS sources
33 TELESCIENCE_STORAGE= \
59 $(TELESCIENCE_STORAGE)\
62 PRODUCT=TeleScience-PWM
64 PRODUCT_DEF=-DTELESCIENCE -DTELESCIENCE_PWM
66 CFLAGS = $(PRODUCT_DEF) -I. -I../avr -I../core -I..
67 CFLAGS += -g -mmcu=$(MCU) -Wall -Wstrict-prototypes -O3 -mcall-prologues -DAVR
73 SRC=$(ALTOS_SRC) ao_telescience.c
77 # The user has explicitly enabled quiet compilation.
79 quiet = @printf " $1 $2 $@\n"; $($1)
81 # Otherwise, print the full command line.
86 CHECK=sh ../util/check-avr-mem
88 $(PROG): Makefile $(OBJ)
89 $(call quiet,CC) $(LDFLAGS) $(CFLAGS) -o $(PROG) $(OBJ)
90 $(call quiet,CHECK) $(PROG) || ($(RM) -f $(PROG); exit 1)
94 $(OBJCOPY) -R .eeprom -O ihex $(PROG) $@
98 $(LOADCMD) $(LOADARG)$(PROG).hex
100 ao_product.h: ao-make-product.5c ../Version
101 $(call quiet,NICKLE,$<) $< -m altusmetrum.org -i $(IDPRODUCT) -p $(PRODUCT) -v $(VERSION) > $@
103 ao_product.o: ao_product.c ao_product.h
106 $(call quiet,CC) -c $(CFLAGS) $<
111 rm -f *.o $(PROG) $(PROG).hex
118 $(OBJ): ao_product.h $(INC)