srcdir = .
HYPRE_DIRS =\
utilities\
struct_matrix_vector\
struct_linear_solvers\
test
all:
@\
for i in ${HYPRE_DIRS}; \
do \
if [ -d $$i ]; \
then \
echo "Making $$i ..."; \
(cd $$i; make); \
echo ""; \
fi; \
done
clean:
@\
for i in ${HYPRE_DIRS}; \
do \
if [ -d $$i ]; \
then \
echo "Cleaning $$i ..."; \
(cd $$i; make clean); \
fi; \
done
veryclean:
@\
for i in ${HYPRE_DIRS}; \
do \
if [ -d $$i ]; \
then \
echo "Very-cleaning $$i ..."; \
(cd $$i; make veryclean); \
fi; \
done
3.9.1.1 Example Procedure 1
Go through the directories serially and have the make procedure within each directory be
parallel.
For the purpose of this exercise we are only parallelizing t he “make all” component. The
“clean” and “veryclean” components can be parallelized in a simi lar fashion.
Modified ma kefile:
all:
@\
for i ${HYPRE_DIRS}; \
do \
if [ -d $$i ]; \
then \
echo "Making $$i ..."; \
echo $(PREFIX) $(MAKE) $(MAKE_J) -C $$i; \
$(PREFIX) $(MAKE) $(MAKE_J) -C $$i; \
fi; \
done
3-12 Deve loping Applications
Komentáře k této Příručce