mirror of
https://github.com/HDFGroup/hdf5.git
synced 2025-02-05 15:42:32 +08:00
Merge pull request #469 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:hdf5_1_10 to hdf5_1_10
* commit '14bc39bcb59ce36d1d2fd156afeaf3aa7bb5ad84': Updated bin/trace to emit errors and reordered autogen.sh processing so that script failures leave the library in a non-compilable state, making it harder to ignore errors.
This commit is contained in:
commit
8f049c8736
63
autogen.sh
63
autogen.sh
@ -203,6 +203,39 @@ Darwin*)
|
|||||||
;;
|
;;
|
||||||
esac
|
esac
|
||||||
|
|
||||||
|
# Run scripts that process source.
|
||||||
|
#
|
||||||
|
# These should be run before the autotools so that failures here block
|
||||||
|
# compilation.
|
||||||
|
|
||||||
|
# Run trace script
|
||||||
|
# The trace script adds H5TRACE macros to library source files. It should
|
||||||
|
# have no effect on files that don't have HDF5 API macros in them.
|
||||||
|
echo "Running trace script:"
|
||||||
|
bin/trace src/H5*.c || exit 1
|
||||||
|
echo
|
||||||
|
|
||||||
|
# Run make_err
|
||||||
|
# make_err automatically generates the H5E headers that create error message
|
||||||
|
# types for HDF5.
|
||||||
|
echo "Running error generation script:"
|
||||||
|
bin/make_err src/H5err.txt || exit 1
|
||||||
|
echo
|
||||||
|
|
||||||
|
# Run make_vers
|
||||||
|
# make_vers automatically generates the public headers that define the API version
|
||||||
|
# macros for HDF5.
|
||||||
|
echo "Running API version generation script:"
|
||||||
|
bin/make_vers src/H5vers.txt || exit 1
|
||||||
|
echo
|
||||||
|
|
||||||
|
# Run make_overflow
|
||||||
|
# make_overflow automatically generates macros for detecting overflows for type
|
||||||
|
# conversion.
|
||||||
|
echo "Running overflow macro generation script:"
|
||||||
|
bin/make_overflow src/H5overflow.txt || exit 1
|
||||||
|
echo
|
||||||
|
|
||||||
# Run autotools in order
|
# Run autotools in order
|
||||||
#
|
#
|
||||||
# When available, we use the --force option to ensure all files are
|
# When available, we use the --force option to ensure all files are
|
||||||
@ -265,35 +298,7 @@ fi
|
|||||||
${autoconf_cmd} || exit 1
|
${autoconf_cmd} || exit 1
|
||||||
echo
|
echo
|
||||||
|
|
||||||
# Run scripts that process source.
|
echo "*** SUCCESS ***"
|
||||||
|
|
||||||
# Run trace script
|
|
||||||
# The trace script adds H5TRACE macros to library source files. It should
|
|
||||||
# have no effect on files that don't have HDF5 API macros in them.
|
|
||||||
echo
|
|
||||||
echo "Running trace script:"
|
|
||||||
bin/trace src/H5*.c || exit 1
|
|
||||||
|
|
||||||
# Run make_err
|
|
||||||
# make_err automatically generates the H5E headers that create error message
|
|
||||||
# types for HDF5.
|
|
||||||
echo
|
|
||||||
echo "Running error generation script:"
|
|
||||||
bin/make_err src/H5err.txt || exit 1
|
|
||||||
|
|
||||||
# Run make_vers
|
|
||||||
# make_vers automatically generates the public headers that define the API version
|
|
||||||
# macros for HDF5.
|
|
||||||
echo
|
|
||||||
echo "Running API version generation script:"
|
|
||||||
bin/make_vers src/H5vers.txt || exit 1
|
|
||||||
|
|
||||||
# Run make_overflow
|
|
||||||
# make_overflow automatically generates macros for detecting overflows for type
|
|
||||||
# conversion.
|
|
||||||
echo
|
|
||||||
echo "Running overflow macro generation script:"
|
|
||||||
bin/make_overflow src/H5overflow.txt || exit 1
|
|
||||||
|
|
||||||
echo
|
echo
|
||||||
exit 0
|
exit 0
|
||||||
|
15
bin/trace
15
bin/trace
@ -161,6 +161,8 @@ $Source = "";
|
|||||||
##############################################################################
|
##############################################################################
|
||||||
# Print an error message.
|
# Print an error message.
|
||||||
#
|
#
|
||||||
|
my $found_errors = 0;
|
||||||
|
|
||||||
sub errmesg ($$@) {
|
sub errmesg ($$@) {
|
||||||
my ($file, $func, @mesg) = @_;
|
my ($file, $func, @mesg) = @_;
|
||||||
my ($mesg) = join "", @mesg;
|
my ($mesg) = join "", @mesg;
|
||||||
@ -170,6 +172,8 @@ sub errmesg ($$@) {
|
|||||||
$lineno = tr/\n/\n/;
|
$lineno = tr/\n/\n/;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
$found_errors = 1;
|
||||||
|
|
||||||
print "$file: in function \`$func\':\n";
|
print "$file: in function \`$func\':\n";
|
||||||
print "$file:$lineno: $mesg\n";
|
print "$file:$lineno: $mesg\n";
|
||||||
}
|
}
|
||||||
@ -339,4 +343,13 @@ for $file (@ARGV) {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
printf "Finished processing HDF5 API calls\n"
|
if ($found_errors eq 1) {
|
||||||
|
printf "\n";
|
||||||
|
printf "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!\n";
|
||||||
|
printf "*** ERRORS FOUND *** ERRORS FOUND *** ERRORS FOUND ****\n";
|
||||||
|
printf "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!\n";
|
||||||
|
exit 1;
|
||||||
|
} else {
|
||||||
|
printf "Finished processing HDF5 API calls\n";
|
||||||
|
}
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user