#
#  Real/Expr Package Ver. 1.0
#    Copywrite (c) 1995, 1996 Exact Computation Project
#    written by Koji Ouchi (ouchi@simulation.nyu.edu)
#
#  File: Makefile
#

CC = g++

# EXTRA_FLAG = -static
PROFILE =

IPATH = ../src
SPATH = ../src

Graham: Graham.cc Expr.o Real.o BigFloat.o extLong.o ${SPATH}/Defs.cc
	${CC} -o Graham ${EXTRA_FLAG} ${PROFILE} -I${IPATH} -lm\
		Graham.cc Expr.o ExprUtil.o Real.o BigFloat.o extLong.o ${SPATH}/Defs.cc

Rump: Rump.cc Expr.o Real.o BigFloat.o extLong.o ${SPATH}/Defs.cc
	${CC} -o Rump ${EXTRA_FLAG} ${PROFILE} -I${IPATH} -lm\
		Rump.cc Expr.o ExprUtil.o Real.o BigFloat.o extLong.o ${SPATH}/Defs.cc

ORourke: ORourke.cc Expr.o Real.o BigFloat.o extLong.o ${SPATH}/Defs.cc
	${CC} -o ORourke ${EXTRA_FLAG} ${PROFILE} -I${IPATH} -lm\
		ORourke.cc Expr.o ExprUtil.o Real.o BigFloat.o extLong.o ${SPATH}/Defs.cc

det: det.cc Expr.o Real.o BigFloat.o extLong.o ${SPATH}/Defs.cc
	${CC} -o det ${EXTRA_FLAG} ${PROFILE} -I${IPATH} -lm\
		det.cc Expr.o ExprUtil.o Real.o BigFloat.o extLong.o ${SPATH}/Defs.cc

tCompare: tCompare.cc Expr.o Real.o BigFloat.o extLong.o ${SPATH}/Defs.cc
	${CC} -o tCompare ${EXTRA_FLAG} ${PROFILE} -I${IPATH} -lm\
		tCompare.cc Expr.o ExprUtil.o Real.o BigFloat.o extLong.o ${SPATH}/Defs.cc

tExpr: tExpr.cc Expr.o Real.o BigFloat.o extLong.o ${SPATH}/Defs.cc
	${CC} -o tExpr ${EXTRA_FLAG} ${PROFILE} -I${IPATH} -lm\
		tExpr.cc Expr.o ExprUtil.o Real.o BigFloat.o extLong.o ${SPATH}/Defs.cc

tReal: tReal.cc Real.o BigFloat.o extLong.o ${SPATH}/Defs.cc
	${CC} -o tReal ${EXTRA_FLAG} ${PROFILE} -I${IPATH} -lm\
		tReal.cc Real.o BigFloat.o extLong.o ${SPATH}/Defs.cc

tFloat: tFloat.cc BigFloat.o extLong.o ${SPATH}/Defs.cc
	${CC} -o tFloat ${EXTRA_FLAG} ${PROFILE} -I${IPATH} -lm\
		tFloat.cc BigFloat.o extLong.o ${SPATH}/Defs.cc

Expr.o: ${SPATH}/Expr.cc ${IPATH}/Expr.h ExprUtil.o ${IPATH}/Defs.h
	${CC} -c ${PROFILE} ${SPATH}/Expr.cc

ExprUtil.o: ${SPATH}/ExprUtil.cc ${IPATH}/ExprUtil.h ${IPATH}/Defs.h
	${CC} -c ${PROFILE} ${SPATH}/ExprUtil.cc

Real.o: ${SPATH}/Real.cc ${IPATH}/Real.h ${IPATH}/Defs.h
	${CC} -c ${PROFILE} ${SPATH}/Real.cc

BigFloat.o: ${SPATH}/BigFloat.cc ${IPATH}/BigFloat.h ${IPATH}/BigInt.h
	${CC} -c ${PROFILE} ${SPATH}/BigFloat.cc

extLong.o: ${SPATH}/extLong.cc ${IPATH}/extLong.h ${IPATH}/Defs.h
	${CC} -c ${PROFILE} ${SPATH}/extLong.cc

clean:
	rm -f Graham Rump ORourke det tCompare tExpr tReal tFloat *.o core

