hdf5/examples/Makefile.in

160 lines
5.1 KiB
Makefile
Raw Normal View History

##
## 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://hdf.ncsa.uiuc.edu/HDF5/doc/Copyright.html. If you do not have
## access to either file, you may request a copy from hdfhelp@ncsa.uiuc.edu.
##
## HDF5 Library Examples Makefile(.in)
##
[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-20 04:09:50 +08:00
top_srcdir=@top_srcdir@
top_builddir=..
srcdir=@srcdir@
1998-07-03 03:27:17 +08:00
@COMMENCE@
## Replace building CC with the just installed h5cc
H5CC=$(bindir)/h5cc
H5CC_PP=$(bindir)/h5pcc
CPPFLAGS=-I. -I$(srcdir)
CFLAGS=
1998-07-03 03:27:17 +08:00
## These are the programs that `make all' or `make tests' will build and which
## `make check' will run. List them in the order they should be run.
TEST_PROGS_PARA=ph5example
TEST_PROGS=h5_write h5_read h5_extend_write h5_chunk_read h5_compound \
h5_group h5_select h5_attribute h5_mount h5_reference h5_drivers
1998-07-03 03:27:17 +08:00
## These are the files that `make clean' (and derivatives) will remove from
## this directory.
## *.clog are from MPE option
CLEAN=*.h5 *.raw *.meta *.clog
1998-07-03 03:27:17 +08:00
## List all source files here. The list of object files will be
## created by replacing the `.c' with a `.o'. This list is necessary
## for building automatic dependencies.
TEST_SRC_PARA=ph5example.c
TEST_SRC=h5_chunk_read.c h5_compound.c h5_extend_write.c h5_group.c \
h5_read.c h5_write.c h5_select.c h5_attribute.c h5_mount.c \
h5_reference.c h5_drivers.c $(TEST_SRC_PARA)
TEST_OBJ=$(TEST_SRC:.c=.lo)
1998-07-03 03:27:17 +08:00
EXAMPLE_PROGS=$(TEST_SRC)
## How to build the programs... they all depend on the hdf5 library
$(TEST_PROGS) $(TEST_PROGS_PARA): $(LIBHDF5)
h5_chunk_read: $(srcdir)/h5_chunk_read.c
@if test "X$(PARALLEL)" = "Xno"; then \
echo $(H5CC) $(CPPFLAGS) -o $@ $<; \
$(H5CC) $(CPPFLAGS) -o $@ $<; \
else \
echo $(H5CC_PP) $(CPPFLAGS) -o $@ $<; \
$(H5CC_PP) $(CPPFLAGS) -o $@ $<; \
fi
1998-07-03 03:27:17 +08:00
h5_compound: $(srcdir)/h5_compound.c
@if test "X$(PARALLEL)" = "Xno"; then \
echo $(H5CC) $(CPPFLAGS) -o $@ $<; \
$(H5CC) $(CPPFLAGS) -o $@ $<; \
else \
echo $(H5CC_PP) $(CPPFLAGS) -o $@ $<; \
$(H5CC_PP) $(CPPFLAGS) -o $@ $<; \
fi
1998-07-03 03:27:17 +08:00
h5_extend_write: $(srcdir)/h5_extend_write.c
@if test "X$(PARALLEL)" = "Xno"; then \
echo $(H5CC) $(CPPFLAGS) -o $@ $<; \
$(H5CC) $(CPPFLAGS) -o $@ $<; \
else \
echo $(H5CC_PP) $(CPPFLAGS) -o $@ $<; \
$(H5CC_PP) $(CPPFLAGS) -o $@ $<; \
fi
1998-07-03 03:27:17 +08:00
h5_group: $(srcdir)/h5_group.c
@if test "X$(PARALLEL)" = "Xno"; then \
echo $(H5CC) $(CPPFLAGS) -o $@ $<; \
$(H5CC) $(CPPFLAGS) -o $@ $<; \
else \
echo $(H5CC_PP) $(CPPFLAGS) -o $@ $<; \
$(H5CC_PP) $(CPPFLAGS) -o $@ $<; \
fi
1998-07-03 03:27:17 +08:00
h5_write: $(srcdir)/h5_write.c
@if test "X$(PARALLEL)" = "Xno"; then \
echo $(H5CC) $(CPPFLAGS) -o $@ $<; \
$(H5CC) $(CPPFLAGS) -o $@ $<; \
else \
echo $(H5CC_PP) $(CPPFLAGS) -o $@ $<; \
$(H5CC_PP) $(CPPFLAGS) -o $@ $<; \
fi
1998-07-03 03:27:17 +08:00
h5_read: $(srcdir)/h5_read.c
@if test "X$(PARALLEL)" = "Xno"; then \
echo $(H5CC) $(CPPFLAGS) -o $@ $<; \
$(H5CC) $(CPPFLAGS) -o $@ $<; \
else \
echo $(H5CC_PP) $(CPPFLAGS) -o $@ $<; \
$(H5CC_PP) $(CPPFLAGS) -o $@ $<; \
fi
h5_select: $(srcdir)/h5_select.c
@if test "X$(PARALLEL)" = "Xno"; then \
echo $(H5CC) $(CPPFLAGS) -o $@ $<; \
$(H5CC) $(CPPFLAGS) -o $@ $<; \
else \
echo $(H5CC_PP) $(CPPFLAGS) -o $@ $<; \
$(H5CC_PP) $(CPPFLAGS) -o $@ $<; \
fi
h5_attribute: $(srcdir)/h5_attribute.c
@if test "X$(PARALLEL)" = "Xno"; then \
echo $(H5CC) $(CPPFLAGS) -o $@ $<; \
$(H5CC) $(CPPFLAGS) -o $@ $<; \
else \
echo $(H5CC_PP) $(CPPFLAGS) -o $@ $<; \
$(H5CC_PP) $(CPPFLAGS) -o $@ $<; \
fi
1998-07-03 03:27:17 +08:00
h5_mount: $(srcdir)/h5_mount.c
@if test "X$(PARALLEL)" = "Xno"; then \
echo $(H5CC) $(CPPFLAGS) -o $@ $<; \
$(H5CC) $(CPPFLAGS) -o $@ $<; \
else \
echo $(H5CC_PP) $(CPPFLAGS) -o $@ $<; \
$(H5CC_PP) $(CPPFLAGS) -o $@ $<; \
fi
h5_reference: $(srcdir)/h5_reference.c
@if test "X$(PARALLEL)" = "Xno"; then \
echo $(H5CC) $(CPPFLAGS) -o $@ $<; \
$(H5CC) $(CPPFLAGS) -o $@ $<; \
else \
echo $(H5CC_PP) $(CPPFLAGS) -o $@ $<; \
$(H5CC_PP) $(CPPFLAGS) -o $@ $<; \
fi
h5_drivers: $(srcdir)/h5_drivers.c
@if test "X$(PARALLEL)" = "Xno"; then \
echo $(H5CC) $(CPPFLAGS) -o $@ $<; \
$(H5CC) $(CPPFLAGS) -o $@ $<; \
else \
echo $(H5CC_PP) $(CPPFLAGS) -o $@ $<; \
$(H5CC_PP) $(CPPFLAGS) -o $@ $<; \
fi
ph5example: $(srcdir)/ph5example.c
@if test "X$(PARALLEL)" = "Xno"; then \
echo $(H5CC) $(CPPFLAGS) -o $@ $<; \
$(H5CC) $(CPPFLAGS) -o $@ $<; \
else \
echo $(H5CC_PP) $(CPPFLAGS) -o $@ $<; \
$(H5CC_PP) $(CPPFLAGS) -o $@ $<; \
fi
1998-07-03 03:27:17 +08:00
@CONCLUDE@