#
# Makefile di Telepati TCP versione 1.47
#

OPENRSDK_ROOT?=/usr/local/OPEN_R_SDK
INSTALLDIR=../MS
CXX=$(OPENRSDK_ROOT)/bin/mipsel-linux-g++
STRIP=$(OPENRSDK_ROOT)/bin/mipsel-linux-strip
MKBIN=$(OPENRSDK_ROOT)/OPEN_R/bin/mkbin
STUBGEN=$(OPENRSDK_ROOT)/OPEN_R/bin/stubgen2
MKBINFLAGS=-p $(OPENRSDK_ROOT)
LIBS=-L../lib -L$(OPENRSDK_ROOT)/OPEN_R/lib -lObjectComm -lOPENR -lInternet -lantMCOOP -lPackages
CXXFLAGS= \
	-O2 \
	-fomit-frame-pointer \
	-I. \
	-I../include/Packages \
	-I$(OPENRSDK_ROOT)/OPEN_R/include/R4000 \
	-I$(OPENRSDK_ROOT)/OPEN_R/include/MCOOP \
	-I$(OPENRSDK_ROOT)/OPEN_R/include \

DOXYGEN_CFG_FILE=telepatitcp_doc.cfg

# OPENR_DEBUG is defined, OSYSDEBUG() is available.
CXXFLAGS+= -DOPENR_DEBUG

# Stampa informazioni sulla rete
CXXFLAGS+= -DOPENR_ETHERSTAT
LIBS+=-lERA201D1

# Fine Debug

# Attiva il polling degli altri Aibo
#CXXFLAGS+= -DTELEPATI_POLLING


.PHONY: all install clean doc

all: teletcp.bin

%.o: %.cc
	$(CXX) $(CXXFLAGS) -o $@ -c $^

TelepatiTcpStub.cc: stub.cfg
	$(STUBGEN) stub.cfg	

teletcp.bin: TelepatiTcpStub.o TelepatiTcp.o telepatitcp.ocf EtherStat.o TCPConnection.o
	$(MKBIN) $(MKBINFLAGS) -o $@ $^ $(LIBS)
	$(STRIP) $@

install: teletcp.bin
	gzip -c teletcp.bin > $(INSTALLDIR)/OPEN-R/MW/OBJS/TELETCP.BIN

clean:
	rm -f *.o *.bin *.elf *.snap.cc
	rm -f TelepatiTcpStub.h TelepatiTcpStub.cc def.h entry.h
	rm -f $(INSTALLDIR)/OPEN-R/MW/OBJS/TELETCP.BIN
doc:
	doxygen $(DOXYGEN_CFG_FILE)
