## Top-level HDF5 Makefile(.in) ## # Copyright by The HDF Group. # Copyright by the Board of Trustees of the University of Illinois. # All rights reserved. # # This file is part of HDF5. The full HDF5 copyright notice, including # terms governing use, modification, and redistribution, is contained in # the files COPYING and Copyright.html. COPYING can be found at the root # of the source code distribution tree; Copyright.html can be found at the # root level of an installed copy of the electronic HDF5 document set and # is linked from the top-level documents page. It can also be found at # http://hdfgroup.org/HDF5/doc/Copyright.html. If you do not have # access to either file, you may request a copy from help@hdfgroup.org. ## ## 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 ############################################################################## ## 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 check-s check-p check-clean test _test uninstall: @@SETX@; for d in $(SUBDIRS); do \ (cd $$d && $(MAKE) $@) || exit 1; \ done tests TAGS dep depend: @@SETX@; for d in $(SUBDIRS); do \ (cd $$d && $(MAKE) $@) || exit 1; \ done install-all: @$(MAKE) install install: @@SETX@; for d in $(SUBDIRS); do \ (cd $$d && $(MAKE) $@) || exit 1; \ done @$(MAKE) install-examples install-examples: (cd examples && $(MAKE) $@) || exit 1; uninstall-examples: (cd examples && $(MAKE) $@) || exit 1; check-install: (cd examples && $(MAKE) check) || exit 1 .PHONY: all lib progs test _test install uninstall dep depend clean \ mostlyclean distclean maintainer-clean clean mostlyclean: @@SETX@; for d in $(SUBDIRS) examples; do \ (cd $$d && $(MAKE) $@); \ done distclean: @@SETX@; for d in $(SUBDIRS) examples; do \ (cd $$d && $(MAKE) $@); \ done -$(RM) 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); do \ (cd $$d && $(MAKE) $@); \ done