128 lines
2.5 KiB
Makefile
128 lines
2.5 KiB
Makefile
#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} $<
|
|
|
|
|
|
|