hdf5/Makefile.in
Robb Matzke b93c9e2cf9 [svn-r1151] Changes since 19990318
----------------------

./Makefile.in
./configure.in
./configure		[REGENERATED]
./src/H5config.h.in	[REGENERATED]
./config/commence.in
./config/conclude.in
./config/dec-osf4.x
./config/depend.in
./config/freebsd
./config/linux-gnu
./config/linux-gnulibc1
./config/linux-gnulibc2
./config/solaris2.x
./examples/Makefile.in
./src/Makefile.in
./test/Makefile.in
./testpar/Makefile.in
./tools/Makefile.in
./tools/testh5dump.sh
	Changes that allow hdf5 to be configured and compiled in a
	directory other than the source directory. This is especially
	useful if you want to concurrently compile with different
	compilers and/or compile flags, or if the hdf5 source is on
	read-only media like a CDROM.  The changes were surprisingly
	easy ;-) Here's what you can do now...

		  $ mkdir /tmp/build1  # or something
		  $ cd /tmp/build1
		  $ /cdrom/hdf5/configure # where ever the source is
		  $ make

	Paul, you'll have to change the testh5toh4 script similar to
	the way I changed testh5dump.sh.  I started working on it but
	then gave up because of a number of problems: (1) I had to
	comment out all the tests that let h5toh4 choose the output
	file name because it always tried to put the output file in
	the same directory as the input file, (2) if path names are
	used during the h4 dump then they interfere with the
	diff. The test works fine when run in the source directory,
	but try this instead:

	    $ gunzip <hdf5-1.1.67.tar.gz |tar xf -
	    $ chmod -R ugo-w hdf5-1.1.67
	    $ mkdir build
	    $ cd build
	    $ ../hdf5-1.1.67/configure
	    $ make check

	Dan, I didn't modify the pablo/Makefile.in because I have no
	way to test it. I think all you need to do is add a couple
	lines before the @COMMENCE@ line and add a couple search
	directories for header files. Anyway, it seems like almost an
	exact duplicate of the src/Makefile.in, so it shouldn't be a
	problem...

./Makefile.in
	Removes a few more temporary files during make clean and
	distclean.

./configure.in
	I fixed the creation of the time-stamp files so that the
	initial make doesn't have to regenerated all the makefiles
	(only GNU make users will see any change).

./src/H5R.c
	Changed a return type from `intn' to `int' for an API
	function.

./src/H5detect.c
	Added the volatile qualifier to a couple more variables.

./tools/h5tools.c
	Fixed a compiler warning about an unused local.

./tools/h5toh4.c
	Initialized `optind' to 1 because it's zero on my system. It
	should always be one on a unix system.

./tools/testh5toh4
	Redirected "broken pipe" messages to /dev/null so outut is
	formatted correctly.
1999-03-19 15:09:50 -05:00

114 lines
3.9 KiB
Makefile

# Top-level HDF5 Makefile(.in)
#
# Copyright (C) 1997 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@
VPATH=.:@srcdir@
@COMMENCE@
# Subdirectories in build-order
SUBDIRS=src test tools @TESTPARALLEL@
##############################################################################
# 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 tests check test _test uninstall TAGS dep depend:
@@SETX@; for d in $(SUBDIRS); do \
(cd $$d && $(MAKE) $@) || exit 1; \
done
install:
@@SETX@; for d in $(SUBDIRS); do \
(cd $$d && $(MAKE) $@) || exit 1; \
done
@$(LT) --mode=finish $(libdir);
# 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); do \
(cd $$d && $(MAKE) $@); \
done
-$(RM) conftest conftest.c
distclean:
@@SETX@; for d in $(SUBDIRS); do \
(cd $$d && $(MAKE) $@); \
done
-$(RM) config/commence config/conclude config/depend
-$(RM) config.cache config.log config.status src/H5config.h
-$(RM) config/stamp1 config/stamp2 libtool Makefile
-$(CP) Makefile.dist Makefile
maintainer-clean:
@echo "This command is intented 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
-$(RM) config.cache config.log config.status src/H5config.h
-$(RM) configure src/H5config.h.in