###   $Id: Makefile 7318 2008-04-07 13:26:26Z gn $

.SILENT :

######################################
# Angaben zum Modell

# Name des Modells
MODEL = Testmodell

# Anzahl der Eingänge ins Modell
SIMINCOUNT = 2

# Anzahl der Ausgänge aus dem Modell
SIMOUTCOUNT = 4

#####################################

BINARY = modeltest
MODEL_SO = Modell/$(MODEL)Modell.so

OBJS = \
	$(MODEL)Shell.o \
	main.o

DEFINES = -DSGIInterface -DEMBEDDED -DMODEL=\"$(MODEL)\" -DOUT_COUNT=$(SIMINCOUNT) -DIN_COUNT=$(SIMOUTCOUNT)
INCLUDES = -I./DSHinclude
CXXFLAGS = $(DEFINES) $(INCLUDES)
LDFLAGS = -L.
LDLIBS = -lMKSInterface35s -ldl

.PHONY : all clean test runtests checkpassed

all : $(BINARY)

$(BINARY) : $(OBJS) Makefile
	echo "Building client application..."
	$(LINK.cc) $(OBJS) $(LDLIBS) $(OUTPUT_OPTION)

$(MODEL_SO) :
	echo "Building model..."
	$(MAKE) -C Modell all

clean :
	$(MAKE) -C Modell clean
	$(RM) $(BINARY) $(OBJS)
	$(RM) *.log
	$(RM) results .passed

test :
	-$(MAKE) runtests
	$(MAKE) checkpassed

runtests : $(BINARY) $(MODEL_SO) results.ref
	echo "Running tests..."
	$(RM) .passed
	./$(BINARY) > testrun.log 2>&1
	diff results results.ref >> testrun.log 2>&1
	touch .passed

checkpassed :
	if [ ! -e .passed ]; then echo "FAILED!"; else echo "PASSED."; fi
