hypre/Makefile.in
falgout d9d96234d9 Fixed a problem with 'clean' and 'veryclean' targets on DECs.
HYPRE_PETSCLIBDIRS cannot go on a line by itself.
1999-06-11 15:15:52 +00:00

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