######################################################################
#
#  Name ............................ LiDIA/src/simple_classes/makefile 
#
#  Architecture : sparc7, sparc8, mips, linux, os2
#  Compiler     : gcc, g++ 
#  Flags        : -g -O2
#  Program Flags: -DDEBUG, -DMEMORY, -DERRIGN 
#  Author       : Papanikolaou Thomas & Stefan Neis
#  Release      : 1.0 
#  Last Change  : Mon Apr 11 16:09:08 MET DST 1994 
#  Copyright    : by the University of Saarland, 1994 
#

#
# include the configuration file
#

include ../../config/CONFIG

#
#
#

OBJ=base_bigmod.o bigmod.o multi_bigmod.o \
	bigrational.o bigfloat.o bigfloat_int.o \
	bigcomplex.o matrix_GL2Z.o 

#
# Rules
#

all:	$(libp)LiDIA.a 

appl:	bigmod_appl$(EXE) multi_bigmod_appl$(EXE) bigrational_appl$(EXE) \
	bigfloat_appl$(EXE) bigcomplex_appl$(EXE) bigfloat_int_appl$(EXE)

#
# Dependencies
# 

base_bigmod.o:		$(LIDIA_INC)$(DIRSEP)LiDIA$(DIRSEP)base_bigmod.h
bigmod.o:		$(LIDIA_INC)$(DIRSEP)LiDIA$(DIRSEP)bigmod.h
multi_bigmod.o:		$(LIDIA_INC)$(DIRSEP)LiDIA$(DIRSEP)multi_bigmod.h
bigrational.o:		$(LIDIA_INC)$(DIRSEP)LiDIA$(DIRSEP)bigrational.h
bigfloat.o:		$(LIDIA_INC)$(DIRSEP)LiDIA$(DIRSEP)bigfloat.h $(LIDIA_INC)$(DIRSEP)LiDIA$(DIRSEP)bigfloat_config.h
bigfloat_int.o:		$(LIDIA_INC)$(DIRSEP)LiDIA$(DIRSEP)bigfloat_int.h 
bigcomplex.o:		$(LIDIA_INC)$(DIRSEP)LiDIA$(DIRSEP)bigcomplex.h
matrix_GL2Z.o:		$(LIDIA_INC)$(DIRSEP)LiDIA$(DIRSEP)matrix_GL2Z.h

$(libp)LiDIA.a:         $(OBJ) 
	-$(AR) $(LIDIA_LIB)$(DIRSEP)$(libp)LiDIA.a $(objp)*.o

ranlib:
	$(RANLIB) $(LIDIA_LIB)$(DIRSEP)$(libp)LiDIA.a

bigmod_appl$(EXE):		bigmod_appl.c
	$(CXX) $(CXXFLAGS) bigmod_appl.c $(CXX-off) -I$(LIDIA_INC) -L$(LIDIA_LIB) -o bigmod_appl$(EXE) $(LIB)
	-$(MV) bigmod_appl$(EXE) $(LIDIA_BIN)

multi_bigmod_appl$(EXE):		multi_bigmod_appl.c
	$(CXX) $(CXXFLAGS) multi_bigmod_appl.c $(CXX-off) -I$(LIDIA_INC) -L$(LIDIA_LIB) -o multi_bigmod_appl$(EXE) $(LIB)
	-$(MV) multi_bigmod_appl$(EXE) $(LIDIA_BIN)

bigrational_appl$(EXE):	bigrational_appl.c
	$(CXX) $(CXXFLAGS) bigrational_appl.c $(CXX-off) -I$(LIDIA_INC) -L$(LIDIA_LIB) -o bigrational_appl$(EXE) $(LIB)
	-$(MV) bigrational_appl$(EXE) $(LIDIA_BIN)

bigfloat_appl$(EXE):		bigfloat_appl.c
	$(CXX) $(CXXFLAGS) bigfloat_appl.c $(CXX-off) -I$(LIDIA_INC) -L$(LIDIA_LIB) -o bigfloat_appl$(EXE) $(LIB)
	-$(MV) bigfloat_appl$(EXE) $(LIDIA_BIN)

bigfloat_int_appl$(EXE):		bigfloat_int_appl.c
	$(CXX) $(CXXFLAGS) bigfloat_int_appl.c $(CXX-off) -I$(LIDIA_INC) -L$(LIDIA_LIB) -o bigfloat_int_appl$(EXE) $(LIB)
	-$(MV) bigfloat_int_appl$(EXE) $(LIDIA_BIN)

bigcomplex_appl$(EXE):	bigcomplex_appl.c
	$(CXX) $(CXXFLAGS) bigcomplex_appl.c $(CXX-off) -I$(LIDIA_INC) -L$(LIDIA_LIB) -o bigcomplex_appl$(EXE) $(LIB)
	-$(MV) bigcomplex_appl$(EXE) $(LIDIA_BIN)

#
# Clean
#

clean:
	-$(RM) *.o 
	-$(RMR) ptrepository

veryclean:	clean 
	-$(RM) bigmod_appl$(EXE) 
	-$(RM) multi_bigmod_appl$(EXE) 
	-$(RM) bigrational_appl$(EXE)
	-$(RM) bigfloat_appl$(EXE) 
	-$(RM) bigfloat_int_appl$(EXE) 
	-$(RM) bigcomplex_appl$(EXE)

#
# End Of Makefile
#
