#############################################################
#  MINARET (for edge-triggered circuits)
#
#  BY
#
#  NARESH MAHESHWARI AND SACHIN S. SAPATNEKAR
#
#  Copyright 1998 Iowa State University Research Foundation, Inc.
#  All Rights Reserved
#  Source Code (in C) for retiming edge-triggered circuits
#
#  ASTRA:   Refer to paper in DAC 95 by Deokar & Sapatnekar
#			and IEEE Tran on CAD 10/1998
#  Minaret: Refer to paper in DAC 97 by Maheshwari & Sapatnekar
#			and IEEE Tran on VLSI 10/1998
#
#        Availiable on as is basis with no support
#
#
#############################################################


o = obj/
cc =  gcc -ansi -c -O2
cc1 = gcc -ansi -O2
#cc = gcc -ansi -O2
OBJ = ${o}main.o ${o}y.tab.o ${o}lex.yy.o ${o}utils.o ${o}print.o ${o}latch_utils.o  ${o}hash.o ${o}wd.o ${o}cnvt.o ${o}heap.o ${o}io.o ${o}slack.o ${o}pert.o ${o}phase2.o ${o}bell.o ${o}graph.o ${o}bounds.o  ${o}postproc.o  ${o}retime.o ${o}simplex.o

run: ${OBJ} include.h
	${cc1}  ${OBJ} -o retime -ll -ly -lm
	
${o}main.o:main.c include.h main.h 
	${cc} main.c -o ${o}main.o

${o}simplex.o:simplex.c include.h  
	${cc} simplex.c -o ${o}simplex.o

${o}postproc.o: postproc.c include.h  
	${cc} postproc.c -o ${o}postproc.o


${o}retime.o: retime.c include.h 
	${cc}  retime.c -o ${o}retime.o

${o}wd.o:wd.c include.h  
	${cc} wd.c -o ${o}wd.o

${o}slack.o:slack.c include.h  
	${cc} slack.c -o ${o}slack.o

${o}cnvt.o:cnvt.c include.h  
	${cc} cnvt.c -o ${o}cnvt.o

${o}heap.o:heap.c include.h  
	${cc} heap.c -o ${o}heap.o

${o}hash.o:hash.c include.h  
	${cc} hash.c -o ${o}hash.o

${o}utils.o: utils.c include.h 
	${cc}   utils.c -o ${o}utils.o

${o}latch_utils.o: latch_utils.c include.h 
	${cc}  latch_utils.c -o ${o}latch_utils.o

${o}print.o: print.c include.h 
	${cc}  print.c -o ${o}print.o

${o}bounds.o: bounds.c include.h 
	${cc}  bounds.c -o ${o}bounds.o

${o}io.o: io.c include.h 
	${cc}  io.c -o ${o}io.o

${o}y.tab.o: y.tab.c  include.h 
	${cc}	  y.tab.c -o ${o}y.tab.o
	  
y.tab.c: yacc.y include.h  
	yacc  -d yacc.y
	
${o}lex.yy.o: lex.yy.c y.tab.c
	 ${cc}  lex.yy.c -o ${o}lex.yy.o
	 
lex.yy.c: lex.l
	lex lex.l


${o}graph.o: graph.c include.h 
	${cc}  graph.c -o ${o}graph.o

${o}bell.o: bell.c include.h 
	${cc}  bell.c -o ${o}bell.o

${o}pert.o: pert.c include.h 
	${cc}  pert.c -o ${o}pert.o

${o}phase2.o: phase2.c include.h 
	${cc}  phase2.c -o ${o}phase2.o

