#BHEADER*********************************************************************** # (c) 1997 The Regents of the University of California # # See the file COPYRIGHT_and_DISCLAIMER for a complete copyright # notice, contact person, and disclaimer. # # $Revision$ #EHEADER*********************************************************************** .SUFFIXES: .cc .c .f .o srcdir = @srcdir@ VPATH = @srcdir@ all: lib install:all @cp -f $(srcdir)/HYPRE_*.h $$HYPRE_INSTALL_DIR/include/. @cp -f $(srcdir)/distributed_matrix.h $$HYPRE_INSTALL_DIR/include/. @cp -f libHYPRE_*.a $$HYPRE_INSTALL_DIR/lib/. #Headers HEADERS =\ distributed_matrix.h HYPREFILES =\ HYPRE_distributed_matrix.c LOCALFILES =\ distributed_matrix.c\ distributed_matrix_PETSc.c\ distributed_matrix_parcsr.c\ distributed_matrix_ISIS.c #distributed_matrix_ISIS.cc FILES = $(HYPREFILES) $(LOCALFILES) OBJS = HYPRE_distributed_matrix.o \ distributed_matrix.o\ distributed_matrix_PETSc.o\ distributed_matrix_parcsr.o\ distributed_matrix_ISIS.o ${OBJS}: ${HEADERS} CC = @CC@ CXX = @CXX@ F77 = @F77@ C_COMPILE_FLAGS=@CFLAGS@ CXX_COMPILE_FLAGS=@CXXFLAGS@ F77_COMPILE_FLAGS=@F77FLAGS@ CINCLUDES=@INCLUDES@ @MPIINCLUDE@ CDEFS = @HYPRE_PETSCDEFS@ CFLAGS = \ -I..\ -I$(srcdir)\ -I$(srcdir)/..\ -I$(srcdir)/../utilities\ -I$(srcdir)/../distributed_matrix\ -I$(srcdir)/../seq_mv\ -I$(srcdir)/../parcsr_mv\ @PETSCINCLUDE@ \ ${C_COMPILE_FLAGS}\ ${CINCLUDES} ${CDEFS} CXXFLAGS = \ @PETSCINCLUDE@ \ ${CXX_COMPILE_FLAGS}\ -I..\ -I$(srcdir)\ -I$(srcdir)/..\ -I$(srcdir)/../utilities\ ${CINCLUDES}\ ${COPT}\ ${CDEBUG} ${CDEFS} RANLIB = @RANLIB@ ################################################################## # Main rules ################################################################## driver: driver.o lib_HYPRE.a @echo "Linking" $@ "... " ${CC} -o driver driver.o ${LFLAGS} link: rm driver $(MAKE) driver lib: $(PROTOS) ${OBJS} @echo "Building $@ ... " @echo "Building ${OBJS} ... " @ar -rcu libHYPRE_DistributedMatrix.a ${OBJS} ${RANLIB} libHYPRE_DistributedMatrix.a ################################################################## # Targets ################################################################## clean: @rm -f *.o *.dxx veryclean: clean @rm -f lib*.a ################################################################## # Generic rules ################################################################## .c.o: ${CC} -o $@ -c ${CFLAGS} $< .cc.o: ${CXX} -o $@ -c ${CFLAGS} $< .f.o: ${F77} -o $@ -c ${FFLAGS} $<