diff options
author | James Laird <jlaird@hdfgroup.org> | 2005-02-11 17:40:52 (GMT) |
---|---|---|
committer | James Laird <jlaird@hdfgroup.org> | 2005-02-11 17:40:52 (GMT) |
commit | 3f0a35a4eab869793f5b3882da35a2fe0b683dbd (patch) | |
tree | 35c5a256e137aa8e16c120b4a59feab2cbeb2fe0 /Makefile.in | |
parent | 54f376edbb1bce24bff19fb6b7c3d298470356be (diff) | |
download | hdf5-3f0a35a4eab869793f5b3882da35a2fe0b683dbd.zip hdf5-3f0a35a4eab869793f5b3882da35a2fe0b683dbd.tar.gz hdf5-3f0a35a4eab869793f5b3882da35a2fe0b683dbd.tar.bz2 |
[svn-r9988] Purpose:
Bug fix
Description:
pmake (on modi4, for instance) complains about undefined variables
if it is run without the -V flag, which turns those errors to warnings.
Solution:
Added test to configure.in to see if $MAKE will allow Makefiles
with undefined variables. If not, sets -V flag in AM_MAKEFLAGS.
Ensured that all custom make targets use AM_MAKEFLAGS.
Also defined all variables that caused errors in top-level Makefile.am.
This means that pmake can be used to build hdf5 *from the top level
only*. To run make from a subdirectory, still need to use -V flag
(or use make or gmake).
Platforms tested:
modi4, heping, copper, sleipnir
Diffstat (limited to 'Makefile.in')
-rw-r--r-- | Makefile.in | 61 |
1 files changed, 38 insertions, 23 deletions
diff --git a/Makefile.in b/Makefile.in index 9efee11..b8c55b9 100644 --- a/Makefile.in +++ b/Makefile.in @@ -32,12 +32,6 @@ # each subdirectory manually. # # Top-level HDF5 Makefile(.in) - -#------------------------------------------------------------ -*- makefile -*- -# The following section of this makefile comes from the -# `./config/commence' file which was generated with config.status -# from `./config/commence.in'. -#----------------------------------------------------------------------------- SHELL = @SHELL@ srcdir = @srcdir@ @@ -97,6 +91,7 @@ AUTOMAKE = /usr/bin/automake AUTOHEADER = /usr/local/autoconf-2.59/bin/autoheader ADD_PARALLEL_FILES = @ADD_PARALLEL_FILES@ AMTAR = @AMTAR@ +AM_MAKEFLAGS = @AM_MAKEFLAGS@ AR = @AR@ AS = @AS@ AWK = @AWK@ @@ -172,6 +167,20 @@ am__include = @am__include@ am__quote = @am__quote@ install_sh = @install_sh@ +# pmake has issues if variables are undefined. Solve this problem in +# top-level Makefile by defining all variables it complains about. +# Configure should set AM_MAKEFLAGS to -V to solve this problem in +# subdirectories. +# NOTE: This means that invoking pmake in a subdirectory will not work. +CONFIG_STATUS_DEPENDENCIES = +TAGS_DEPENDENCIES = +TAGS_FILES = +HEADERS = +SOURCES = +TEXINFOS = +EXTRA_DIST = +LISP = + # Shell commands used in Makefiles RM = rm -f CP = cp @@ -197,7 +206,6 @@ H5FC_PP = $(bindir)/h5pfc F9XMODEXT = @F9XMODEXT@ F9XMODFLAG = @F9XMODFLAG@ - # Define subdirectories to build. # Add this directory to SUBDIRS so that examples get built after tools # but before examples in extra interfaces (c++ and fortran). @@ -205,10 +213,17 @@ F9XMODFLAG = @F9XMODFLAG@ # directories that are only conditionally built (so that their Makefiles # are cleaned as well). # Note that `make clean' will not affect the examples or doc directories. + +# Conditionals. These conditionals are defined during configure +# Define each variable to empty if it is not used to placate pmake @BUILD_PARALLEL_CONDITIONAL_TRUE@TESTPARALLEL_DIR = testpar +@BUILD_PARALLEL_CONDITIONAL_FALSE@TESTPARALLEL_DIR = @BUILD_CXX_CONDITIONAL_TRUE@CXX_DIR = c++ +@BUILD_CXX_CONDITIONAL_FALSE@CXX_DIR = @BUILD_FORTRAN_CONDITIONAL_TRUE@FORTRAN_DIR = fortran +@BUILD_FORTRAN_CONDITIONAL_FALSE@FORTRAN_DIR = @BUILD_HDF5_HL_CONDITIONAL_TRUE@HDF5_HL_DIR = hl +@BUILD_HDF5_HL_CONDITIONAL_FALSE@HDF5_HL_DIR = SUBDIRS = src test $(TESTPARALLEL_DIR) tools . $(CXX_DIR) $(FORTRAN_DIR) \ $(HDF5_HL_DIR) @@ -558,17 +573,17 @@ test _test: check lib progs: @@SETX@; for d in $(SUBDIRS); do \ if test $$d != .; then \ - (cd $$d && $(MAKE) $@) || exit 1; \ + (cd $$d && $(MAKE) $(AM_MAKEFLAGS) $@) || exit 1; \ fi; \ done # Make all and make tests also create tests in perform directory all-local: - cd perform && $(MAKE) all + cd perform && $(MAKE) $(AM_MAKEFLAGS) all tests: @@SETX@; for d in $(SUBDIRS) perform; do \ if test $$d != .; then \ - (cd $$d && $(MAKE) $@) || exit 1; \ + (cd $$d && $(MAKE) $(AM_MAKEFLAGS) $@) || exit 1; \ fi; \ done @@ -577,47 +592,47 @@ tests: clean-local: @@SETX@; for d in docs examples perform; do \ if test -f $$d/Makefile; then \ - (cd $$d && $(MAKE) clean) || exit 1; \ + (cd $$d && $(MAKE) $(AM_MAKEFLAGS) clean) || exit 1; \ fi; \ done mostlyclean-local: @@SETX@; for d in docs examples perform; do \ if test -f $$d/Makefile; then \ - (cd $$d && $(MAKE) mostlyclean) || exit 1; \ + (cd $$d && $(MAKE) $(AM_MAKEFLAGS) mostlyclean) || exit 1; \ fi; \ done # 'make install-all' also installs docs and examples install-all: - $(MAKE) install - $(MAKE) install-doc + $(MAKE) $(AM_MAKEFLAGS) install + $(MAKE) $(AM_MAKEFLAGS) install-doc uninstall-all: - $(MAKE) uninstall - $(MAKE) uninstall-doc + $(MAKE) $(AM_MAKEFLAGS) uninstall + $(MAKE) $(AM_MAKEFLAGS) uninstall-doc # Install examples in this directory and recursively install-examples uninstall-examples: @@SETX@; for d in examples $(HDF5_INTERFACES); do \ - (cd $$d && $(MAKE) $@) || exit 1; \ + (cd $$d && $(MAKE) $(AM_MAKEFLAGS) $@) || exit 1; \ done # Install documentation and examples install-doc: - $(MAKE) install-examples - (cd doc && $(MAKE) $@) || exit 1; + $(MAKE) $(AM_MAKEFLAGS) install-examples + (cd doc && $(MAKE) $(AM_MAKEFLAGS) $@) || exit 1; uninstall-doc: - $(MAKE) uninstall-examples - (cd doc && $(MAKE) $@) || exit 1; + $(MAKE) $(AM_MAKEFLAGS) uninstall-examples + (cd doc && $(MAKE) $(AM_MAKEFLAGS) $@) || exit 1; # `make check-install' or `make installcheck' checks that examples can # be successfully built check-install: - $(MAKE) installcheck + $(MAKE) $(AM_MAKEFLAGS) installcheck installcheck-local: - (cd examples && $(MAKE) $@) || exit 1; + (cd examples && $(MAKE) $(AM_MAKEFLAGS) $@) || exit 1; # Don't include conclude.am in root Makefile; tests target needs to # recurse into perform directory as well as reguar subdirs. |