summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--c++/Makefile.in22
-rw-r--r--c++/examples/Makefile.in22
-rw-r--r--c++/src/Makefile.in22
-rw-r--r--c++/test/Makefile.in22
-rw-r--r--config/conclude.am22
-rw-r--r--examples/Makefile.in22
-rw-r--r--fortran/Makefile.in22
-rw-r--r--fortran/examples/Makefile.in22
-rw-r--r--fortran/src/Makefile.am4
-rw-r--r--fortran/src/Makefile.in32
-rw-r--r--fortran/test/Makefile.in22
-rw-r--r--fortran/testpar/Makefile.in22
-rwxr-xr-xhl/Makefile.in22
-rw-r--r--hl/c++/Makefile.in22
-rw-r--r--hl/c++/src/Makefile.in22
-rw-r--r--hl/c++/test/Makefile.in22
-rw-r--r--hl/fortran/Makefile.in22
-rw-r--r--hl/fortran/src/Makefile.in22
-rw-r--r--hl/fortran/test/Makefile.in22
-rw-r--r--hl/src/Makefile.in22
-rw-r--r--hl/test/Makefile.in22
-rw-r--r--hl/tools/gif2h5/Makefile.in22
-rw-r--r--perform/Makefile.in22
-rw-r--r--src/Makefile.in22
-rw-r--r--test/Makefile.in22
-rw-r--r--testpar/Makefile.in22
-rw-r--r--tools/Makefile.in22
-rw-r--r--tools/gifconv/Makefile.in22
-rw-r--r--tools/h5diff/Makefile.in22
-rw-r--r--tools/h5dump/Makefile.in22
-rwxr-xr-xtools/h5import/Makefile.in22
-rw-r--r--tools/h5jam/Makefile.in22
-rw-r--r--tools/h5ls/Makefile.in22
-rw-r--r--tools/h5repack/Makefile.in22
-rw-r--r--tools/lib/Makefile.in22
-rw-r--r--tools/misc/Makefile.in22
36 files changed, 570 insertions, 214 deletions
diff --git a/c++/Makefile.in b/c++/Makefile.in
index e774512..9e8302b 100644
--- a/c++/Makefile.in
+++ b/c++/Makefile.in
@@ -669,13 +669,14 @@ installcheck-local:
# lib/progs/tests targets recurse into subdirectories. build-* targets
# build files in this directory.
-# BUILT_SOURCES contain targets that need to be built before anything else
-# in the directory (e.g., Fortran type detection)
-build-lib: $(BUILT_SOURCES) $(LIB)
-build-progs: $(BUILT_SOURCES) $(LIB) $(PROGS)
-build-tests: $(BUILT_SOURCES) $(LIB) $(PROGS) $(TESTS)
+build-lib: $(LIB)
+build-progs: $(LIB) $(PROGS)
+build-tests: $(LIB) $(PROGS) $(TESTS)
-lib progs tests check-s check-p check-clean ::
+# General rule for recursive building targets.
+# BUILT_SOURCES contain targets that need to be built before anything else
+# in the directory (e.g., for Fortran type detection)
+lib progs tests check-s check-p :: $(BUILT_SOURCES)
@$(MAKE) $(AM_MAKEFLAGS) build-$@ || exit 1;
@for d in X $(SUBDIRS); do \
if test $$d != X && test $$d != .; then \
@@ -683,6 +684,15 @@ lib progs tests check-s check-p check-clean ::
fi; \
done
+# General rule for recursive cleaning targets. Like the rule above,
+# but doesn't require building BUILT_SOURCES.
+check-clean ::
+ @$(MAKE) $(AM_MAKEFLAGS) build-$@ || exit 1;
+ @for d in X $(SUBDIRS); do \
+ if test $$d != X && test $$d != .; then \
+ (set -x; cd $$d && $(MAKE) $(AM_MAKEFLAGS) $@) || exit 1; \
+ fi; \
+ done
# Tell Automake to build tests when the user types `make all' (this is
# not its default behavior). Also build EXTRA_LIB and EXTRA_PROG since
# Automake won't build them automatically, either.
diff --git a/c++/examples/Makefile.in b/c++/examples/Makefile.in
index 3a40616..6e54d86 100644
--- a/c++/examples/Makefile.in
+++ b/c++/examples/Makefile.in
@@ -582,13 +582,14 @@ h5group: $(srcdir)/h5group.cpp
# lib/progs/tests targets recurse into subdirectories. build-* targets
# build files in this directory.
-# BUILT_SOURCES contain targets that need to be built before anything else
-# in the directory (e.g., Fortran type detection)
-build-lib: $(BUILT_SOURCES) $(LIB)
-build-progs: $(BUILT_SOURCES) $(LIB) $(PROGS)
-build-tests: $(BUILT_SOURCES) $(LIB) $(PROGS) $(TESTS)
+build-lib: $(LIB)
+build-progs: $(LIB) $(PROGS)
+build-tests: $(LIB) $(PROGS) $(TESTS)
-lib progs tests check-s check-p check-clean ::
+# General rule for recursive building targets.
+# BUILT_SOURCES contain targets that need to be built before anything else
+# in the directory (e.g., for Fortran type detection)
+lib progs tests check-s check-p :: $(BUILT_SOURCES)
@$(MAKE) $(AM_MAKEFLAGS) build-$@ || exit 1;
@for d in X $(SUBDIRS); do \
if test $$d != X && test $$d != .; then \
@@ -596,6 +597,15 @@ lib progs tests check-s check-p check-clean ::
fi; \
done
+# General rule for recursive cleaning targets. Like the rule above,
+# but doesn't require building BUILT_SOURCES.
+check-clean ::
+ @$(MAKE) $(AM_MAKEFLAGS) build-$@ || exit 1;
+ @for d in X $(SUBDIRS); do \
+ if test $$d != X && test $$d != .; then \
+ (set -x; cd $$d && $(MAKE) $(AM_MAKEFLAGS) $@) || exit 1; \
+ fi; \
+ done
# Tell Automake to build tests when the user types `make all' (this is
# not its default behavior). Also build EXTRA_LIB and EXTRA_PROG since
# Automake won't build them automatically, either.
diff --git a/c++/src/Makefile.in b/c++/src/Makefile.in
index 7f27c8a..2cd4718 100644
--- a/c++/src/Makefile.in
+++ b/c++/src/Makefile.in
@@ -763,13 +763,14 @@ mostlyclean-local:
# lib/progs/tests targets recurse into subdirectories. build-* targets
# build files in this directory.
-# BUILT_SOURCES contain targets that need to be built before anything else
-# in the directory (e.g., Fortran type detection)
-build-lib: $(BUILT_SOURCES) $(LIB)
-build-progs: $(BUILT_SOURCES) $(LIB) $(PROGS)
-build-tests: $(BUILT_SOURCES) $(LIB) $(PROGS) $(TESTS)
+build-lib: $(LIB)
+build-progs: $(LIB) $(PROGS)
+build-tests: $(LIB) $(PROGS) $(TESTS)
-lib progs tests check-s check-p check-clean ::
+# General rule for recursive building targets.
+# BUILT_SOURCES contain targets that need to be built before anything else
+# in the directory (e.g., for Fortran type detection)
+lib progs tests check-s check-p :: $(BUILT_SOURCES)
@$(MAKE) $(AM_MAKEFLAGS) build-$@ || exit 1;
@for d in X $(SUBDIRS); do \
if test $$d != X && test $$d != .; then \
@@ -777,6 +778,15 @@ lib progs tests check-s check-p check-clean ::
fi; \
done
+# General rule for recursive cleaning targets. Like the rule above,
+# but doesn't require building BUILT_SOURCES.
+check-clean ::
+ @$(MAKE) $(AM_MAKEFLAGS) build-$@ || exit 1;
+ @for d in X $(SUBDIRS); do \
+ if test $$d != X && test $$d != .; then \
+ (set -x; cd $$d && $(MAKE) $(AM_MAKEFLAGS) $@) || exit 1; \
+ fi; \
+ done
# Tell Automake to build tests when the user types `make all' (this is
# not its default behavior). Also build EXTRA_LIB and EXTRA_PROG since
# Automake won't build them automatically, either.
diff --git a/c++/test/Makefile.in b/c++/test/Makefile.in
index 79ae53f..41fa310 100644
--- a/c++/test/Makefile.in
+++ b/c++/test/Makefile.in
@@ -653,13 +653,14 @@ mostlyclean-local:
# lib/progs/tests targets recurse into subdirectories. build-* targets
# build files in this directory.
-# BUILT_SOURCES contain targets that need to be built before anything else
-# in the directory (e.g., Fortran type detection)
-build-lib: $(BUILT_SOURCES) $(LIB)
-build-progs: $(BUILT_SOURCES) $(LIB) $(PROGS)
-build-tests: $(BUILT_SOURCES) $(LIB) $(PROGS) $(TESTS)
+build-lib: $(LIB)
+build-progs: $(LIB) $(PROGS)
+build-tests: $(LIB) $(PROGS) $(TESTS)
-lib progs tests check-s check-p check-clean ::
+# General rule for recursive building targets.
+# BUILT_SOURCES contain targets that need to be built before anything else
+# in the directory (e.g., for Fortran type detection)
+lib progs tests check-s check-p :: $(BUILT_SOURCES)
@$(MAKE) $(AM_MAKEFLAGS) build-$@ || exit 1;
@for d in X $(SUBDIRS); do \
if test $$d != X && test $$d != .; then \
@@ -667,6 +668,15 @@ lib progs tests check-s check-p check-clean ::
fi; \
done
+# General rule for recursive cleaning targets. Like the rule above,
+# but doesn't require building BUILT_SOURCES.
+check-clean ::
+ @$(MAKE) $(AM_MAKEFLAGS) build-$@ || exit 1;
+ @for d in X $(SUBDIRS); do \
+ if test $$d != X && test $$d != .; then \
+ (set -x; cd $$d && $(MAKE) $(AM_MAKEFLAGS) $@) || exit 1; \
+ fi; \
+ done
# Tell Automake to build tests when the user types `make all' (this is
# not its default behavior). Also build EXTRA_LIB and EXTRA_PROG since
# Automake won't build them automatically, either.
diff --git a/config/conclude.am b/config/conclude.am
index 479de46..dafea77 100644
--- a/config/conclude.am
+++ b/config/conclude.am
@@ -28,13 +28,14 @@ TESTS = $(check_PROGRAMS) $(check_SCRIPTS) $(EXTRA_TEST)
# lib/progs/tests targets recurse into subdirectories. build-* targets
# build files in this directory.
-# BUILT_SOURCES contain targets that need to be built before anything else
-# in the directory (e.g., Fortran type detection)
-build-lib: $(BUILT_SOURCES) $(LIB)
-build-progs: $(BUILT_SOURCES) $(LIB) $(PROGS)
-build-tests: $(BUILT_SOURCES) $(LIB) $(PROGS) $(TESTS)
+build-lib: $(LIB)
+build-progs: $(LIB) $(PROGS)
+build-tests: $(LIB) $(PROGS) $(TESTS)
-lib progs tests check-s check-p check-clean ::
+# General rule for recursive building targets.
+# BUILT_SOURCES contain targets that need to be built before anything else
+# in the directory (e.g., for Fortran type detection)
+lib progs tests check-s check-p :: $(BUILT_SOURCES)
@$(MAKE) $(AM_MAKEFLAGS) build-$@ || exit 1;
@for d in X $(SUBDIRS); do \
if test $$d != X && test $$d != .; then \
@@ -42,6 +43,15 @@ lib progs tests check-s check-p check-clean ::
fi; \
done
+# General rule for recursive cleaning targets. Like the rule above,
+# but doesn't require building BUILT_SOURCES.
+check-clean ::
+ @$(MAKE) $(AM_MAKEFLAGS) build-$@ || exit 1;
+ @for d in X $(SUBDIRS); do \
+ if test $$d != X && test $$d != .; then \
+ (set -x; cd $$d && $(MAKE) $(AM_MAKEFLAGS) $@) || exit 1; \
+ fi; \
+ done
# Tell Automake to build tests when the user types `make all' (this is
# not its default behavior). Also build EXTRA_LIB and EXTRA_PROG since
# Automake won't build them automatically, either.
diff --git a/examples/Makefile.in b/examples/Makefile.in
index 6465ef9..084ac5c 100644
--- a/examples/Makefile.in
+++ b/examples/Makefile.in
@@ -592,13 +592,14 @@ h5_dtransform: $(srcdir)/h5_dtransform.c
# lib/progs/tests targets recurse into subdirectories. build-* targets
# build files in this directory.
-# BUILT_SOURCES contain targets that need to be built before anything else
-# in the directory (e.g., Fortran type detection)
-build-lib: $(BUILT_SOURCES) $(LIB)
-build-progs: $(BUILT_SOURCES) $(LIB) $(PROGS)
-build-tests: $(BUILT_SOURCES) $(LIB) $(PROGS) $(TESTS)
+build-lib: $(LIB)
+build-progs: $(LIB) $(PROGS)
+build-tests: $(LIB) $(PROGS) $(TESTS)
-lib progs tests check-s check-p check-clean ::
+# General rule for recursive building targets.
+# BUILT_SOURCES contain targets that need to be built before anything else
+# in the directory (e.g., for Fortran type detection)
+lib progs tests check-s check-p :: $(BUILT_SOURCES)
@$(MAKE) $(AM_MAKEFLAGS) build-$@ || exit 1;
@for d in X $(SUBDIRS); do \
if test $$d != X && test $$d != .; then \
@@ -606,6 +607,15 @@ lib progs tests check-s check-p check-clean ::
fi; \
done
+# General rule for recursive cleaning targets. Like the rule above,
+# but doesn't require building BUILT_SOURCES.
+check-clean ::
+ @$(MAKE) $(AM_MAKEFLAGS) build-$@ || exit 1;
+ @for d in X $(SUBDIRS); do \
+ if test $$d != X && test $$d != .; then \
+ (set -x; cd $$d && $(MAKE) $(AM_MAKEFLAGS) $@) || exit 1; \
+ fi; \
+ done
# Tell Automake to build tests when the user types `make all' (this is
# not its default behavior). Also build EXTRA_LIB and EXTRA_PROG since
# Automake won't build them automatically, either.
diff --git a/fortran/Makefile.in b/fortran/Makefile.in
index 2016943..3a9c4fc 100644
--- a/fortran/Makefile.in
+++ b/fortran/Makefile.in
@@ -678,13 +678,14 @@ installcheck-local:
# lib/progs/tests targets recurse into subdirectories. build-* targets
# build files in this directory.
-# BUILT_SOURCES contain targets that need to be built before anything else
-# in the directory (e.g., Fortran type detection)
-build-lib: $(BUILT_SOURCES) $(LIB)
-build-progs: $(BUILT_SOURCES) $(LIB) $(PROGS)
-build-tests: $(BUILT_SOURCES) $(LIB) $(PROGS) $(TESTS)
+build-lib: $(LIB)
+build-progs: $(LIB) $(PROGS)
+build-tests: $(LIB) $(PROGS) $(TESTS)
-lib progs tests check-s check-p check-clean ::
+# General rule for recursive building targets.
+# BUILT_SOURCES contain targets that need to be built before anything else
+# in the directory (e.g., for Fortran type detection)
+lib progs tests check-s check-p :: $(BUILT_SOURCES)
@$(MAKE) $(AM_MAKEFLAGS) build-$@ || exit 1;
@for d in X $(SUBDIRS); do \
if test $$d != X && test $$d != .; then \
@@ -692,6 +693,15 @@ lib progs tests check-s check-p check-clean ::
fi; \
done
+# General rule for recursive cleaning targets. Like the rule above,
+# but doesn't require building BUILT_SOURCES.
+check-clean ::
+ @$(MAKE) $(AM_MAKEFLAGS) build-$@ || exit 1;
+ @for d in X $(SUBDIRS); do \
+ if test $$d != X && test $$d != .; then \
+ (set -x; cd $$d && $(MAKE) $(AM_MAKEFLAGS) $@) || exit 1; \
+ fi; \
+ done
# Tell Automake to build tests when the user types `make all' (this is
# not its default behavior). Also build EXTRA_LIB and EXTRA_PROG since
# Automake won't build them automatically, either.
diff --git a/fortran/examples/Makefile.in b/fortran/examples/Makefile.in
index e774fcb..cb78035 100644
--- a/fortran/examples/Makefile.in
+++ b/fortran/examples/Makefile.in
@@ -600,13 +600,14 @@ ph5example: ph5example.f90
# lib/progs/tests targets recurse into subdirectories. build-* targets
# build files in this directory.
-# BUILT_SOURCES contain targets that need to be built before anything else
-# in the directory (e.g., Fortran type detection)
-build-lib: $(BUILT_SOURCES) $(LIB)
-build-progs: $(BUILT_SOURCES) $(LIB) $(PROGS)
-build-tests: $(BUILT_SOURCES) $(LIB) $(PROGS) $(TESTS)
+build-lib: $(LIB)
+build-progs: $(LIB) $(PROGS)
+build-tests: $(LIB) $(PROGS) $(TESTS)
-lib progs tests check-s check-p check-clean ::
+# General rule for recursive building targets.
+# BUILT_SOURCES contain targets that need to be built before anything else
+# in the directory (e.g., for Fortran type detection)
+lib progs tests check-s check-p :: $(BUILT_SOURCES)
@$(MAKE) $(AM_MAKEFLAGS) build-$@ || exit 1;
@for d in X $(SUBDIRS); do \
if test $$d != X && test $$d != .; then \
@@ -614,6 +615,15 @@ lib progs tests check-s check-p check-clean ::
fi; \
done
+# General rule for recursive cleaning targets. Like the rule above,
+# but doesn't require building BUILT_SOURCES.
+check-clean ::
+ @$(MAKE) $(AM_MAKEFLAGS) build-$@ || exit 1;
+ @for d in X $(SUBDIRS); do \
+ if test $$d != X && test $$d != .; then \
+ (set -x; cd $$d && $(MAKE) $(AM_MAKEFLAGS) $@) || exit 1; \
+ fi; \
+ done
# Tell Automake to build tests when the user types `make all' (this is
# not its default behavior). Also build EXTRA_LIB and EXTRA_PROG since
# Automake won't build them automatically, either.
diff --git a/fortran/src/Makefile.am b/fortran/src/Makefile.am
index 266186f..52854a3 100644
--- a/fortran/src/Makefile.am
+++ b/fortran/src/Makefile.am
@@ -22,7 +22,7 @@ include $(top_srcdir)/config/commence.am
# Include src directory in both Fortran and C flags (C compiler is used
# for linking).
INCLUDES = -I$(top_srcdir)/src
-AM_FCFLAGS=-I$(top_srcdir)/src -I$(top_srcdir)/src/fortran
+AM_FCFLAGS=-I$(top_srcdir)/src -I$(top_srcdir)/fortran/src
AM_FCLIBS=$(LIBHDF5)
@@ -144,7 +144,7 @@ H5fortran_detect.f90: H5test_kind$(EXEEXT)
# H5test_kind.f90 is included in the distribution, and Automake knows
# how to compile a fortran program given its sources.
-H5test_kind_SOURCES = H5test_kind.f90
+H5test_kind_SOURCES = $(srcdir)/H5test_kind.f90
# Mark this directory as part of the Fortran API
HDF_FORTRAN=yes
diff --git a/fortran/src/Makefile.in b/fortran/src/Makefile.in
index 5a34175..0578ca1 100644
--- a/fortran/src/Makefile.in
+++ b/fortran/src/Makefile.in
@@ -373,7 +373,7 @@ CHECK_CLEANFILES = *.chkexe *.chklog *.clog
# Include src directory in both Fortran and C flags (C compiler is used
# for linking).
INCLUDES = -I$(top_srcdir)/src
-AM_FCFLAGS = -I$(top_srcdir)/src -I$(top_srcdir)/src/fortran
+AM_FCFLAGS = -I$(top_srcdir)/src -I$(top_srcdir)/fortran/src
AM_FCLIBS = $(LIBHDF5)
# This is our main target, the fortran library
@@ -429,7 +429,7 @@ H5fortran_detect_SOURCES = H5fortran_detect.f90
# H5test_kind.f90 is included in the distribution, and Automake knows
# how to compile a fortran program given its sources.
-H5test_kind_SOURCES = H5test_kind.f90
+H5test_kind_SOURCES = $(srcdir)/H5test_kind.f90
# Mark this directory as part of the Fortran API
HDF_FORTRAN = yes
@@ -586,6 +586,12 @@ distclean-compile:
.f90.lo:
$(LTFCCOMPILE) -c -o $@ $<
+H5test_kind.o: $(srcdir)/H5test_kind.f90
+ $(FC) $(AM_FCFLAGS) $(FCFLAGS) -c -o H5test_kind.o `test -f '$(srcdir)/H5test_kind.f90' || echo '$(srcdir)/'`$(srcdir)/H5test_kind.f90
+
+H5test_kind.obj: $(srcdir)/H5test_kind.f90
+ $(FC) $(AM_FCFLAGS) $(FCFLAGS) -c -o H5test_kind.obj `if test -f '$(srcdir)/H5test_kind.f90'; then $(CYGPATH_W) '$(srcdir)/H5test_kind.f90'; else $(CYGPATH_W) '$(srcdir)/$(srcdir)/H5test_kind.f90'; fi`
+
mostlyclean-libtool:
-rm -f *.lo
@@ -886,13 +892,14 @@ HDF5mpio.lo: $(srcdir)/H5FDmpioff.f90 H5f90global.lo H5Aff.lo \
# lib/progs/tests targets recurse into subdirectories. build-* targets
# build files in this directory.
-# BUILT_SOURCES contain targets that need to be built before anything else
-# in the directory (e.g., Fortran type detection)
-build-lib: $(BUILT_SOURCES) $(LIB)
-build-progs: $(BUILT_SOURCES) $(LIB) $(PROGS)
-build-tests: $(BUILT_SOURCES) $(LIB) $(PROGS) $(TESTS)
+build-lib: $(LIB)
+build-progs: $(LIB) $(PROGS)
+build-tests: $(LIB) $(PROGS) $(TESTS)
-lib progs tests check-s check-p check-clean ::
+# General rule for recursive building targets.
+# BUILT_SOURCES contain targets that need to be built before anything else
+# in the directory (e.g., for Fortran type detection)
+lib progs tests check-s check-p :: $(BUILT_SOURCES)
@$(MAKE) $(AM_MAKEFLAGS) build-$@ || exit 1;
@for d in X $(SUBDIRS); do \
if test $$d != X && test $$d != .; then \
@@ -900,6 +907,15 @@ lib progs tests check-s check-p check-clean ::
fi; \
done
+# General rule for recursive cleaning targets. Like the rule above,
+# but doesn't require building BUILT_SOURCES.
+check-clean ::
+ @$(MAKE) $(AM_MAKEFLAGS) build-$@ || exit 1;
+ @for d in X $(SUBDIRS); do \
+ if test $$d != X && test $$d != .; then \
+ (set -x; cd $$d && $(MAKE) $(AM_MAKEFLAGS) $@) || exit 1; \
+ fi; \
+ done
# Tell Automake to build tests when the user types `make all' (this is
# not its default behavior). Also build EXTRA_LIB and EXTRA_PROG since
# Automake won't build them automatically, either.
diff --git a/fortran/test/Makefile.in b/fortran/test/Makefile.in
index 7b3ade1..e8b8093 100644
--- a/fortran/test/Makefile.in
+++ b/fortran/test/Makefile.in
@@ -825,13 +825,14 @@ fflush2.chkexe_: fflush1.chkexe_
# lib/progs/tests targets recurse into subdirectories. build-* targets
# build files in this directory.
-# BUILT_SOURCES contain targets that need to be built before anything else
-# in the directory (e.g., Fortran type detection)
-build-lib: $(BUILT_SOURCES) $(LIB)
-build-progs: $(BUILT_SOURCES) $(LIB) $(PROGS)
-build-tests: $(BUILT_SOURCES) $(LIB) $(PROGS) $(TESTS)
+build-lib: $(LIB)
+build-progs: $(LIB) $(PROGS)
+build-tests: $(LIB) $(PROGS) $(TESTS)
-lib progs tests check-s check-p check-clean ::
+# General rule for recursive building targets.
+# BUILT_SOURCES contain targets that need to be built before anything else
+# in the directory (e.g., for Fortran type detection)
+lib progs tests check-s check-p :: $(BUILT_SOURCES)
@$(MAKE) $(AM_MAKEFLAGS) build-$@ || exit 1;
@for d in X $(SUBDIRS); do \
if test $$d != X && test $$d != .; then \
@@ -839,6 +840,15 @@ lib progs tests check-s check-p check-clean ::
fi; \
done
+# General rule for recursive cleaning targets. Like the rule above,
+# but doesn't require building BUILT_SOURCES.
+check-clean ::
+ @$(MAKE) $(AM_MAKEFLAGS) build-$@ || exit 1;
+ @for d in X $(SUBDIRS); do \
+ if test $$d != X && test $$d != .; then \
+ (set -x; cd $$d && $(MAKE) $(AM_MAKEFLAGS) $@) || exit 1; \
+ fi; \
+ done
# Tell Automake to build tests when the user types `make all' (this is
# not its default behavior). Also build EXTRA_LIB and EXTRA_PROG since
# Automake won't build them automatically, either.
diff --git a/fortran/testpar/Makefile.in b/fortran/testpar/Makefile.in
index e9df849..3301d1f 100644
--- a/fortran/testpar/Makefile.in
+++ b/fortran/testpar/Makefile.in
@@ -620,13 +620,14 @@ check-install: installcheck
# lib/progs/tests targets recurse into subdirectories. build-* targets
# build files in this directory.
-# BUILT_SOURCES contain targets that need to be built before anything else
-# in the directory (e.g., Fortran type detection)
-build-lib: $(BUILT_SOURCES) $(LIB)
-build-progs: $(BUILT_SOURCES) $(LIB) $(PROGS)
-build-tests: $(BUILT_SOURCES) $(LIB) $(PROGS) $(TESTS)
+build-lib: $(LIB)
+build-progs: $(LIB) $(PROGS)
+build-tests: $(LIB) $(PROGS) $(TESTS)
-lib progs tests check-s check-p check-clean ::
+# General rule for recursive building targets.
+# BUILT_SOURCES contain targets that need to be built before anything else
+# in the directory (e.g., for Fortran type detection)
+lib progs tests check-s check-p :: $(BUILT_SOURCES)
@$(MAKE) $(AM_MAKEFLAGS) build-$@ || exit 1;
@for d in X $(SUBDIRS); do \
if test $$d != X && test $$d != .; then \
@@ -634,6 +635,15 @@ lib progs tests check-s check-p check-clean ::
fi; \
done
+# General rule for recursive cleaning targets. Like the rule above,
+# but doesn't require building BUILT_SOURCES.
+check-clean ::
+ @$(MAKE) $(AM_MAKEFLAGS) build-$@ || exit 1;
+ @for d in X $(SUBDIRS); do \
+ if test $$d != X && test $$d != .; then \
+ (set -x; cd $$d && $(MAKE) $(AM_MAKEFLAGS) $@) || exit 1; \
+ fi; \
+ done
# Tell Automake to build tests when the user types `make all' (this is
# not its default behavior). Also build EXTRA_LIB and EXTRA_PROG since
# Automake won't build them automatically, either.
diff --git a/hl/Makefile.in b/hl/Makefile.in
index 3809deb..005019d 100755
--- a/hl/Makefile.in
+++ b/hl/Makefile.in
@@ -664,13 +664,14 @@ check-install: installcheck
# lib/progs/tests targets recurse into subdirectories. build-* targets
# build files in this directory.
-# BUILT_SOURCES contain targets that need to be built before anything else
-# in the directory (e.g., Fortran type detection)
-build-lib: $(BUILT_SOURCES) $(LIB)
-build-progs: $(BUILT_SOURCES) $(LIB) $(PROGS)
-build-tests: $(BUILT_SOURCES) $(LIB) $(PROGS) $(TESTS)
+build-lib: $(LIB)
+build-progs: $(LIB) $(PROGS)
+build-tests: $(LIB) $(PROGS) $(TESTS)
-lib progs tests check-s check-p check-clean ::
+# General rule for recursive building targets.
+# BUILT_SOURCES contain targets that need to be built before anything else
+# in the directory (e.g., for Fortran type detection)
+lib progs tests check-s check-p :: $(BUILT_SOURCES)
@$(MAKE) $(AM_MAKEFLAGS) build-$@ || exit 1;
@for d in X $(SUBDIRS); do \
if test $$d != X && test $$d != .; then \
@@ -678,6 +679,15 @@ lib progs tests check-s check-p check-clean ::
fi; \
done
+# General rule for recursive cleaning targets. Like the rule above,
+# but doesn't require building BUILT_SOURCES.
+check-clean ::
+ @$(MAKE) $(AM_MAKEFLAGS) build-$@ || exit 1;
+ @for d in X $(SUBDIRS); do \
+ if test $$d != X && test $$d != .; then \
+ (set -x; cd $$d && $(MAKE) $(AM_MAKEFLAGS) $@) || exit 1; \
+ fi; \
+ done
# Tell Automake to build tests when the user types `make all' (this is
# not its default behavior). Also build EXTRA_LIB and EXTRA_PROG since
# Automake won't build them automatically, either.
diff --git a/hl/c++/Makefile.in b/hl/c++/Makefile.in
index 6f9983d..3042d0e 100644
--- a/hl/c++/Makefile.in
+++ b/hl/c++/Makefile.in
@@ -658,13 +658,14 @@ check-install: installcheck
# lib/progs/tests targets recurse into subdirectories. build-* targets
# build files in this directory.
-# BUILT_SOURCES contain targets that need to be built before anything else
-# in the directory (e.g., Fortran type detection)
-build-lib: $(BUILT_SOURCES) $(LIB)
-build-progs: $(BUILT_SOURCES) $(LIB) $(PROGS)
-build-tests: $(BUILT_SOURCES) $(LIB) $(PROGS) $(TESTS)
+build-lib: $(LIB)
+build-progs: $(LIB) $(PROGS)
+build-tests: $(LIB) $(PROGS) $(TESTS)
-lib progs tests check-s check-p check-clean ::
+# General rule for recursive building targets.
+# BUILT_SOURCES contain targets that need to be built before anything else
+# in the directory (e.g., for Fortran type detection)
+lib progs tests check-s check-p :: $(BUILT_SOURCES)
@$(MAKE) $(AM_MAKEFLAGS) build-$@ || exit 1;
@for d in X $(SUBDIRS); do \
if test $$d != X && test $$d != .; then \
@@ -672,6 +673,15 @@ lib progs tests check-s check-p check-clean ::
fi; \
done
+# General rule for recursive cleaning targets. Like the rule above,
+# but doesn't require building BUILT_SOURCES.
+check-clean ::
+ @$(MAKE) $(AM_MAKEFLAGS) build-$@ || exit 1;
+ @for d in X $(SUBDIRS); do \
+ if test $$d != X && test $$d != .; then \
+ (set -x; cd $$d && $(MAKE) $(AM_MAKEFLAGS) $@) || exit 1; \
+ fi; \
+ done
# Tell Automake to build tests when the user types `make all' (this is
# not its default behavior). Also build EXTRA_LIB and EXTRA_PROG since
# Automake won't build them automatically, either.
diff --git a/hl/c++/src/Makefile.in b/hl/c++/src/Makefile.in
index 9ca6844..ecb35ad 100644
--- a/hl/c++/src/Makefile.in
+++ b/hl/c++/src/Makefile.in
@@ -677,13 +677,14 @@ check-install: installcheck
# lib/progs/tests targets recurse into subdirectories. build-* targets
# build files in this directory.
-# BUILT_SOURCES contain targets that need to be built before anything else
-# in the directory (e.g., Fortran type detection)
-build-lib: $(BUILT_SOURCES) $(LIB)
-build-progs: $(BUILT_SOURCES) $(LIB) $(PROGS)
-build-tests: $(BUILT_SOURCES) $(LIB) $(PROGS) $(TESTS)
+build-lib: $(LIB)
+build-progs: $(LIB) $(PROGS)
+build-tests: $(LIB) $(PROGS) $(TESTS)
-lib progs tests check-s check-p check-clean ::
+# General rule for recursive building targets.
+# BUILT_SOURCES contain targets that need to be built before anything else
+# in the directory (e.g., for Fortran type detection)
+lib progs tests check-s check-p :: $(BUILT_SOURCES)
@$(MAKE) $(AM_MAKEFLAGS) build-$@ || exit 1;
@for d in X $(SUBDIRS); do \
if test $$d != X && test $$d != .; then \
@@ -691,6 +692,15 @@ lib progs tests check-s check-p check-clean ::
fi; \
done
+# General rule for recursive cleaning targets. Like the rule above,
+# but doesn't require building BUILT_SOURCES.
+check-clean ::
+ @$(MAKE) $(AM_MAKEFLAGS) build-$@ || exit 1;
+ @for d in X $(SUBDIRS); do \
+ if test $$d != X && test $$d != .; then \
+ (set -x; cd $$d && $(MAKE) $(AM_MAKEFLAGS) $@) || exit 1; \
+ fi; \
+ done
# Tell Automake to build tests when the user types `make all' (this is
# not its default behavior). Also build EXTRA_LIB and EXTRA_PROG since
# Automake won't build them automatically, either.
diff --git a/hl/c++/test/Makefile.in b/hl/c++/test/Makefile.in
index 318cd10..e61a284 100644
--- a/hl/c++/test/Makefile.in
+++ b/hl/c++/test/Makefile.in
@@ -627,13 +627,14 @@ check-install: installcheck
# lib/progs/tests targets recurse into subdirectories. build-* targets
# build files in this directory.
-# BUILT_SOURCES contain targets that need to be built before anything else
-# in the directory (e.g., Fortran type detection)
-build-lib: $(BUILT_SOURCES) $(LIB)
-build-progs: $(BUILT_SOURCES) $(LIB) $(PROGS)
-build-tests: $(BUILT_SOURCES) $(LIB) $(PROGS) $(TESTS)
+build-lib: $(LIB)
+build-progs: $(LIB) $(PROGS)
+build-tests: $(LIB) $(PROGS) $(TESTS)
-lib progs tests check-s check-p check-clean ::
+# General rule for recursive building targets.
+# BUILT_SOURCES contain targets that need to be built before anything else
+# in the directory (e.g., for Fortran type detection)
+lib progs tests check-s check-p :: $(BUILT_SOURCES)
@$(MAKE) $(AM_MAKEFLAGS) build-$@ || exit 1;
@for d in X $(SUBDIRS); do \
if test $$d != X && test $$d != .; then \
@@ -641,6 +642,15 @@ lib progs tests check-s check-p check-clean ::
fi; \
done
+# General rule for recursive cleaning targets. Like the rule above,
+# but doesn't require building BUILT_SOURCES.
+check-clean ::
+ @$(MAKE) $(AM_MAKEFLAGS) build-$@ || exit 1;
+ @for d in X $(SUBDIRS); do \
+ if test $$d != X && test $$d != .; then \
+ (set -x; cd $$d && $(MAKE) $(AM_MAKEFLAGS) $@) || exit 1; \
+ fi; \
+ done
# Tell Automake to build tests when the user types `make all' (this is
# not its default behavior). Also build EXTRA_LIB and EXTRA_PROG since
# Automake won't build them automatically, either.
diff --git a/hl/fortran/Makefile.in b/hl/fortran/Makefile.in
index 1ed7f2a..d39eb79 100644
--- a/hl/fortran/Makefile.in
+++ b/hl/fortran/Makefile.in
@@ -662,13 +662,14 @@ check-install: installcheck
# lib/progs/tests targets recurse into subdirectories. build-* targets
# build files in this directory.
-# BUILT_SOURCES contain targets that need to be built before anything else
-# in the directory (e.g., Fortran type detection)
-build-lib: $(BUILT_SOURCES) $(LIB)
-build-progs: $(BUILT_SOURCES) $(LIB) $(PROGS)
-build-tests: $(BUILT_SOURCES) $(LIB) $(PROGS) $(TESTS)
+build-lib: $(LIB)
+build-progs: $(LIB) $(PROGS)
+build-tests: $(LIB) $(PROGS) $(TESTS)
-lib progs tests check-s check-p check-clean ::
+# General rule for recursive building targets.
+# BUILT_SOURCES contain targets that need to be built before anything else
+# in the directory (e.g., for Fortran type detection)
+lib progs tests check-s check-p :: $(BUILT_SOURCES)
@$(MAKE) $(AM_MAKEFLAGS) build-$@ || exit 1;
@for d in X $(SUBDIRS); do \
if test $$d != X && test $$d != .; then \
@@ -676,6 +677,15 @@ lib progs tests check-s check-p check-clean ::
fi; \
done
+# General rule for recursive cleaning targets. Like the rule above,
+# but doesn't require building BUILT_SOURCES.
+check-clean ::
+ @$(MAKE) $(AM_MAKEFLAGS) build-$@ || exit 1;
+ @for d in X $(SUBDIRS); do \
+ if test $$d != X && test $$d != .; then \
+ (set -x; cd $$d && $(MAKE) $(AM_MAKEFLAGS) $@) || exit 1; \
+ fi; \
+ done
# Tell Automake to build tests when the user types `make all' (this is
# not its default behavior). Also build EXTRA_LIB and EXTRA_PROG since
# Automake won't build them automatically, either.
diff --git a/hl/fortran/src/Makefile.in b/hl/fortran/src/Makefile.in
index 1fd0bda..5f23b40 100644
--- a/hl/fortran/src/Makefile.in
+++ b/hl/fortran/src/Makefile.in
@@ -711,13 +711,14 @@ H5TBff.lo: $(srcdir)/H5TBff.f90
# lib/progs/tests targets recurse into subdirectories. build-* targets
# build files in this directory.
-# BUILT_SOURCES contain targets that need to be built before anything else
-# in the directory (e.g., Fortran type detection)
-build-lib: $(BUILT_SOURCES) $(LIB)
-build-progs: $(BUILT_SOURCES) $(LIB) $(PROGS)
-build-tests: $(BUILT_SOURCES) $(LIB) $(PROGS) $(TESTS)
+build-lib: $(LIB)
+build-progs: $(LIB) $(PROGS)
+build-tests: $(LIB) $(PROGS) $(TESTS)
-lib progs tests check-s check-p check-clean ::
+# General rule for recursive building targets.
+# BUILT_SOURCES contain targets that need to be built before anything else
+# in the directory (e.g., for Fortran type detection)
+lib progs tests check-s check-p :: $(BUILT_SOURCES)
@$(MAKE) $(AM_MAKEFLAGS) build-$@ || exit 1;
@for d in X $(SUBDIRS); do \
if test $$d != X && test $$d != .; then \
@@ -725,6 +726,15 @@ lib progs tests check-s check-p check-clean ::
fi; \
done
+# General rule for recursive cleaning targets. Like the rule above,
+# but doesn't require building BUILT_SOURCES.
+check-clean ::
+ @$(MAKE) $(AM_MAKEFLAGS) build-$@ || exit 1;
+ @for d in X $(SUBDIRS); do \
+ if test $$d != X && test $$d != .; then \
+ (set -x; cd $$d && $(MAKE) $(AM_MAKEFLAGS) $@) || exit 1; \
+ fi; \
+ done
# Tell Automake to build tests when the user types `make all' (this is
# not its default behavior). Also build EXTRA_LIB and EXTRA_PROG since
# Automake won't build them automatically, either.
diff --git a/hl/fortran/test/Makefile.in b/hl/fortran/test/Makefile.in
index e44d33b..2153462 100644
--- a/hl/fortran/test/Makefile.in
+++ b/hl/fortran/test/Makefile.in
@@ -630,13 +630,14 @@ check-install: installcheck
# lib/progs/tests targets recurse into subdirectories. build-* targets
# build files in this directory.
-# BUILT_SOURCES contain targets that need to be built before anything else
-# in the directory (e.g., Fortran type detection)
-build-lib: $(BUILT_SOURCES) $(LIB)
-build-progs: $(BUILT_SOURCES) $(LIB) $(PROGS)
-build-tests: $(BUILT_SOURCES) $(LIB) $(PROGS) $(TESTS)
+build-lib: $(LIB)
+build-progs: $(LIB) $(PROGS)
+build-tests: $(LIB) $(PROGS) $(TESTS)
-lib progs tests check-s check-p check-clean ::
+# General rule for recursive building targets.
+# BUILT_SOURCES contain targets that need to be built before anything else
+# in the directory (e.g., for Fortran type detection)
+lib progs tests check-s check-p :: $(BUILT_SOURCES)
@$(MAKE) $(AM_MAKEFLAGS) build-$@ || exit 1;
@for d in X $(SUBDIRS); do \
if test $$d != X && test $$d != .; then \
@@ -644,6 +645,15 @@ lib progs tests check-s check-p check-clean ::
fi; \
done
+# General rule for recursive cleaning targets. Like the rule above,
+# but doesn't require building BUILT_SOURCES.
+check-clean ::
+ @$(MAKE) $(AM_MAKEFLAGS) build-$@ || exit 1;
+ @for d in X $(SUBDIRS); do \
+ if test $$d != X && test $$d != .; then \
+ (set -x; cd $$d && $(MAKE) $(AM_MAKEFLAGS) $@) || exit 1; \
+ fi; \
+ done
# Tell Automake to build tests when the user types `make all' (this is
# not its default behavior). Also build EXTRA_LIB and EXTRA_PROG since
# Automake won't build them automatically, either.
diff --git a/hl/src/Makefile.in b/hl/src/Makefile.in
index f01dbd8..dd9f4d8 100644
--- a/hl/src/Makefile.in
+++ b/hl/src/Makefile.in
@@ -680,13 +680,14 @@ distclean-compile:
# lib/progs/tests targets recurse into subdirectories. build-* targets
# build files in this directory.
-# BUILT_SOURCES contain targets that need to be built before anything else
-# in the directory (e.g., Fortran type detection)
-build-lib: $(BUILT_SOURCES) $(LIB)
-build-progs: $(BUILT_SOURCES) $(LIB) $(PROGS)
-build-tests: $(BUILT_SOURCES) $(LIB) $(PROGS) $(TESTS)
+build-lib: $(LIB)
+build-progs: $(LIB) $(PROGS)
+build-tests: $(LIB) $(PROGS) $(TESTS)
-lib progs tests check-s check-p check-clean ::
+# General rule for recursive building targets.
+# BUILT_SOURCES contain targets that need to be built before anything else
+# in the directory (e.g., for Fortran type detection)
+lib progs tests check-s check-p :: $(BUILT_SOURCES)
@$(MAKE) $(AM_MAKEFLAGS) build-$@ || exit 1;
@for d in X $(SUBDIRS); do \
if test $$d != X && test $$d != .; then \
@@ -694,6 +695,15 @@ lib progs tests check-s check-p check-clean ::
fi; \
done
+# General rule for recursive cleaning targets. Like the rule above,
+# but doesn't require building BUILT_SOURCES.
+check-clean ::
+ @$(MAKE) $(AM_MAKEFLAGS) build-$@ || exit 1;
+ @for d in X $(SUBDIRS); do \
+ if test $$d != X && test $$d != .; then \
+ (set -x; cd $$d && $(MAKE) $(AM_MAKEFLAGS) $@) || exit 1; \
+ fi; \
+ done
# Tell Automake to build tests when the user types `make all' (this is
# not its default behavior). Also build EXTRA_LIB and EXTRA_PROG since
# Automake won't build them automatically, either.
diff --git a/hl/test/Makefile.in b/hl/test/Makefile.in
index 3b21ba2..7836aae 100644
--- a/hl/test/Makefile.in
+++ b/hl/test/Makefile.in
@@ -662,13 +662,14 @@ check-install: installcheck
# lib/progs/tests targets recurse into subdirectories. build-* targets
# build files in this directory.
-# BUILT_SOURCES contain targets that need to be built before anything else
-# in the directory (e.g., Fortran type detection)
-build-lib: $(BUILT_SOURCES) $(LIB)
-build-progs: $(BUILT_SOURCES) $(LIB) $(PROGS)
-build-tests: $(BUILT_SOURCES) $(LIB) $(PROGS) $(TESTS)
+build-lib: $(LIB)
+build-progs: $(LIB) $(PROGS)
+build-tests: $(LIB) $(PROGS) $(TESTS)
-lib progs tests check-s check-p check-clean ::
+# General rule for recursive building targets.
+# BUILT_SOURCES contain targets that need to be built before anything else
+# in the directory (e.g., for Fortran type detection)
+lib progs tests check-s check-p :: $(BUILT_SOURCES)
@$(MAKE) $(AM_MAKEFLAGS) build-$@ || exit 1;
@for d in X $(SUBDIRS); do \
if test $$d != X && test $$d != .; then \
@@ -676,6 +677,15 @@ lib progs tests check-s check-p check-clean ::
fi; \
done
+# General rule for recursive cleaning targets. Like the rule above,
+# but doesn't require building BUILT_SOURCES.
+check-clean ::
+ @$(MAKE) $(AM_MAKEFLAGS) build-$@ || exit 1;
+ @for d in X $(SUBDIRS); do \
+ if test $$d != X && test $$d != .; then \
+ (set -x; cd $$d && $(MAKE) $(AM_MAKEFLAGS) $@) || exit 1; \
+ fi; \
+ done
# Tell Automake to build tests when the user types `make all' (this is
# not its default behavior). Also build EXTRA_LIB and EXTRA_PROG since
# Automake won't build them automatically, either.
diff --git a/hl/tools/gif2h5/Makefile.in b/hl/tools/gif2h5/Makefile.in
index 1843e51..20190f3 100644
--- a/hl/tools/gif2h5/Makefile.in
+++ b/hl/tools/gif2h5/Makefile.in
@@ -661,13 +661,14 @@ check-install: installcheck
# lib/progs/tests targets recurse into subdirectories. build-* targets
# build files in this directory.
-# BUILT_SOURCES contain targets that need to be built before anything else
-# in the directory (e.g., Fortran type detection)
-build-lib: $(BUILT_SOURCES) $(LIB)
-build-progs: $(BUILT_SOURCES) $(LIB) $(PROGS)
-build-tests: $(BUILT_SOURCES) $(LIB) $(PROGS) $(TESTS)
+build-lib: $(LIB)
+build-progs: $(LIB) $(PROGS)
+build-tests: $(LIB) $(PROGS) $(TESTS)
-lib progs tests check-s check-p check-clean ::
+# General rule for recursive building targets.
+# BUILT_SOURCES contain targets that need to be built before anything else
+# in the directory (e.g., for Fortran type detection)
+lib progs tests check-s check-p :: $(BUILT_SOURCES)
@$(MAKE) $(AM_MAKEFLAGS) build-$@ || exit 1;
@for d in X $(SUBDIRS); do \
if test $$d != X && test $$d != .; then \
@@ -675,6 +676,15 @@ lib progs tests check-s check-p check-clean ::
fi; \
done
+# General rule for recursive cleaning targets. Like the rule above,
+# but doesn't require building BUILT_SOURCES.
+check-clean ::
+ @$(MAKE) $(AM_MAKEFLAGS) build-$@ || exit 1;
+ @for d in X $(SUBDIRS); do \
+ if test $$d != X && test $$d != .; then \
+ (set -x; cd $$d && $(MAKE) $(AM_MAKEFLAGS) $@) || exit 1; \
+ fi; \
+ done
# Tell Automake to build tests when the user types `make all' (this is
# not its default behavior). Also build EXTRA_LIB and EXTRA_PROG since
# Automake won't build them automatically, either.
diff --git a/perform/Makefile.in b/perform/Makefile.in
index 6f426e6..3031c54 100644
--- a/perform/Makefile.in
+++ b/perform/Makefile.in
@@ -747,13 +747,14 @@ check-install: installcheck
# lib/progs/tests targets recurse into subdirectories. build-* targets
# build files in this directory.
-# BUILT_SOURCES contain targets that need to be built before anything else
-# in the directory (e.g., Fortran type detection)
-build-lib: $(BUILT_SOURCES) $(LIB)
-build-progs: $(BUILT_SOURCES) $(LIB) $(PROGS)
-build-tests: $(BUILT_SOURCES) $(LIB) $(PROGS) $(TESTS)
+build-lib: $(LIB)
+build-progs: $(LIB) $(PROGS)
+build-tests: $(LIB) $(PROGS) $(TESTS)
-lib progs tests check-s check-p check-clean ::
+# General rule for recursive building targets.
+# BUILT_SOURCES contain targets that need to be built before anything else
+# in the directory (e.g., for Fortran type detection)
+lib progs tests check-s check-p :: $(BUILT_SOURCES)
@$(MAKE) $(AM_MAKEFLAGS) build-$@ || exit 1;
@for d in X $(SUBDIRS); do \
if test $$d != X && test $$d != .; then \
@@ -761,6 +762,15 @@ lib progs tests check-s check-p check-clean ::
fi; \
done
+# General rule for recursive cleaning targets. Like the rule above,
+# but doesn't require building BUILT_SOURCES.
+check-clean ::
+ @$(MAKE) $(AM_MAKEFLAGS) build-$@ || exit 1;
+ @for d in X $(SUBDIRS); do \
+ if test $$d != X && test $$d != .; then \
+ (set -x; cd $$d && $(MAKE) $(AM_MAKEFLAGS) $@) || exit 1; \
+ fi; \
+ done
# Tell Automake to build tests when the user types `make all' (this is
# not its default behavior). Also build EXTRA_LIB and EXTRA_PROG since
# Automake won't build them automatically, either.
diff --git a/src/Makefile.in b/src/Makefile.in
index f694f38..c802bfb 100644
--- a/src/Makefile.in
+++ b/src/Makefile.in
@@ -1018,13 +1018,14 @@ trace: $(libhdf5_la_SOURCES)
# lib/progs/tests targets recurse into subdirectories. build-* targets
# build files in this directory.
-# BUILT_SOURCES contain targets that need to be built before anything else
-# in the directory (e.g., Fortran type detection)
-build-lib: $(BUILT_SOURCES) $(LIB)
-build-progs: $(BUILT_SOURCES) $(LIB) $(PROGS)
-build-tests: $(BUILT_SOURCES) $(LIB) $(PROGS) $(TESTS)
+build-lib: $(LIB)
+build-progs: $(LIB) $(PROGS)
+build-tests: $(LIB) $(PROGS) $(TESTS)
-lib progs tests check-s check-p check-clean ::
+# General rule for recursive building targets.
+# BUILT_SOURCES contain targets that need to be built before anything else
+# in the directory (e.g., for Fortran type detection)
+lib progs tests check-s check-p :: $(BUILT_SOURCES)
@$(MAKE) $(AM_MAKEFLAGS) build-$@ || exit 1;
@for d in X $(SUBDIRS); do \
if test $$d != X && test $$d != .; then \
@@ -1032,6 +1033,15 @@ lib progs tests check-s check-p check-clean ::
fi; \
done
+# General rule for recursive cleaning targets. Like the rule above,
+# but doesn't require building BUILT_SOURCES.
+check-clean ::
+ @$(MAKE) $(AM_MAKEFLAGS) build-$@ || exit 1;
+ @for d in X $(SUBDIRS); do \
+ if test $$d != X && test $$d != .; then \
+ (set -x; cd $$d && $(MAKE) $(AM_MAKEFLAGS) $@) || exit 1; \
+ fi; \
+ done
# Tell Automake to build tests when the user types `make all' (this is
# not its default behavior). Also build EXTRA_LIB and EXTRA_PROG since
# Automake won't build them automatically, either.
diff --git a/test/Makefile.in b/test/Makefile.in
index b15299e..b89a04a 100644
--- a/test/Makefile.in
+++ b/test/Makefile.in
@@ -1206,13 +1206,14 @@ flush2.chkexe_: flush1.chkexe_
# lib/progs/tests targets recurse into subdirectories. build-* targets
# build files in this directory.
-# BUILT_SOURCES contain targets that need to be built before anything else
-# in the directory (e.g., Fortran type detection)
-build-lib: $(BUILT_SOURCES) $(LIB)
-build-progs: $(BUILT_SOURCES) $(LIB) $(PROGS)
-build-tests: $(BUILT_SOURCES) $(LIB) $(PROGS) $(TESTS)
+build-lib: $(LIB)
+build-progs: $(LIB) $(PROGS)
+build-tests: $(LIB) $(PROGS) $(TESTS)
-lib progs tests check-s check-p check-clean ::
+# General rule for recursive building targets.
+# BUILT_SOURCES contain targets that need to be built before anything else
+# in the directory (e.g., for Fortran type detection)
+lib progs tests check-s check-p :: $(BUILT_SOURCES)
@$(MAKE) $(AM_MAKEFLAGS) build-$@ || exit 1;
@for d in X $(SUBDIRS); do \
if test $$d != X && test $$d != .; then \
@@ -1220,6 +1221,15 @@ lib progs tests check-s check-p check-clean ::
fi; \
done
+# General rule for recursive cleaning targets. Like the rule above,
+# but doesn't require building BUILT_SOURCES.
+check-clean ::
+ @$(MAKE) $(AM_MAKEFLAGS) build-$@ || exit 1;
+ @for d in X $(SUBDIRS); do \
+ if test $$d != X && test $$d != .; then \
+ (set -x; cd $$d && $(MAKE) $(AM_MAKEFLAGS) $@) || exit 1; \
+ fi; \
+ done
# Tell Automake to build tests when the user types `make all' (this is
# not its default behavior). Also build EXTRA_LIB and EXTRA_PROG since
# Automake won't build them automatically, either.
diff --git a/testpar/Makefile.in b/testpar/Makefile.in
index 9c763cb..11dfc0e 100644
--- a/testpar/Makefile.in
+++ b/testpar/Makefile.in
@@ -658,13 +658,14 @@ check-install: installcheck
# lib/progs/tests targets recurse into subdirectories. build-* targets
# build files in this directory.
-# BUILT_SOURCES contain targets that need to be built before anything else
-# in the directory (e.g., Fortran type detection)
-build-lib: $(BUILT_SOURCES) $(LIB)
-build-progs: $(BUILT_SOURCES) $(LIB) $(PROGS)
-build-tests: $(BUILT_SOURCES) $(LIB) $(PROGS) $(TESTS)
+build-lib: $(LIB)
+build-progs: $(LIB) $(PROGS)
+build-tests: $(LIB) $(PROGS) $(TESTS)
-lib progs tests check-s check-p check-clean ::
+# General rule for recursive building targets.
+# BUILT_SOURCES contain targets that need to be built before anything else
+# in the directory (e.g., for Fortran type detection)
+lib progs tests check-s check-p :: $(BUILT_SOURCES)
@$(MAKE) $(AM_MAKEFLAGS) build-$@ || exit 1;
@for d in X $(SUBDIRS); do \
if test $$d != X && test $$d != .; then \
@@ -672,6 +673,15 @@ lib progs tests check-s check-p check-clean ::
fi; \
done
+# General rule for recursive cleaning targets. Like the rule above,
+# but doesn't require building BUILT_SOURCES.
+check-clean ::
+ @$(MAKE) $(AM_MAKEFLAGS) build-$@ || exit 1;
+ @for d in X $(SUBDIRS); do \
+ if test $$d != X && test $$d != .; then \
+ (set -x; cd $$d && $(MAKE) $(AM_MAKEFLAGS) $@) || exit 1; \
+ fi; \
+ done
# Tell Automake to build tests when the user types `make all' (this is
# not its default behavior). Also build EXTRA_LIB and EXTRA_PROG since
# Automake won't build them automatically, either.
diff --git a/tools/Makefile.in b/tools/Makefile.in
index aebc030..d7962e7 100644
--- a/tools/Makefile.in
+++ b/tools/Makefile.in
@@ -660,13 +660,14 @@ check-install: installcheck
# lib/progs/tests targets recurse into subdirectories. build-* targets
# build files in this directory.
-# BUILT_SOURCES contain targets that need to be built before anything else
-# in the directory (e.g., Fortran type detection)
-build-lib: $(BUILT_SOURCES) $(LIB)
-build-progs: $(BUILT_SOURCES) $(LIB) $(PROGS)
-build-tests: $(BUILT_SOURCES) $(LIB) $(PROGS) $(TESTS)
+build-lib: $(LIB)
+build-progs: $(LIB) $(PROGS)
+build-tests: $(LIB) $(PROGS) $(TESTS)
-lib progs tests check-s check-p check-clean ::
+# General rule for recursive building targets.
+# BUILT_SOURCES contain targets that need to be built before anything else
+# in the directory (e.g., for Fortran type detection)
+lib progs tests check-s check-p :: $(BUILT_SOURCES)
@$(MAKE) $(AM_MAKEFLAGS) build-$@ || exit 1;
@for d in X $(SUBDIRS); do \
if test $$d != X && test $$d != .; then \
@@ -674,6 +675,15 @@ lib progs tests check-s check-p check-clean ::
fi; \
done
+# General rule for recursive cleaning targets. Like the rule above,
+# but doesn't require building BUILT_SOURCES.
+check-clean ::
+ @$(MAKE) $(AM_MAKEFLAGS) build-$@ || exit 1;
+ @for d in X $(SUBDIRS); do \
+ if test $$d != X && test $$d != .; then \
+ (set -x; cd $$d && $(MAKE) $(AM_MAKEFLAGS) $@) || exit 1; \
+ fi; \
+ done
# Tell Automake to build tests when the user types `make all' (this is
# not its default behavior). Also build EXTRA_LIB and EXTRA_PROG since
# Automake won't build them automatically, either.
diff --git a/tools/gifconv/Makefile.in b/tools/gifconv/Makefile.in
index 1843e51..20190f3 100644
--- a/tools/gifconv/Makefile.in
+++ b/tools/gifconv/Makefile.in
@@ -661,13 +661,14 @@ check-install: installcheck
# lib/progs/tests targets recurse into subdirectories. build-* targets
# build files in this directory.
-# BUILT_SOURCES contain targets that need to be built before anything else
-# in the directory (e.g., Fortran type detection)
-build-lib: $(BUILT_SOURCES) $(LIB)
-build-progs: $(BUILT_SOURCES) $(LIB) $(PROGS)
-build-tests: $(BUILT_SOURCES) $(LIB) $(PROGS) $(TESTS)
+build-lib: $(LIB)
+build-progs: $(LIB) $(PROGS)
+build-tests: $(LIB) $(PROGS) $(TESTS)
-lib progs tests check-s check-p check-clean ::
+# General rule for recursive building targets.
+# BUILT_SOURCES contain targets that need to be built before anything else
+# in the directory (e.g., for Fortran type detection)
+lib progs tests check-s check-p :: $(BUILT_SOURCES)
@$(MAKE) $(AM_MAKEFLAGS) build-$@ || exit 1;
@for d in X $(SUBDIRS); do \
if test $$d != X && test $$d != .; then \
@@ -675,6 +676,15 @@ lib progs tests check-s check-p check-clean ::
fi; \
done
+# General rule for recursive cleaning targets. Like the rule above,
+# but doesn't require building BUILT_SOURCES.
+check-clean ::
+ @$(MAKE) $(AM_MAKEFLAGS) build-$@ || exit 1;
+ @for d in X $(SUBDIRS); do \
+ if test $$d != X && test $$d != .; then \
+ (set -x; cd $$d && $(MAKE) $(AM_MAKEFLAGS) $@) || exit 1; \
+ fi; \
+ done
# Tell Automake to build tests when the user types `make all' (this is
# not its default behavior). Also build EXTRA_LIB and EXTRA_PROG since
# Automake won't build them automatically, either.
diff --git a/tools/h5diff/Makefile.in b/tools/h5diff/Makefile.in
index 775c764..168fbaf 100644
--- a/tools/h5diff/Makefile.in
+++ b/tools/h5diff/Makefile.in
@@ -701,13 +701,14 @@ check-install: installcheck
# lib/progs/tests targets recurse into subdirectories. build-* targets
# build files in this directory.
-# BUILT_SOURCES contain targets that need to be built before anything else
-# in the directory (e.g., Fortran type detection)
-build-lib: $(BUILT_SOURCES) $(LIB)
-build-progs: $(BUILT_SOURCES) $(LIB) $(PROGS)
-build-tests: $(BUILT_SOURCES) $(LIB) $(PROGS) $(TESTS)
+build-lib: $(LIB)
+build-progs: $(LIB) $(PROGS)
+build-tests: $(LIB) $(PROGS) $(TESTS)
-lib progs tests check-s check-p check-clean ::
+# General rule for recursive building targets.
+# BUILT_SOURCES contain targets that need to be built before anything else
+# in the directory (e.g., for Fortran type detection)
+lib progs tests check-s check-p :: $(BUILT_SOURCES)
@$(MAKE) $(AM_MAKEFLAGS) build-$@ || exit 1;
@for d in X $(SUBDIRS); do \
if test $$d != X && test $$d != .; then \
@@ -715,6 +716,15 @@ lib progs tests check-s check-p check-clean ::
fi; \
done
+# General rule for recursive cleaning targets. Like the rule above,
+# but doesn't require building BUILT_SOURCES.
+check-clean ::
+ @$(MAKE) $(AM_MAKEFLAGS) build-$@ || exit 1;
+ @for d in X $(SUBDIRS); do \
+ if test $$d != X && test $$d != .; then \
+ (set -x; cd $$d && $(MAKE) $(AM_MAKEFLAGS) $@) || exit 1; \
+ fi; \
+ done
# Tell Automake to build tests when the user types `make all' (this is
# not its default behavior). Also build EXTRA_LIB and EXTRA_PROG since
# Automake won't build them automatically, either.
diff --git a/tools/h5dump/Makefile.in b/tools/h5dump/Makefile.in
index bab5765..a0bc999 100644
--- a/tools/h5dump/Makefile.in
+++ b/tools/h5dump/Makefile.in
@@ -676,13 +676,14 @@ check-install: installcheck
# lib/progs/tests targets recurse into subdirectories. build-* targets
# build files in this directory.
-# BUILT_SOURCES contain targets that need to be built before anything else
-# in the directory (e.g., Fortran type detection)
-build-lib: $(BUILT_SOURCES) $(LIB)
-build-progs: $(BUILT_SOURCES) $(LIB) $(PROGS)
-build-tests: $(BUILT_SOURCES) $(LIB) $(PROGS) $(TESTS)
+build-lib: $(LIB)
+build-progs: $(LIB) $(PROGS)
+build-tests: $(LIB) $(PROGS) $(TESTS)
-lib progs tests check-s check-p check-clean ::
+# General rule for recursive building targets.
+# BUILT_SOURCES contain targets that need to be built before anything else
+# in the directory (e.g., for Fortran type detection)
+lib progs tests check-s check-p :: $(BUILT_SOURCES)
@$(MAKE) $(AM_MAKEFLAGS) build-$@ || exit 1;
@for d in X $(SUBDIRS); do \
if test $$d != X && test $$d != .; then \
@@ -690,6 +691,15 @@ lib progs tests check-s check-p check-clean ::
fi; \
done
+# General rule for recursive cleaning targets. Like the rule above,
+# but doesn't require building BUILT_SOURCES.
+check-clean ::
+ @$(MAKE) $(AM_MAKEFLAGS) build-$@ || exit 1;
+ @for d in X $(SUBDIRS); do \
+ if test $$d != X && test $$d != .; then \
+ (set -x; cd $$d && $(MAKE) $(AM_MAKEFLAGS) $@) || exit 1; \
+ fi; \
+ done
# Tell Automake to build tests when the user types `make all' (this is
# not its default behavior). Also build EXTRA_LIB and EXTRA_PROG since
# Automake won't build them automatically, either.
diff --git a/tools/h5import/Makefile.in b/tools/h5import/Makefile.in
index 163bcae..1ca807b 100755
--- a/tools/h5import/Makefile.in
+++ b/tools/h5import/Makefile.in
@@ -669,13 +669,14 @@ check-install: installcheck
# lib/progs/tests targets recurse into subdirectories. build-* targets
# build files in this directory.
-# BUILT_SOURCES contain targets that need to be built before anything else
-# in the directory (e.g., Fortran type detection)
-build-lib: $(BUILT_SOURCES) $(LIB)
-build-progs: $(BUILT_SOURCES) $(LIB) $(PROGS)
-build-tests: $(BUILT_SOURCES) $(LIB) $(PROGS) $(TESTS)
+build-lib: $(LIB)
+build-progs: $(LIB) $(PROGS)
+build-tests: $(LIB) $(PROGS) $(TESTS)
-lib progs tests check-s check-p check-clean ::
+# General rule for recursive building targets.
+# BUILT_SOURCES contain targets that need to be built before anything else
+# in the directory (e.g., for Fortran type detection)
+lib progs tests check-s check-p :: $(BUILT_SOURCES)
@$(MAKE) $(AM_MAKEFLAGS) build-$@ || exit 1;
@for d in X $(SUBDIRS); do \
if test $$d != X && test $$d != .; then \
@@ -683,6 +684,15 @@ lib progs tests check-s check-p check-clean ::
fi; \
done
+# General rule for recursive cleaning targets. Like the rule above,
+# but doesn't require building BUILT_SOURCES.
+check-clean ::
+ @$(MAKE) $(AM_MAKEFLAGS) build-$@ || exit 1;
+ @for d in X $(SUBDIRS); do \
+ if test $$d != X && test $$d != .; then \
+ (set -x; cd $$d && $(MAKE) $(AM_MAKEFLAGS) $@) || exit 1; \
+ fi; \
+ done
# Tell Automake to build tests when the user types `make all' (this is
# not its default behavior). Also build EXTRA_LIB and EXTRA_PROG since
# Automake won't build them automatically, either.
diff --git a/tools/h5jam/Makefile.in b/tools/h5jam/Makefile.in
index 3945184..c513703 100644
--- a/tools/h5jam/Makefile.in
+++ b/tools/h5jam/Makefile.in
@@ -696,13 +696,14 @@ check-install: installcheck
# lib/progs/tests targets recurse into subdirectories. build-* targets
# build files in this directory.
-# BUILT_SOURCES contain targets that need to be built before anything else
-# in the directory (e.g., Fortran type detection)
-build-lib: $(BUILT_SOURCES) $(LIB)
-build-progs: $(BUILT_SOURCES) $(LIB) $(PROGS)
-build-tests: $(BUILT_SOURCES) $(LIB) $(PROGS) $(TESTS)
+build-lib: $(LIB)
+build-progs: $(LIB) $(PROGS)
+build-tests: $(LIB) $(PROGS) $(TESTS)
-lib progs tests check-s check-p check-clean ::
+# General rule for recursive building targets.
+# BUILT_SOURCES contain targets that need to be built before anything else
+# in the directory (e.g., for Fortran type detection)
+lib progs tests check-s check-p :: $(BUILT_SOURCES)
@$(MAKE) $(AM_MAKEFLAGS) build-$@ || exit 1;
@for d in X $(SUBDIRS); do \
if test $$d != X && test $$d != .; then \
@@ -710,6 +711,15 @@ lib progs tests check-s check-p check-clean ::
fi; \
done
+# General rule for recursive cleaning targets. Like the rule above,
+# but doesn't require building BUILT_SOURCES.
+check-clean ::
+ @$(MAKE) $(AM_MAKEFLAGS) build-$@ || exit 1;
+ @for d in X $(SUBDIRS); do \
+ if test $$d != X && test $$d != .; then \
+ (set -x; cd $$d && $(MAKE) $(AM_MAKEFLAGS) $@) || exit 1; \
+ fi; \
+ done
# Tell Automake to build tests when the user types `make all' (this is
# not its default behavior). Also build EXTRA_LIB and EXTRA_PROG since
# Automake won't build them automatically, either.
diff --git a/tools/h5ls/Makefile.in b/tools/h5ls/Makefile.in
index c274c82..59e1d24 100644
--- a/tools/h5ls/Makefile.in
+++ b/tools/h5ls/Makefile.in
@@ -649,13 +649,14 @@ check-install: installcheck
# lib/progs/tests targets recurse into subdirectories. build-* targets
# build files in this directory.
-# BUILT_SOURCES contain targets that need to be built before anything else
-# in the directory (e.g., Fortran type detection)
-build-lib: $(BUILT_SOURCES) $(LIB)
-build-progs: $(BUILT_SOURCES) $(LIB) $(PROGS)
-build-tests: $(BUILT_SOURCES) $(LIB) $(PROGS) $(TESTS)
+build-lib: $(LIB)
+build-progs: $(LIB) $(PROGS)
+build-tests: $(LIB) $(PROGS) $(TESTS)
-lib progs tests check-s check-p check-clean ::
+# General rule for recursive building targets.
+# BUILT_SOURCES contain targets that need to be built before anything else
+# in the directory (e.g., for Fortran type detection)
+lib progs tests check-s check-p :: $(BUILT_SOURCES)
@$(MAKE) $(AM_MAKEFLAGS) build-$@ || exit 1;
@for d in X $(SUBDIRS); do \
if test $$d != X && test $$d != .; then \
@@ -663,6 +664,15 @@ lib progs tests check-s check-p check-clean ::
fi; \
done
+# General rule for recursive cleaning targets. Like the rule above,
+# but doesn't require building BUILT_SOURCES.
+check-clean ::
+ @$(MAKE) $(AM_MAKEFLAGS) build-$@ || exit 1;
+ @for d in X $(SUBDIRS); do \
+ if test $$d != X && test $$d != .; then \
+ (set -x; cd $$d && $(MAKE) $(AM_MAKEFLAGS) $@) || exit 1; \
+ fi; \
+ done
# Tell Automake to build tests when the user types `make all' (this is
# not its default behavior). Also build EXTRA_LIB and EXTRA_PROG since
# Automake won't build them automatically, either.
diff --git a/tools/h5repack/Makefile.in b/tools/h5repack/Makefile.in
index 7a99891..9f20870 100644
--- a/tools/h5repack/Makefile.in
+++ b/tools/h5repack/Makefile.in
@@ -726,13 +726,14 @@ check-install: installcheck
# lib/progs/tests targets recurse into subdirectories. build-* targets
# build files in this directory.
-# BUILT_SOURCES contain targets that need to be built before anything else
-# in the directory (e.g., Fortran type detection)
-build-lib: $(BUILT_SOURCES) $(LIB)
-build-progs: $(BUILT_SOURCES) $(LIB) $(PROGS)
-build-tests: $(BUILT_SOURCES) $(LIB) $(PROGS) $(TESTS)
+build-lib: $(LIB)
+build-progs: $(LIB) $(PROGS)
+build-tests: $(LIB) $(PROGS) $(TESTS)
-lib progs tests check-s check-p check-clean ::
+# General rule for recursive building targets.
+# BUILT_SOURCES contain targets that need to be built before anything else
+# in the directory (e.g., for Fortran type detection)
+lib progs tests check-s check-p :: $(BUILT_SOURCES)
@$(MAKE) $(AM_MAKEFLAGS) build-$@ || exit 1;
@for d in X $(SUBDIRS); do \
if test $$d != X && test $$d != .; then \
@@ -740,6 +741,15 @@ lib progs tests check-s check-p check-clean ::
fi; \
done
+# General rule for recursive cleaning targets. Like the rule above,
+# but doesn't require building BUILT_SOURCES.
+check-clean ::
+ @$(MAKE) $(AM_MAKEFLAGS) build-$@ || exit 1;
+ @for d in X $(SUBDIRS); do \
+ if test $$d != X && test $$d != .; then \
+ (set -x; cd $$d && $(MAKE) $(AM_MAKEFLAGS) $@) || exit 1; \
+ fi; \
+ done
# Tell Automake to build tests when the user types `make all' (this is
# not its default behavior). Also build EXTRA_LIB and EXTRA_PROG since
# Automake won't build them automatically, either.
diff --git a/tools/lib/Makefile.in b/tools/lib/Makefile.in
index 8900ad3..b01a6e2 100644
--- a/tools/lib/Makefile.in
+++ b/tools/lib/Makefile.in
@@ -659,13 +659,14 @@ check-install: installcheck
# lib/progs/tests targets recurse into subdirectories. build-* targets
# build files in this directory.
-# BUILT_SOURCES contain targets that need to be built before anything else
-# in the directory (e.g., Fortran type detection)
-build-lib: $(BUILT_SOURCES) $(LIB)
-build-progs: $(BUILT_SOURCES) $(LIB) $(PROGS)
-build-tests: $(BUILT_SOURCES) $(LIB) $(PROGS) $(TESTS)
+build-lib: $(LIB)
+build-progs: $(LIB) $(PROGS)
+build-tests: $(LIB) $(PROGS) $(TESTS)
-lib progs tests check-s check-p check-clean ::
+# General rule for recursive building targets.
+# BUILT_SOURCES contain targets that need to be built before anything else
+# in the directory (e.g., for Fortran type detection)
+lib progs tests check-s check-p :: $(BUILT_SOURCES)
@$(MAKE) $(AM_MAKEFLAGS) build-$@ || exit 1;
@for d in X $(SUBDIRS); do \
if test $$d != X && test $$d != .; then \
@@ -673,6 +674,15 @@ lib progs tests check-s check-p check-clean ::
fi; \
done
+# General rule for recursive cleaning targets. Like the rule above,
+# but doesn't require building BUILT_SOURCES.
+check-clean ::
+ @$(MAKE) $(AM_MAKEFLAGS) build-$@ || exit 1;
+ @for d in X $(SUBDIRS); do \
+ if test $$d != X && test $$d != .; then \
+ (set -x; cd $$d && $(MAKE) $(AM_MAKEFLAGS) $@) || exit 1; \
+ fi; \
+ done
# Tell Automake to build tests when the user types `make all' (this is
# not its default behavior). Also build EXTRA_LIB and EXTRA_PROG since
# Automake won't build them automatically, either.
diff --git a/tools/misc/Makefile.in b/tools/misc/Makefile.in
index ab4fa2b..806d8e2 100644
--- a/tools/misc/Makefile.in
+++ b/tools/misc/Makefile.in
@@ -754,13 +754,14 @@ h5redeploy: h5redeploy.in
# lib/progs/tests targets recurse into subdirectories. build-* targets
# build files in this directory.
-# BUILT_SOURCES contain targets that need to be built before anything else
-# in the directory (e.g., Fortran type detection)
-build-lib: $(BUILT_SOURCES) $(LIB)
-build-progs: $(BUILT_SOURCES) $(LIB) $(PROGS)
-build-tests: $(BUILT_SOURCES) $(LIB) $(PROGS) $(TESTS)
+build-lib: $(LIB)
+build-progs: $(LIB) $(PROGS)
+build-tests: $(LIB) $(PROGS) $(TESTS)
-lib progs tests check-s check-p check-clean ::
+# General rule for recursive building targets.
+# BUILT_SOURCES contain targets that need to be built before anything else
+# in the directory (e.g., for Fortran type detection)
+lib progs tests check-s check-p :: $(BUILT_SOURCES)
@$(MAKE) $(AM_MAKEFLAGS) build-$@ || exit 1;
@for d in X $(SUBDIRS); do \
if test $$d != X && test $$d != .; then \
@@ -768,6 +769,15 @@ lib progs tests check-s check-p check-clean ::
fi; \
done
+# General rule for recursive cleaning targets. Like the rule above,
+# but doesn't require building BUILT_SOURCES.
+check-clean ::
+ @$(MAKE) $(AM_MAKEFLAGS) build-$@ || exit 1;
+ @for d in X $(SUBDIRS); do \
+ if test $$d != X && test $$d != .; then \
+ (set -x; cd $$d && $(MAKE) $(AM_MAKEFLAGS) $@) || exit 1; \
+ fi; \
+ done
# Tell Automake to build tests when the user types `make all' (this is
# not its default behavior). Also build EXTRA_LIB and EXTRA_PROG since
# Automake won't build them automatically, either.