diff options
author | Albert Cheng <acheng@hdfgroup.org> | 2003-04-18 04:30:26 (GMT) |
---|---|---|
committer | Albert Cheng <acheng@hdfgroup.org> | 2003-04-18 04:30:26 (GMT) |
commit | 8eb1a6150fa7d07c5c04905f95c6a50b599f0a85 (patch) | |
tree | 0215e8ce882f105dd6827cf6a61203131fd70b45 /src | |
parent | 32bcb46b2319fa851c0b25f83c7082784372f44a (diff) | |
download | hdf5-8eb1a6150fa7d07c5c04905f95c6a50b599f0a85.zip hdf5-8eb1a6150fa7d07c5c04905f95c6a50b599f0a85.tar.gz hdf5-8eb1a6150fa7d07c5c04905f95c6a50b599f0a85.tar.bz2 |
[svn-r6711] Purpose:
Bug fix
Description:
Sometimes when H5detect fails (incorrect code, incorrect mpi launch
command, insufficient resources,...), it generates an incomplete or
even empty H5Tinit.c file. If the empty file is not removed but
the make is run again, make will just use the empty file to generate
the library which will have lots of missing routines. Make won't
fail until much later and the missing routines would be puzzling
to inexperienced users.
Solution:
If H5detect fails, the generated H5Tinit.c will be removed unless
$HDF5_Make_Ignore is set. This is similar to removing .o file if
the compile fails.
Platforms tested:
Copper (parallel) which has a condition causing H5detect to fail.
That verified the change works.
Eirene (parallel) in which H5detect runs well. This verified the
change works in normal conditions too.
Did not do the h5committest because this is just a makefile change
and the above two tests covered it well.
Misc. update:
Diffstat (limited to 'src')
-rw-r--r-- | src/Makefile.in | 10 |
1 files changed, 7 insertions, 3 deletions
diff --git a/src/Makefile.in b/src/Makefile.in index 08c7186..03f4cf8 100644 --- a/src/Makefile.in +++ b/src/Makefile.in @@ -71,10 +71,14 @@ PRIVATE_HDR=H5private.h H5Aprivate.h H5Apkg.h H5ACprivate.h H5Bprivate.h \ ## Number format detection ## The LD_LIBRARY_PATH setting is a klutch. ## Things should have been all set during H5detect making. +## Remove the generated .c file if errors occur unless HDF5_Make_Ignore +## is set to ignore the error. H5Tinit.c: H5detect - LD_LIBRARY_PATH="$$LD_LIBRARY_PATH`echo $(LDFLAGS) | \ - sed -e 's/-L/:/g' -e 's/ //g'`" \ - $(RUNSERIAL) ./H5detect >H5Tinit.c + LD_LIBRARY_PATH="$$LD_LIBRARY_PATH`echo $(LDFLAGS) | \ + sed -e 's/-L/:/g' -e 's/ //g'`" \ + $(RUNSERIAL) ./H5detect > H5Tinit.c || \ + (test $$HDF5_Make_Ignore && echo "*** Error ignored") || \ + ($(RM) $@ ; exit 1) ## no $(LIB) in the action below since that's being made now. H5detect: H5detect.lo |