.PHONY: clean
.SUFFIXES:

NAME	= asm

CC      = gcc
PREFIX  = sh3eb-elf-
WRAPPER = $(HOME)/opt/sh3eb-elf/bin/g1a-wrapper

DFLAGS  = -m3 -mb -O3 -nostdlib
CFLAGS  = -Wall -DCASIO_fxlib 
#-Wl,-M
INCLUDE = -I include
LIBS    = -lgcc -L . -lfx

SRC	= $(wildcard *.c)
OBJ	= $(SRC:.c=.o)

all : $(NAME).bin
	$(WRAPPER) $(NAME).bin -o $(NAME).g1a -i icon.bmp

$(NAME).bin : $(NAME).elf
	$(PREFIX)objcopy -R .comment -R .bss -O binary $(NAME).elf $(NAME).bin


$(NAME).elf : bin/addin.ld bin/crt0.o $(OBJ)
	$(PREFIX)$(CC) $(DFLAGS) -T"bin/addin.ld" $^ -o $@  $(LIBS) $(CFLAGS)

bin/crt0.o :
	$(PREFIX)$(CC) $(DFLAGS) -c bin/crt0.s -o bin/crt0.o $(CFLAGS)

%.o : %.c
	$(PREFIX)$(CC) $(DFLAGS) -c $< -o $@ $(INCLUDE) $(CFLAGS)



fetch: clean
	(cd ../data && make)
	cp ../common/*.c ../common/*.h .
	cp ../interpreter/*.c ../interpreter/*.h .
	cp ../assembler/*.c ../assembler/*.h .
	cp local/* .

clean :
	rm -rf *.c
	rm -rf *.h
	rm -rf *.o
	rm -rf *.src
	rm -f $(NAME).elf
	rm -f $(NAME).bin
	rm -f $(NAME).g1a


send:
	p7 send $(NAME).g1a -f -#
