head	1.8;
access;
symbols
	charm6_1:1.8
	charm_6_0_1:1.8
	charm6_0_1:1.8
	charm6_0:1.8
	ChaNGa_1-0:1.7
	charm5_9:1.7;
locks; strict;
comment	@# @;


1.8
date	2007.09.19.03.29.39;	author bohm;	state Exp;
branches;
next	1.7;
commitid	294046f097874567;

1.7
date	2004.09.20.21.33.24;	author jagadish;	state Exp;
branches;
next	1.6;

1.6
date	2004.09.15.05.12.19;	author gzheng;	state Exp;
branches;
next	1.5;

1.5
date	2004.09.11.15.06.35;	author gzheng;	state Exp;
branches;
next	1.4;

1.4
date	2004.09.03.05.56.55;	author gzheng;	state Exp;
branches;
next	1.3;

1.3
date	2004.08.18.05.03.34;	author jagadish;	state Exp;
branches;
next	1.2;

1.2
date	2004.08.16.06.07.52;	author jagadish;	state Exp;
branches;
next	1.1;

1.1
date	2004.08.11.20.59.52;	author jagadish;	state Exp;
branches;
next	;


desc
@@


1.8
log
@Add doneInserting() and a functional make test target.
@
text
@# NOTE: This is the basic Makefile template that includes the additional
#       Makefile.simulation makefile that is found in the location of the
#       current installation of POSE.
#
#	The Makefile.simulation set of rules allows the compilation of
#       a SINGLE simulation module. If multiple simulation modules are
#	desired, some "surgery" of Makefile.simulation (and this file)
#	will be required. 
#
# ***********************************************************************

# Default charmc options
# - changes here will be exported to upper level makefile
# *******************************************************
OPTS=-g#-DCMK_OPTIMIZE=1 -DCMK_MEMCHECKS_OFF=1

include ../Makefile.common


# Default Location variables
# **************************
#POSE_ROOT=$(HOME)/charm/net-linux/lib

# Default module names
# - MAKE MODIFICATIONS HERE
# *************************
PGM_MODULE=Pgm
PGM=pgm
OTHER=-lconv-bigsim-logs
LIBS=-Lstdc++ -lm
#LIBS=/expand8/home/guna/charm/src/langs/bluegene/blue_seq.o

# Simulation object definitions 
# *****************************
SIM_OBJECTS=$(OBJDIR)/BgSim_sim.o $(OBJDIR)/TCsim_sim.o

# EXECUTABLE GENERATION RULES 
# - DO NOT MODIFY
#****************************

RedStorm: $(OBJDIR)/$(PGM).o
HypCubeArch: $(OBJDIR)/$(PGM).o
HypCubeArchOB: $(OBJDIR)/$(PGM).o
BlueGene: $(OBJDIR)/$(PGM).o
IB: $(OBJDIR)/$(PGM).o
OB: $(OBJDIR)/$(PGM).o

$(OBJDIR)/$(PGM).o :  $(SIM_OBJECTS)	$(PGM).C $(PGM).h $(PGM_MODULE).def.h $(PGM_MODULE).decl.h
	-test -d $(OBJDIR) || mkdir $(OBJDIR)
	$(CHARMC) -c -o $@@ -I$(CHARMINC) $(INCLUDES) $(LIBS) $(PGM).C -I$(MACHINE)
 
$(PGM_MODULE).def.h $(PGM_MODULE).decl.h : $(PGM).ci
	$(CHARMC) $(INCLUDES) $(LIBS) $(PGM).ci -I$(MACHINE)
 
$(OBJDIR)/TCsim_sim.o :	BgSim.def.h TCsim_sim.C TCsim_sim.h \
			TCsim.def.h TCsim.decl.h
	-test -d $(OBJDIR) || mkdir $(OBJDIR)
	$(CHARMC) -o $@@ -c $(LIBS) $(INCLUDES) -I$(CHARMINC) TCsim_sim.C -I$(MACHINE)
 
TCsim.def.h TCsim.decl.h : TCsim_sim.ci
	$(CHARMC) $(INCLUDES) $(LIBS) TCsim_sim.ci -I$(MACHINE)
 
TCsim_sim.C TCsim_sim.h TCsim_sim.ci: TCsim.C \
		TCsim.h TCsim.ci 
	$(ETRANS) TCsim

$(OBJDIR)/BgSim_sim.o :	TCsim.def.h BgSim_sim.C BgSim_sim.h \
			BgSim.def.h BgSim.decl.h
	-test -d $(OBJDIR) || mkdir $(OBJDIR)
	$(CHARMC) -o $@@ -c $(LIBS) $(INCLUDES) -I$(CHARMINC) BgSim_sim.C -I$(MACHINE)
 
BgSim.def.h BgSim.decl.h : BgSim_sim.ci
	$(CHARMC) $(INCLUDES) $(LIBS) BgSim_sim.ci -I$(MACHINE)
 
BgSim_sim.C BgSim_sim.h BgSim_sim.ci: BgSim.C \
		BgSim.h BgSim.ci Switch.C Nic.C Channel.C
	$(ETRANS) BgSim Switch.C Nic.C Channel.C

clean:
	rm -f charmrun conv-host *.o
	rm -f *.def.h *.decl.h
	rm -f $(PGM) $(PGM).pure $(PGM).proj $(PGM).summary
	rm -f gmon.out #*#
	rm -f core *~
	rm -f TAGS *.headers
	rm -f *_sim.*
@


1.7
log
@Added source routing
@
text
@d29 1
a29 1
OTHER=-lconv-bluegene-logs
@


1.6
log
@modified make to output to tmp instead of copy into. This is to make sure tempate instantiation works correct on Lemieux.
@
text
@d43 1
@


1.5
log
@defines ETRANS.
@
text
@d17 2
a18 5
CHARMBASE=../../../../
CHARMBIN=$(CHARMBASE)/bin
CHARMINC=$(CHARMBASE)/include
CHARMC=$(CHARMBIN)/charmc -I$(CHARMINC)/pose $(OPTS)
ETRANS=$(CHARMBIN)/etrans.pl
d35 1
a35 1
SIM_OBJECTS=BgSim_sim.o TCsim_sim.o
d41 9
a49 10
RedStorm: $(PGM).o
HypCubeArch: $(PGM).o
BlueGene: $(PGM).o
IB: $(PGM).o
OB: $(PGM).o


$(PGM).o :  $(SIM_OBJECTS)	$(PGM).C $(PGM).h $(PGM_MODULE).def.h $(PGM_MODULE).decl.h
	$(CHARMC) -c -I$(CHARMINC) $(INCLUDES) $(LIBS) $(PGM).C -I$(MACHINE)
	test -d ../tmp || mkdir ../tmp; cp *.o ../tmp
d54 1
a54 1
TCsim_sim.o :	BgSim.def.h TCsim_sim.C TCsim_sim.h \
d56 2
a57 1
	$(CHARMC) -c $(LIBS) $(INCLUDES) -I$(CHARMINC) TCsim_sim.C -I$(MACHINE)
d66 1
a66 1
BgSim_sim.o :	TCsim.def.h BgSim_sim.C BgSim_sim.h \
d68 2
a69 1
	$(CHARMC) -c $(LIBS) $(INCLUDES) -I$(CHARMINC) BgSim_sim.C -I$(MACHINE)
@


1.4
log
@added fixes from BigNetSim to TCsim.C.
improved Makefile.
@
text
@d21 1
d67 1
a67 1
	$(CHARMBIN)/etrans.pl TCsim
d78 1
a78 1
	$(CHARMBIN)/etrans.pl BgSim Switch.C Nic.C Channel.C
@


1.3
log
@Put in output buffering
@
text
@d52 1
a52 1
	cp *.o ../tmp
@


1.2
log
@Added choice between adaptive and deterministic routing for Bluegene
Added choice for receiving multiple messages simulataneously (Bluegene has 6 reception fifos operating simulataneously)
Added input speedup variable which constrains the number of input vcs which can be simulataneously transfer data
put switch/channel/nic code into seperate files
Added util.* files in machine directories so that they can be extended as needed
For now Bluegene and IB are working. Simple changes to be made to HypercubeArch and Redstorm too.
@
text
@d47 2
@


1.1
log
@*** empty log message ***
@
text
@a19 1

d37 1
a37 1
SIM_OBJECTS=BgSim_sim.o TCsim_sim.o util.o
d74 2
a75 5
		BgSim.h BgSim.ci
	$(CHARMBIN)/etrans.pl BgSim

util.o: util.C util.h
	$(CHARMC) -o util.o -seq util.C 
@

