# makefile for basic SIMLIB examples
# Unixware/gmake version

SIMLIB_DIR=..
SIMLIB_DEPEND=$(SIMLIB_DIR)/simlib.a $(SIMLIB_DIR)/simlib.h
SIMLIB_DEPEND2D=$(SIMLIB_DEPEND) $(SIMLIB_DIR)/simlib2D.h
SIMLIB_DEPEND3D=$(SIMLIB_DEPEND) $(SIMLIB_DIR)/simlib3D.h

# compiler:
CXX=g++
# PRODUCTION CODE options:
CXXFLAGS=-O2 -I$(SIMLIB_DIR)

# Implicit Rule to compile modules
% : %.cc
	$(CXX) $(CXXFLAGS) -o $@  $< $(SIMLIB_DIR)/simlib.a -lm

ALL_MODELS= bessel centrala ctest kolo kolo2 kostky kostky2 lorenz micek micek2 \
	model2 model3 model4 model5 multiexp pocsit procesor test3D topeni

all: $(ALL_MODELS)

#
bessel: bessel.cc $(SIMLIB_DEPEND)
centrala: centrala.cc $(SIMLIB_DEPEND)
ctest: ctest.cc $(SIMLIB_DEPEND)
kolo: kolo.cc $(SIMLIB_DEPEND)
kolo2: kolo2.cc $(SIMLIB_DEPEND)
kostky: kostky.cc $(SIMLIB_DEPEND)
kostky2: kostky2.cc $(SIMLIB_DEPEND)
lorenz: lorenz.cc $(SIMLIB_DEPEND)
micek: micek.cc $(SIMLIB_DEPEND)
micek2: micek2.cc $(SIMLIB_DEPEND)
model2: model2.cc $(SIMLIB_DEPEND)
model3: model3.cc $(SIMLIB_DEPEND)
model4: model4.cc $(SIMLIB_DEPEND)
model5: model5.cc $(SIMLIB_DEPEND)
multiexp: multiexp.cc $(SIMLIB_DEPEND)
pocsit: pocsit.cc $(SIMLIB_DEPEND)
procesor: procesor.cc $(SIMLIB_DEPEND)
test3D: test3D.cc $(SIMLIB_DEPEND)
topeni: topeni.cc $(SIMLIB_DEPEND)

#
run: all
	@echo
	@echo "Running all examples..."
	@echo "echo" $(ALL_MODELS) | sed -e "s/ /;.\//g" | sh
	@echo

plot: run
	open -sw gnuplot all.plt

clean:
	@echo
	@echo "Deleting all executable examples..."
	rm -f $(ALL_MODELS) *~

clean-data:
	@echo
	@echo "Deleting all simulation results..."
	rm -f *.dat *.out

clean-all: clean clean-data

pack:
	tar czvf examples.tar.gz *.cc *.plt Makefile*

#


syntax highlighted by Code2HTML, v. 0.9.1