hdf5/Makefile.in
Bill Wendling 5e834c4cbc [svn-r4466]
Purpose:
    Feature Add
Description:
    Added "install-example" and "install-all" to the Makefile system.
    The behaviour of the "make install*" options:

        make install          - Installs binaries, libraries, include
                                files, and example programs.
        make install-examples - Installs only the example programs.
                                The directories are:

                            ${prefix}/doc/hdf5/examples/{c,c++,fortran}

        make install-all      - Install the binaries, libraries, include
                                files, example programs, and
                                documentation. The whole kit-n'-caboodle.
        make uninstall-examples - Get rid of those example files (but not
                                  the ${prefix}/doc/hdf5/examples/...
                                  directories)

    There's a new bin/ program which helps create directories which are
    deeply nested called "mkdirs". It's a simple shell script.
Platforms tested:
    Linux
2001-09-21 18:50:15 -05:00

144 lines
5.0 KiB
Makefile

## Top-level HDF5 Makefile(.in)
##
## Copyright (C) 1997, 1998, 1999, 2000, 2001
## National Center for Supercomputing Applications
## All rights reserved.
##
##
## This makefile mostly just reinvokes make in the various subdirectories
## but does so in the correct order. You can alternatively invoke make from
## each subdirectory manually.
##
top_srcdir=@top_srcdir@
top_builddir=.
srcdir=@srcdir@
@COMMENCE@
# Subdirectories in build-order (not including `examples')
SUBDIRS=src test tools @TESTPARALLEL@ @subdirs@
##############################################################################
## T A R G E T S
##
## all: Build libraries, header files, tests, and programs in the
## various subdirectories but does not run tests or install the
## library, header files, or programs. The components can be
## built individually with the targets lib, progs, and tests.
## check: Test the uninstalled library to make sure it works. You may
## also say `test' or `_test' (`test' doesn't work from the top
## level directory for some versions of make because `test' is
## also a directory).
## install: Installs libraries, header files, programs, and documentation
## in the various directories under the prefix directory (lib,
## include, bin, man, info). Use the `--prefix=PATH' option
## to `configure' (or `config.status') or say `--help' for
## other alternatives. The default prefix is `/usr/local'.
## uninstall: Delete all the installed files that the `install' target
## created (but not the noninstalled files such as `make all'
## created).
## clean: Removes temporary files except those that record the
## configuration and those that are part of the distribution.
## mostlyclean: Like `clean' except it doesn't delete a few files like
## libraries, programs, and/or generated header files because
## regenerating them is rarely necessary and takes a lot of time.
## distclean: Deletes all files that are created by configuring or building
## HDF5. If you have unpacked the source and built HDF5 without
## creating any other files, then `make distclean' will leave
## only the files that were in the distrubution.
## maintainer-clean:
## Like `distclean' except it deletes more files. It deletes
## all generated files. This target is not intended for normal
## users; it deletes files that may require special tools to
## rebuild.
## TAGS: Updates the tags table for this program.
## dep depend: Builds dependencies in all subdirectories. These targets
## might not be available on certain combinations of make
## programs and C compilers. At the other extreme, the GNU
## make used in combination with gcc will maintain dependency
## information automatically.
lib progs check test _test uninstall:
@@SETX@; for d in $(SUBDIRS); do \
(cd $$d && $(MAKE) $@) || exit 1; \
done
tests TAGS dep depend:
@@SETX@; for d in $(SUBDIRS) perform examples; do \
(cd $$d && $(MAKE) $@) || exit 1; \
done
install-all:
@@SETX@; for d in dummy @subdirs@; do \
if test $$d != "dummy"; then \
(cd $$d && $(MAKE) $@) || exit 1; \
fi; \
done
@$(MAKE) install
@$(MAKE) install-doc
@$(LT) --mode=finish $(libdir)
install:
@@SETX@; for d in $(SUBDIRS); do \
(cd $$d && $(MAKE) $@) || exit 1; \
done
@$(MAKE) install-examples
@$(LT) --mode=finish $(libdir)
install-examples:
@@SETX@; for d in dummy @subdirs@; do \
if test $$d != "dummy"; then \
(cd $$d && $(MAKE) $@) || exit 1; \
fi; \
done
(cd examples && $(MAKE) $@) || exit 1;
uninstall-examples:
@@SETX@; for d in dummy @subdirs@; do \
if test $$d != "dummy"; then \
(cd $$d && $(MAKE) $@) || exit 1; \
fi; \
done
(cd examples && $(MAKE) $@) || exit 1;
install-doc:
@$(MAKE) install-examples
(cd doc && $(MAKE) $@) || exit 1;
uninstall-doc:
(cd doc && $(MAKE) $@) || exit 1;
## Number format detection
H5detect:
(cd src && $(MAKE) $@)
H5Tinit.c:
(cd src && $(MAKE) $@)
.PHONY: all lib progs test _test install uninstall dep depend clean \
mostlyclean distclean maintainer-clean
clean mostlyclean:
@@SETX@; for d in $(SUBDIRS) doc perform examples pablo; do \
(cd $$d && $(MAKE) $@); \
done
-$(RM) conftest conftest.c
distclean:
@@SETX@; for d in $(SUBDIRS) doc perform examples pablo; do \
(cd $$d && $(MAKE) $@); \
done
-$(RM) config/commence config/conclude
-$(RM) config/stamp1 config/stamp2 config/depend?
-$(RM) config.cache config.log config.status
-$(RM) src/H5config.h src/H5pubconf.h
-$(RM) libtool Makefile
maintainer-clean:
@echo "This target is intended for maintainers to use;"
@echo "it deletes files that may require special tools to rebuild."
@@SETX@; for d in $(SUBDIRS) doc perform examples pablo; do \
(cd $$d && $(MAKE) $@); \
done
-$(RM) config.cache config.log config.status src/H5config.h
-$(RM) configure src/H5config.h.in