mirror of
https://github.com/HDFGroup/hdf5.git
synced 2025-04-24 17:51:25 +08:00
[svn-r7816] Purpose:
Improvement Description: If the library is built in parallel mode, then name the "h5cc" and "h5fc" programs "h5pcc" and "h5pfc" resp. This saves the user from worrying about mixing serial and parallel builds of the library and having to specify the pathnames and so-forth. Platforms tested: Linux (w/ parallel & Fortran) Modi4 (w/ parallel & Fortran) Sol (Serial & Fortran & C++) Misc. update: Updated release/docs/RELEASE
This commit is contained in:
parent
5e835237be
commit
bfbfda0cae
config
examples
fortran/examples
release_docs
tools/misc
@ -35,6 +35,7 @@ CP=cp
|
||||
INSTALL=@INSTALL@
|
||||
INSTALL_PROGRAM=@INSTALL_PROGRAM@
|
||||
INSTALL_DATA=@INSTALL_DATA@
|
||||
PARALLEL=@PARALLEL@
|
||||
RUNSERIAL=@RUNSERIAL@
|
||||
RUNPARALLEL=@RUNPARALLEL@
|
||||
RUNTEST=$(RUNSERIAL)
|
||||
|
@ -180,7 +180,17 @@ install: $(AUX_LIB) $(PUB_LIB) $(PUB_HDR) $(PUB_PROGS) $(libdir) $(includedir) $
|
||||
done
|
||||
@for f in X $(PUB_PROGS); do \
|
||||
if test $$f != X; then \
|
||||
($(LT_INSTALL_PROG) $$f $(bindir)/. || exit 1); \
|
||||
if test "X$(PARALLEL)" != "Xno"; then \
|
||||
if test $$f = "h5cc"; then \
|
||||
($(LT_INSTALL_PROG) $$f $(bindir)/h5pcc || exit 1); \
|
||||
elif test $$f = "h5fc"; then \
|
||||
($(LT_INSTALL_PROG) $$f $(bindir)/h5pfc || exit 1); \
|
||||
else \
|
||||
($(LT_INSTALL_PROG) $$f $(bindir)/. || exit 1); \
|
||||
fi; \
|
||||
else \
|
||||
($(LT_INSTALL_PROG) $$f $(bindir)/. || exit 1); \
|
||||
fi; \
|
||||
fi; \
|
||||
done
|
||||
@for d in X $(SUBDIRS); do \
|
||||
|
@ -19,7 +19,8 @@ srcdir=@srcdir@
|
||||
@COMMENCE@
|
||||
|
||||
## Replace building CC with the just installed h5cc
|
||||
CC=$(bindir)/h5cc
|
||||
H5CC=$(bindir)/h5cc
|
||||
H5CC_PP=$(bindir)/h5pcc
|
||||
CPPFLAGS=-I. -I$(srcdir)
|
||||
CFLAGS=
|
||||
|
||||
@ -27,7 +28,7 @@ CFLAGS=
|
||||
## `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
|
||||
h5_group h5_select h5_attribute h5_mount h5_reference h5_drivers
|
||||
|
||||
## These are the files that `make clean' (and derivatives) will remove from
|
||||
## this directory.
|
||||
@ -38,8 +39,8 @@ CLEAN=*.h5 *.raw *.meta
|
||||
## 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)
|
||||
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)
|
||||
|
||||
EXAMPLE_PROGS=$(TEST_SRC)
|
||||
@ -47,39 +48,111 @@ 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
|
||||
$(CC) $(CPPFLAGS) -o $@ $(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
|
||||
|
||||
h5_compound: $(srcdir)/h5_compound.c
|
||||
$(CC) $(CPPFLAGS) -o $@ $(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
|
||||
|
||||
h5_extend_write: $(srcdir)/h5_extend_write.c
|
||||
$(CC) $(CPPFLAGS) -o $@ $(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
|
||||
|
||||
h5_group: $(srcdir)/h5_group.c
|
||||
$(CC) $(CPPFLAGS) -o $@ $(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
|
||||
|
||||
h5_write: $(srcdir)/h5_write.c
|
||||
$(CC) $(CPPFLAGS) -o $@ $(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
|
||||
|
||||
h5_read: $(srcdir)/h5_read.c
|
||||
$(CC) $(CPPFLAGS) -o $@ $(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
|
||||
$(CC) $(CPPFLAGS) -o $@ $(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
|
||||
$(CC) $(CPPFLAGS) -o $@ $(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
|
||||
|
||||
h5_mount: $(srcdir)/h5_mount.c
|
||||
$(CC) $(CPPFLAGS) -o $@ $(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
|
||||
$(CC) $(CPPFLAGS) -o $@ $(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
|
||||
$(CC) $(CPPFLAGS) -o $@ $(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
|
||||
$(CC) $(CPPFLAGS) -o $@ $(srcdir)/$@.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
|
||||
|
||||
@CONCLUDE@
|
||||
|
@ -24,12 +24,13 @@ hdf5_builddir=$(top_builddir)/src
|
||||
|
||||
## Replace building FC with the just installed h5fc
|
||||
FC=$(bindir)/h5fc
|
||||
FC_PP=$(bindir)/h5pfc
|
||||
|
||||
## 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=dsetexample fileexample rwdsetexample attrexample groupexample \
|
||||
grpsexample grpdsetexample hyperslab selectele grpit refobjexample \
|
||||
refregexample mountexample compound
|
||||
TEST_PROGS=dsetexample fileexample rwdsetexample attrexample groupexample \
|
||||
grpsexample grpdsetexample hyperslab selectele grpit refobjexample \
|
||||
refregexample mountexample compound
|
||||
|
||||
## These are the files that `make clean' (and derivatives) will remove from
|
||||
## this directory.
|
||||
@ -38,10 +39,10 @@ CLEAN=*.h5
|
||||
## List all source files here. The list of object files will be
|
||||
## created by replacing the `.f90' with a `.o'. This list is necessary
|
||||
## for building automatic dependencies.
|
||||
TEST_SRC=dsetexample.f90 fileexample.f90 rwdsetexample.f90 attrexample.f90 \
|
||||
groupexample.f90 grpsexample.f90 grpdsetexample.f90 hyperslab.f90 \
|
||||
selectele.f90 grpit.f90 refobjexample.f90 refregexample.f90 \
|
||||
mountexample.f90 compound.f90
|
||||
TEST_SRC=dsetexample.f90 fileexample.f90 rwdsetexample.f90 attrexample.f90 \
|
||||
groupexample.f90 grpsexample.f90 grpdsetexample.f90 hyperslab.f90 \
|
||||
selectele.f90 grpit.f90 refobjexample.f90 refregexample.f90 \
|
||||
mountexample.f90 compound.f90
|
||||
TEST_OBJ=$(TEST_SRC:.f90=.lo)
|
||||
|
||||
EXAMPLE_PROGS=$(TEST_SRC)
|
||||
@ -49,45 +50,129 @@ EXAMPLE_PROGS=$(TEST_SRC)
|
||||
## How to build the programs... they all depend on the Fortran & C hdf5 libraries
|
||||
$(TEST_PROGS): $(LIBHDF5)
|
||||
dsetexample: $(srcdir)/dsetexample.f90
|
||||
$(FC) -o $@ $(srcdir)/dsetexample.f90
|
||||
@if test "X$(PARALLEL)" = "Xno"; then \
|
||||
echo $(FC) -o $@ $<; \
|
||||
$(FC) -o $@ $<; \
|
||||
else \
|
||||
echo $(FC_PP) -o $@ $<; \
|
||||
$(FC_PP) -o $@ $<; \
|
||||
fi
|
||||
|
||||
fileexample: $(srcdir)/fileexample.f90
|
||||
$(FC) -o $@ $(srcdir)/fileexample.f90
|
||||
@if test "X$(PARALLEL)" = "Xno"; then \
|
||||
echo $(FC) -o $@ $<; \
|
||||
$(FC) -o $@ $<; \
|
||||
else \
|
||||
echo $(FC_PP) -o $@ $<; \
|
||||
$(FC_PP) -o $@ $<; \
|
||||
fi
|
||||
|
||||
rwdsetexample: $(srcdir)/rwdsetexample.f90
|
||||
$(FC) -o $@ $(srcdir)/rwdsetexample.f90
|
||||
@if test "X$(PARALLEL)" = "Xno"; then \
|
||||
echo $(FC) -o $@ $<; \
|
||||
$(FC) -o $@ $<; \
|
||||
else \
|
||||
echo $(FC_PP) -o $@ $<; \
|
||||
$(FC_PP) -o $@ $<; \
|
||||
fi
|
||||
|
||||
attrexample: $(srcdir)/attrexample.f90
|
||||
$(FC) -o $@ $(srcdir)/attrexample.f90
|
||||
@if test "X$(PARALLEL)" = "Xno"; then \
|
||||
echo $(FC) -o $@ $<; \
|
||||
$(FC) -o $@ $<; \
|
||||
else \
|
||||
echo $(FC_PP) -o $@ $<; \
|
||||
$(FC_PP) -o $@ $<; \
|
||||
fi
|
||||
|
||||
groupexample: $(srcdir)/groupexample.f90
|
||||
$(FC) -o $@ $(srcdir)/groupexample.f90
|
||||
@if test "X$(PARALLEL)" = "Xno"; then \
|
||||
echo $(FC) -o $@ $<; \
|
||||
$(FC) -o $@ $<; \
|
||||
else \
|
||||
echo $(FC_PP) -o $@ $<; \
|
||||
$(FC_PP) -o $@ $<; \
|
||||
fi
|
||||
|
||||
grpsexample: $(srcdir)/grpsexample.f90
|
||||
$(FC) -o $@ $(srcdir)/grpsexample.f90
|
||||
@if test "X$(PARALLEL)" = "Xno"; then \
|
||||
echo $(FC) -o $@ $<; \
|
||||
$(FC) -o $@ $<; \
|
||||
else \
|
||||
echo $(FC_PP) -o $@ $<; \
|
||||
$(FC_PP) -o $@ $<; \
|
||||
fi
|
||||
|
||||
grpdsetexample: $(srcdir)/grpdsetexample.f90
|
||||
$(FC) -o $@ $(srcdir)/grpdsetexample.f90
|
||||
@if test "X$(PARALLEL)" = "Xno"; then \
|
||||
echo $(FC) -o $@ $<; \
|
||||
$(FC) -o $@ $<; \
|
||||
else \
|
||||
echo $(FC_PP) -o $@ $<; \
|
||||
$(FC_PP) -o $@ $<; \
|
||||
fi
|
||||
|
||||
hyperslab: $(srcdir)/hyperslab.f90
|
||||
$(FC) -o $@ $(srcdir)/hyperslab.f90
|
||||
@if test "X$(PARALLEL)" = "Xno"; then \
|
||||
echo $(FC) -o $@ $<; \
|
||||
$(FC) -o $@ $<; \
|
||||
else \
|
||||
echo $(FC_PP) -o $@ $<; \
|
||||
$(FC_PP) -o $@ $<; \
|
||||
fi
|
||||
|
||||
selectele: $(srcdir)/selectele.f90
|
||||
$(FC) -o $@ $(srcdir)/selectele.f90
|
||||
@if test "X$(PARALLEL)" = "Xno"; then \
|
||||
echo $(FC) -o $@ $<; \
|
||||
$(FC) -o $@ $<; \
|
||||
else \
|
||||
echo $(FC_PP) -o $@ $<; \
|
||||
$(FC_PP) -o $@ $<; \
|
||||
fi
|
||||
|
||||
grpit: $(srcdir)/grpit.f90
|
||||
$(FC) -o $@ $(srcdir)/grpit.f90
|
||||
@if test "X$(PARALLEL)" = "Xno"; then \
|
||||
echo $(FC) -o $@ $<; \
|
||||
$(FC) -o $@ $<; \
|
||||
else \
|
||||
echo $(FC_PP) -o $@ $<; \
|
||||
$(FC_PP) -o $@ $<; \
|
||||
fi
|
||||
|
||||
refobjexample: $(srcdir)/refobjexample.f90
|
||||
$(FC) -o $@ $(srcdir)/refobjexample.f90
|
||||
@if test "X$(PARALLEL)" = "Xno"; then \
|
||||
echo $(FC) -o $@ $<; \
|
||||
$(FC) -o $@ $<; \
|
||||
else \
|
||||
echo $(FC_PP) -o $@ $<; \
|
||||
$(FC_PP) -o $@ $<; \
|
||||
fi
|
||||
|
||||
refregexample: $(srcdir)/refregexample.f90
|
||||
$(FC) -o $@ $(srcdir)/refregexample.f90
|
||||
@if test "X$(PARALLEL)" = "Xno"; then \
|
||||
echo $(FC) -o $@ $<; \
|
||||
$(FC) -o $@ $<; \
|
||||
else \
|
||||
echo $(FC_PP) -o $@ $<; \
|
||||
$(FC_PP) -o $@ $<; \
|
||||
fi
|
||||
|
||||
mountexample: $(srcdir)/mountexample.f90
|
||||
$(FC) -o $@ $(srcdir)/mountexample.f90
|
||||
@if test "X$(PARALLEL)" = "Xno"; then \
|
||||
echo $(FC) -o $@ $<; \
|
||||
$(FC) -o $@ $<; \
|
||||
else \
|
||||
echo $(FC_PP) -o $@ $<; \
|
||||
$(FC_PP) -o $@ $<; \
|
||||
fi
|
||||
|
||||
compound: $(srcdir)/compound.f90
|
||||
$(FC) -o $@ $(srcdir)/compound.f90
|
||||
@if test "X$(PARALLEL)" = "Xno"; then \
|
||||
echo $(FC) -o $@ $<; \
|
||||
$(FC) -o $@ $<; \
|
||||
else \
|
||||
echo $(FC_PP) -o $@ $<; \
|
||||
$(FC_PP) -o $@ $<; \
|
||||
fi
|
||||
|
||||
@CONCLUDE@
|
||||
|
@ -65,6 +65,9 @@ New Features
|
||||
|
||||
Tools:
|
||||
------
|
||||
- Install the "h5cc" and "h5fc" tools as "h5pcc" and "h5pfc"
|
||||
respectively if library is built in parallel mode.
|
||||
WCW - 2003/11/04
|
||||
- Changed output of "OID"s from h5dump from "<number>-<number>" to
|
||||
"<number". This affects both the "regular" and XML output.
|
||||
QAK - 2003/08/08
|
||||
@ -92,7 +95,7 @@ Bug Fixes since HDF5-1.6.0 release
|
||||
were not correctly handled, causing core dumps. QAK - 2003/10/25
|
||||
- Fixed incorrect datatype of the third parameter to the Fortran90
|
||||
h5pset(get)_cache_f subroutine (INTEGER to INTEGER(SIZE_T))
|
||||
EIP - 2003/10/13
|
||||
EIP - 2003/10/13
|
||||
- Fixed problems with accessing variable-length data datatypes on
|
||||
Crays. QAK - 2003/10/10
|
||||
- Fixed potential file corruption bug when too many object header
|
||||
@ -169,11 +172,11 @@ Bug Fixes since HDF5-1.6.0 release
|
||||
|
||||
Tools
|
||||
-----
|
||||
- Fixed h5redeploy which sometimes complain too many argument for the
|
||||
test command. (The complain did not hinder the h5redploy to proceed
|
||||
correctly.) AKC - 2003/11/03
|
||||
- Fixed a segmentation fault of h5diff when percentage option is used.
|
||||
AKC - 2003/08/27
|
||||
- Fixed h5redeploy which sometimes complain too many argument for the
|
||||
test command. (The complain did not hinder the h5redploy to
|
||||
proceed correctly.) AKC - 2003/11/03
|
||||
- Fixed a segmentation fault of h5diff when percentage option is used.
|
||||
AKC - 2003/08/27
|
||||
- Switched away from tools using internal "fixtype" function(s) to use
|
||||
H5Tget_native_type() internally. QAK - 2003/08/25
|
||||
|
||||
|
@ -66,7 +66,7 @@ ERROR()
|
||||
# Main
|
||||
#
|
||||
# Initialization
|
||||
h5tools="h5cc h5fc h5c++" # possible hdf5 tools
|
||||
h5tools="h5cc h5pcc h5fc h5pfc h5c++" # possible hdf5 tools
|
||||
foundtools= # tools found and will be modified
|
||||
fmode= # force mode, default is off
|
||||
prefix=`(cd ..;pwd)`
|
||||
|
Loading…
x
Reference in New Issue
Block a user