2 # Copyright 2015, Olivier MATZ <zer0@droids-corp.org>
4 # Redistribution and use in source and binary forms, with or without
5 # modification, are permitted provided that the following conditions are met:
7 # * Redistributions of source code must retain the above copyright
8 # notice, this list of conditions and the following disclaimer.
9 # * Redistributions in binary form must reproduce the above copyright
10 # notice, this list of conditions and the following disclaimer in the
11 # documentation and/or other materials provided with the distribution.
12 # * Neither the name of the University of California, Berkeley nor the
13 # names of its contributors may be used to endorse or promote products
14 # derived from this software without specific prior written permission.
16 # THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND ANY
17 # EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
18 # WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
19 # DISCLAIMED. IN NO EVENT SHALL THE REGENTS AND CONTRIBUTORS BE LIABLE FOR ANY
20 # DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
21 # (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
22 # LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
23 # ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
24 # (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
25 # SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
28 UCGINE ?= /home/zer0/projects/ucgine
32 AVRDUDE_PORT = /dev/ttyUSB0
33 AVRDUDE_PROG = arduino
40 $(error AVR target only, cannot override CROSS)
43 CFLAGS += -g -O2 -Wall
44 CFLAGS += -I$(UCGINE)/arch/avr/include
45 CFLAGS += -mmcu=$(MCU)
46 CFLAGS += -DF_CPU=$(F_CPU)
47 LDFLAGS += -mmcu=$(MCU)
50 CFLAGS += -I$(UCGINE)/lib/cirbuf/include
51 exe-y-$(O)/spi-client += $(UCGINE)/lib/cirbuf/ucg_cirbuf.c
53 CFLAGS += -I$(UCGINE)/arch/avr/include
54 CFLAGS += -I$(UCGINE)/arch/avr/uart/include
55 CFLAGS += -I$(UCGINE)/lib/uart
56 CFLAGS += -I$(UCGINE)/lib/uart/include
57 exe-y-$(O)/spi-client += $(UCGINE)/lib/uart/ucg_uart.c
58 exe-y-$(O)/spi-client += $(UCGINE)/arch/avr/uart/ucg_avr_uart.c
61 exe-y-$(O)/spi-client += main.c uart.c
63 objcopy-hex-y-$(O)/spi-client.hex := $(O)/spi-client
64 objcopy-bin-y-$(O)/spi-client.bin := $(O)/spi-client
66 include $(UCGINE)/mk/ucgine.mk
76 avrdude -e -p $(MCU) -P $(AVRDUDE_PORT) -c $(AVRDUDE_PROG) \
77 -b $(AVRDUDE_BAUD) -U flash:w:$(O)/spi-client:e