191 lines
3.7 KiB
Makefile
191 lines
3.7 KiB
Makefile
#BHEADER***********************************************************************
|
|
# (c) 1998 The Regents of the University of California
|
|
#
|
|
# See the file COPYRIGHT_and_DISCLAIMER for a complete copyright
|
|
# notice, contact person, and disclaimer.
|
|
#
|
|
# $Revision$
|
|
#EHEADER***********************************************************************
|
|
|
|
SHELL = /bin/sh
|
|
|
|
srcdir = @srcdir@
|
|
VPATH = @srcdir@
|
|
|
|
# These are directories that are officially in HYPRE
|
|
HYPRE_DIRS =\
|
|
utilities\
|
|
struct_matrix_vector\
|
|
struct_linear_solvers
|
|
|
|
# These are directories that are not yet officially in HYPRE
|
|
HYPRE_EXTRA_DIRS =\
|
|
seq_matrix_vector\
|
|
parcsr_matrix_vector\
|
|
distributed_matrix\
|
|
matrix_matrix\
|
|
distributed_linear_solvers/pilut\
|
|
parcsr_linear_solvers\
|
|
seq_linear_solvers/pamg\
|
|
CI_struct_matrix_vector\
|
|
CI_struct_linear_solvers @HYPRE_PETSCLIBDIRS@
|
|
|
|
#These are the directories for structured matrices
|
|
HYPRE_STRUCT_DIRS =\
|
|
utilities\
|
|
struct_matrix_vector\
|
|
struct_linear_solvers
|
|
|
|
#These are the directories for sequential structured matrices
|
|
HYPRE_SEQ_DIRS =\
|
|
utilities\
|
|
seq_matrix_vector\
|
|
seq_linear_solvers/pamg
|
|
|
|
#These are the directories for parallel compressed sparse row
|
|
HYPRE_PARCSR_DIRS =\
|
|
utilities\
|
|
seq_matrix_vector\
|
|
parcsr_matrix_vector\
|
|
distributed_matrix\
|
|
matrix_matrix\
|
|
distributed_linear_solvers/pilut\
|
|
parcsr_linear_solvers
|
|
|
|
#These are the directories for PILUT accessed through CI using PETSc
|
|
HYPRE_CIPETSCPILUT_DIRS =\
|
|
utilities\
|
|
CI_struct_matrix_vector\
|
|
CI_struct_linear_solvers\
|
|
matrix_matrix\
|
|
distributed_linear_solvers/pilut\
|
|
distributed_matrix @HYPRE_PETSCLIBDIRS@
|
|
|
|
all:
|
|
@ \
|
|
rm -Rf hypre; \
|
|
mkdir hypre; \
|
|
for i in bin docs include lib; \
|
|
do \
|
|
mkdir hypre/$$i; \
|
|
done; \
|
|
HYPRE_INSTALL_DIR=`pwd`/hypre; \
|
|
export HYPRE_INSTALL_DIR; \
|
|
for i in ${HYPRE_DIRS}; \
|
|
do \
|
|
if [ -d $$i ]; \
|
|
then \
|
|
echo "Making $$i ..."; \
|
|
(cd $$i; make install); \
|
|
echo ""; \
|
|
fi; \
|
|
done; \
|
|
echo "Making test drivers ..."; \
|
|
(cd test; make); \
|
|
echo ""
|
|
|
|
beta: all
|
|
@ \
|
|
for i in ${HYPRE_EXTRA_DIRS}; \
|
|
do \
|
|
if [ -d $$i ]; \
|
|
then \
|
|
echo "Making $$i ..."; \
|
|
(cd $$i; make); \
|
|
echo ""; \
|
|
fi; \
|
|
done; \
|
|
echo "Making beta test drivers ..."; \
|
|
(cd test; make beta); \
|
|
echo ""
|
|
|
|
install: all
|
|
@ \
|
|
if [ ! "$$HYPRE_INSTALL_DIR" ]; \
|
|
then \
|
|
echo "Error: set the HYPRE_INSTALL_DIR environment variable"; \
|
|
exit 1; \
|
|
fi; \
|
|
if [ ! -d $$HYPRE_INSTALL_DIR ]; \
|
|
then \
|
|
echo "Error: no directory HYPRE_INSTALL_DIR=$$HYPRE_INSTALL_DIR"; \
|
|
exit 1; \
|
|
fi; \
|
|
echo "Installing hypre ..."; \
|
|
mv hypre/* $$HYPRE_INSTALL_DIR
|
|
|
|
clean:
|
|
@ \
|
|
for i in ${HYPRE_DIRS} ${HYPRE_EXTRA_DIRS}; \
|
|
do \
|
|
if [ -d $$i ]; \
|
|
then \
|
|
echo "Cleaning $$i ..."; \
|
|
(cd $$i; make clean); \
|
|
fi; \
|
|
done; \
|
|
echo "Cleaning test ..."; \
|
|
(cd test; make clean)
|
|
|
|
veryclean:
|
|
@ \
|
|
rm -Rf hypre; \
|
|
for i in ${HYPRE_DIRS} ${HYPRE_EXTRA_DIRS}; \
|
|
do \
|
|
if [ -d $$i ]; \
|
|
then \
|
|
echo "Very-cleaning $$i ..."; \
|
|
(cd $$i; make veryclean); \
|
|
fi; \
|
|
done; \
|
|
echo "Very-cleaning test ..."; \
|
|
(cd test; make veryclean)
|
|
|
|
struct:
|
|
@ \
|
|
for i in ${HYPRE_STRUCT_DIRS}; \
|
|
do \
|
|
if [ -d $$i ]; \
|
|
then \
|
|
echo "Making $$i ..."; \
|
|
(cd $$i; make); \
|
|
echo ""; \
|
|
fi; \
|
|
done
|
|
|
|
parcsr:
|
|
@ \
|
|
for i in ${HYPRE_PARCSR_DIRS}; \
|
|
do \
|
|
if [ -d $$i ]; \
|
|
then \
|
|
echo "Making $$i ..."; \
|
|
(cd $$i; make); \
|
|
echo ""; \
|
|
fi; \
|
|
done
|
|
|
|
seq:
|
|
@ \
|
|
for i in ${HYPRE_SEQ_DIRS}; \
|
|
do \
|
|
if [ -d $$i ]; \
|
|
then \
|
|
echo "Making $$i ..."; \
|
|
(cd $$i; make); \
|
|
echo ""; \
|
|
fi; \
|
|
done
|
|
|
|
pilut:
|
|
@ \
|
|
for i in ${HYPRE_CIPETSCPILUT_DIRS}; \
|
|
do \
|
|
if [ -d $$i ]; \
|
|
then \
|
|
echo "Making $$i ..."; \
|
|
(cd $$i; make); \
|
|
echo ""; \
|
|
fi; \
|
|
done
|