5 vpath % ..:../kernel:../product:../drivers:../avr
6 vpath ao-make-product.5c ../util
8 include ../avr/Makefile.defs
12 #PROGRAMMER=stk500v2 -P usb
13 LOADARG=-p $(DUDECPUTYPE) -c $(PROGRAMMER) -e -U flash:w:
15 #LDFLAGS=-L$(LDSCRIPTS) -Tavr5.x
25 # Common AltOS sources
27 TELESCIENCE_STORAGE= \
52 $(TELESCIENCE_STORAGE)\
55 PRODUCT=TeleScience-v0.1
57 PRODUCT_DEF=-DTELESCIENCE
59 CFLAGS = $(PRODUCT_DEF) -I. -I../avr -I../kernel -I..
60 CFLAGS += -g -mmcu=$(MCU) -Wall -Wstrict-prototypes -O3 -mcall-prologues -DAVR
66 SRC=$(ALTOS_SRC) ao_telescience.c
70 # The user has explicitly enabled quiet compilation.
72 quiet = @printf " $1 $2 $@\n"; $($1)
74 # Otherwise, print the full command line.
79 CHECK=sh ../util/check-avr-mem
81 $(PROG): Makefile $(OBJ)
82 $(call quiet,CC) $(LDFLAGS) $(CFLAGS) -o $(PROG) $(OBJ)
83 $(call quiet,CHECK) $(PROG) || ($(RM) -f $(PROG); exit 1)
87 $(OBJCOPY) -R .eeprom -O ihex $(PROG) $@
91 $(LOADCMD) $(LOADARG)$(PROG).hex
93 ao_product.h: ao-make-product.5c ../Version
94 $(call quiet,NICKLE,$<) $< -m altusmetrum.org -i $(IDPRODUCT) -p $(PRODUCT) -v $(VERSION) > $@
96 ao_product.o: ao_product.c ao_product.h
99 $(call quiet,CC) -c $(CFLAGS) $<
104 rm -f *.o $(PROG) $(PROG).hex
111 $(OBJ): ao_product.h $(INC)