# Makefile for sh7045writer
# Satofumi KAMIMURA
# $Id: Makefile 1157 2009-07-18 11:18:40Z satofumi $

# Compile options
CC = g++
CXXFLAGS = -g -O0 -Wall -W -Werror $(INCLUDES) `sdl-config --cflags`
INCLUDES = -I../../libs/connection -I../../libs/system -I../../libs/common
LDFLAGS =
LDLIBS = `sdl-config --libs` -lSDL_net

SH_ARC = sh-coff
#SH_ARC = sh-elf
SH_INCLUDES = -I../../libs/sh7045


# Target
TARGET = \
	writer_sh7045.mot \
	mot2data \
	sh7045writer \
	sci_sample.mot \

all : $(TARGET)

clean :
	$(RM) *.o $(TARGET) *.dis

depend :
	makedepend -Y -- $(INCLUDES) -- $(wildcard *.h *.c *.cpp)

.PHONY : all clean depend
######################################################################
HOST_OBJS = FZtatHandler.o SformatHandler.o SformatSender.o \
	stub_sh7045.o sformat_receiver.o sci_host.o flash_host.o jump_host.o \
	../../libs/connection/SerialDevice.o \
	../../libs/connection/sdl/TcpipSocket.o \
	../../libs/connection/sdl/SocketSet.o \
	../../libs/connection/sdl/SdlNetInit.o \
	../../libs/connection/sdl/TcpipAccepter.o \
	../../libs/system/sdl/Thread.o \
	../../libs/system/sdl/Lock.o \
	../../libs/system/sdl/SdlInit.o \
	../../libs/system/sdl/delay.o \

mot2data : $(HOST_OBJS)

writer_program.h : writer_sh7045.mot
	- ./mot2data

sh7045writer : $(HOST_OBJS)

writer_sh7045.o : writer_sh7045.c
	${SH_ARC}-gcc -O2 -m2 -Wall -Werror ${SH_INCLUDES} -c $<

tiny_sci.o : tiny_sci.c
	${SH_ARC}-gcc -O2 -m2 -Wall -Werror ${SH_INCLUDES} -c $<

sformat_receiver_target.o : sformat_receiver.c
	${SH_ARC}-gcc -O2 -m2 -Wall -Werror ${SH_INCLUDES} -c $< -o $@

flash.o : flash.c
	${SH_ARC}-gcc -O2 -m2 -Wall -Werror ${SH_INCLUDES} -c $< -o $@

jump.o : jump.c
	${SH_ARC}-gcc -O2 -m2 -Wall -Werror ${SH_INCLUDES} -c $< -o $@

SH_OBJS = writer_sh7045.o tiny_sci.o sformat_receiver_target.o flash.o jump.o
writer_sh7045.mot : ${SH_OBJS}
	${SH_ARC}-gcc -nostartfiles crt0_min.S -T sh7045_low.x -O2 -m2 -Wall -Werror ${SH_INCLUDES} $^ -o $@.tmp
	${SH_ARC}-objcopy -O srec $@.tmp $@
	@${RM} $@.tmp
	@chmod a-x $@

sci_sample.o : sci_sample.c
	${SH_ARC}-gcc -O2 -m2 -Wall -Werror ${SH_INCLUDES} -c $< -o $@

sci_sample.mot : sci_sample.o tiny_sci.o
	${SH_ARC}-gcc -nostartfiles crt0_min.S -T sh7045_low.x -O2 -m2 -Wall -Werror ${SH_INCLUDES} $^ -o $@.tmp
	${SH_ARC}-objcopy -O srec $@.tmp $@
	@${RM} $@.tmp
	@chmod a-x $@

# DO NOT DELETE

flash.o: flash.h
jump.o: jump.h
sci_sample.o: tiny_sci.h
sformat_receiver.o: tiny_sci.h flash.h jump.h
tiny_sci.o: tiny_sci.h
writer_sh7045.o: tiny_sci.h sformat_receiver.h
FZtatHandler.o: FZtatHandler.h ../../libs/connection/Connection.h
SformatHandler.o: SformatHandler.h
SformatSender.o: SformatSender.h SformatHandler.h
SformatSender.o: ../../libs/connection/Connection.h ../../libs/system/delay.h
flash_host.o: flash.h ../../libs/system/delay.h
mot2data.o: FZtatHandler.h SformatSender.h stub_sh7045.h
mot2data.o: ../../libs/connection/TcpipSocket.h
mot2data.o: ../../libs/connection/Connection.h ../../libs/system/Thread.h
sci_host.o: tiny_sci.h ../../libs/connection/Connection.h
sh7045writer.o: FZtatHandler.h SformatHandler.h SformatSender.h
sh7045writer.o: writer_program.h stub_sh7045.h
sh7045writer.o: ../../libs/connection/SerialDevice.h
sh7045writer.o: ../../libs/connection/Connection.h
sh7045writer.o: ../../libs/connection/TcpipSocket.h
sh7045writer.o: ../../libs/system/Thread.h ../../libs/system/DetectOS.h
stub_sh7045.o: stub_sh7045.h sformat_receiver.h
stub_sh7045.o: ../../libs/connection/TcpipAccepter.h
stub_sh7045.o: ../../libs/connection/TcpipSocket.h
stub_sh7045.o: ../../libs/connection/Connection.h
