#
#  Makefile for queues
#
#  ** This file was automatically generated by the command:
#  opp_makemake -f -m
#

# Name of target to be created (-o option)
TARGET = queues

# User interface (uncomment one) (-u option)
# USERIF_LIBS=$(CMDENV_LIBS)
USERIF_LIBS=$(TKENV_LIBS)

# uncomment 1 of the 3 lines to support either serial or parallel operation
KERNEL_LIBS=$(STD_KERNEL_LIBS)
# KERNEL_LIBS=$(PVM_KERNEL_LIBS)
# KERNEL_LIBS=$(MPI_KERNEL_LIBS)

# .ned or .h include paths with -I
INCLUDE_PATH=

# misc additional object and library files to link
EXRA_OBJS=

# object files in subdirectories
SUBDIR_OBJS=

# Additional libraries (-L option -l option)
LIBS=

#------------------------------------------------------------------------------

NEDC=@NEDC@
MSGC=@MSGC@
CXX=@CXX@
CC=@CC@
AR=@AR@
SHLIB_LD=@SHLIB_LD@
MAKEDEPEND=@MAKEDEPEND@

CFLAGS=@CFLAGS@
NEDCFLAGS=@NEDCFLAGS@
LDFLAGS=@LDFLAGS@
EXE_SUFFIX=@EXE_SUFFIX@

OMNETPP_INCL_DIR=@OMNETPP_INCL_DIR@
OMNETPP_LIB_DIR=@OMNETPP_LIB_DIR@

TK_LIBS=@TK_LIBS@
MPI_LIBS=@MPI_LIBS@
PVM_LIBS=@PVM_LIBS@
SYS_LIBS=@SYS_LIBS@
SYS_LIBS_PURE=-lm $(shell $(CXX) -print-file-name=libstdc++.a)

# User interface libs
CMDENV_LIBS=-lenvir -lcmdenv
TKENV_LIBS=-lenvir -ltkenv $(TK_LIBS)

# Simulation kernel
STD_KERNEL_LIBS=-lsim_std
MPI_KERNEL_LIBS=-lsim_mpi $(MPI_LIBS)
PVM_KERNEL_LIBS=-lsim_pvm $(PVM_LIBS)

# Simulation kernel and user interface libraries
OMNETPP_LIBS=-L$(OMNETPP_LIB_DIR) $(USERIF_LIBS) $(KERNEL_LIBS) $(SYS_LIBS)

COPTS=$(CFLAGS) $(INCLUDE_PATH) -I$(OMNETPP_INCL_DIR)
NEDCOPTS=$(CFLAGS) $(NEDCFLAGS) $(INCLUDE_PATH) -I$(OMNETPP_INCL_DIR)

#------------------------------------------------------------------------------

# Object files from this directory to link
OBJS= fifo_n.o fifonet_n.o gen_n.o ring_n.o sink_n.o  distributions.o fifo.o gen.o sink.o

$(TARGET): $(OBJS) $(EXRA_OBJS) Makefile 
	$(CXX) $(LDFLAGS) $(OBJS) $(EXRA_OBJS) $(SUBDIR_OBJS) $(LIBS) $(OMNETPP_LIBS) -o $(TARGET)

purify: $(OBJS) $(EXRA_OBJS)   Makefile
	purify $(CXX) $(LDFLAGS) $(OBJS) $(EXRA_OBJS) $(SUBDIR_OBJS) $(LIBS) -L$(OMNETPP_LIB_DIR) $(KERNEL_LIBS) $(USERIF_LIBS) $(SYS_LIBS_PURE) -o $(TARGET).pure

fifo_n.o: fifo_n.cc
	$(CXX) -c $(NEDCOPTS) fifo_n.cc

fifo_n.cc: fifo.ned
	$(NEDC) $(INCLUDE_PATH) fifo.ned

fifonet_n.o: fifonet_n.cc
	$(CXX) -c $(NEDCOPTS) fifonet_n.cc

fifonet_n.cc: fifonet.ned
	$(NEDC) $(INCLUDE_PATH) fifonet.ned

gen_n.o: gen_n.cc
	$(CXX) -c $(NEDCOPTS) gen_n.cc

gen_n.cc: gen.ned
	$(NEDC) $(INCLUDE_PATH) gen.ned

ring_n.o: ring_n.cc
	$(CXX) -c $(NEDCOPTS) ring_n.cc

ring_n.cc: ring.ned
	$(NEDC) $(INCLUDE_PATH) ring.ned

sink_n.o: sink_n.cc
	$(CXX) -c $(NEDCOPTS) sink_n.cc

sink_n.cc: sink.ned
	$(NEDC) $(INCLUDE_PATH) sink.ned

distributions.o: distributions.cc
	$(CXX) -c $(COPTS) distributions.cc

fifo.o: fifo.cc
	$(CXX) -c $(COPTS) fifo.cc

gen.o: gen.cc
	$(CXX) -c $(COPTS) gen.cc

sink.o: sink.cc
	$(CXX) -c $(COPTS) sink.cc


doc: neddoc.html htmldocs

neddoc.html:  fifo.ned fifonet.ned gen.ned ring.ned sink.ned
	@opp_neddoc  fifo.ned fifonet.ned gen.ned ring.ned sink.ned > neddoc.html
	@echo File neddoc.html generated.

htmldocs:
	@doxygen -g- | sed "s/^PROJECT_NAME.*/PROJECT_NAME = queues/;\
	s|^INPUT *=.*|INPUT = . |;\
	s/^EXTRACT_ALL *=.*/EXTRACT_ALL = yes/;\
	s/^EXTRACT_PRIVATE *=.*/EXTRACT_PRIVATE = yes/;\
	s/^EXCLUDE_PATTERNS *=.*/EXCLUDE_PATTERNS = *_n.cc *_n.h/;\
	s/^ALPHABETICAL_INDEX *=.*/ALPHABETICAL_INDEX = yes/;\
	s/^HTML_OUTPUT *=.*/HTML_OUTPUT = htmldoc/;\
	s/^GENERATE_LATEX *=.*/GENERATE_LATEX = no/;\
	s/^GENERATE_TREEVIEW *=.*/GENERATE_TREEVIEW = yes/;\
	s/^HIDE_UNDOC_RELATIONS *=.*/HIDE_UNDOC_RELATIONS = no/;\
	s|^TAGFILES *=.*|TAGFILES = /home/andras/omnetpp-2.3/doc/api/opptags.xml=/home/andras/omnetpp-2.3/doc/api|;\
	s|^GENERATE_TAGFILE *=.*|GENERATE_TAGFILE = htmldoc/tags.xml|;\
	s/^QUIET *=.*/QUIET = yes/" > doxy.cfg
	@doxygen doxy.cfg
	@echo Code documentation generated. Now, point your web browser to ./htmldoc/index.html.

clean:
	rm -f *.o *_n.cc *_n.h *_m.cc *_m.h $(TARGET)$(EXE_SUFFIX)
	rm -f *.vec *.sca
	rm -rf neddoc.html htmldoc

depend:
	$(MAKEDEPEND) $(INCLUDE_PATH) -- *.cc
	# $(MAKEDEPEND) $(INCLUDE_PATH) -fMakefile.in -- *.cc

re-makemake:
	opp_makemake -f    #recreate Makefile

re-makemake-m:
	opp_makemake -f -m    #recreate Makefile.in


# DO NOT DELETE THIS LINE -- make depend depends on it.
distributions.o: distributions.cc
fifo.o: fifo.cc \
  fifo.h
gen.o: gen.cc \
  gen.h
sink.o: sink.cc \
  sink.h


syntax highlighted by Code2HTML, v. 0.9.1