mirror of
https://github.com/HDFGroup/hdf5.git
synced 2025-01-30 15:32:37 +08:00
[svn-r6070] Purpose:
New feature. Description: Add in '--enable-filters=filter1,filter2' flag to configure script. This can also be used as '--enable-filters=all' or just '--enable-filters' to enable all the internal I/O filters in the library. This flag can also be set to '--disable-filters' to disable all the internal I/O filters. Individual filters can not be disabled due to the limitations of autoconf. Additionally, added "H5_HAVE_FILTER_<foo>" macros to H5pubconf.h header file, so the presence of each filter can be detected. This is in preparation for Kent's shuffling filter to be imported shortly. Platforms tested: Tested h5committest {arabica (fortran), eirene (fortran, C++) modi4 (parallel, fortran)} Tested FreeBSD 4.7 (sleipnir) also
This commit is contained in:
parent
58d7916983
commit
b7cd698fcd
59
configure
vendored
59
configure
vendored
@ -1019,6 +1019,9 @@ Optional Features:
|
||||
is disabled.
|
||||
--enable-parallel=TYPE Search for MPI-IO and MPI support files
|
||||
--enable-fphdf5 Enable the Flexible Parallel HDF5 interface
|
||||
--enable-filters=all Turn on all internal I/O filters. One may also
|
||||
specify a comma-separated list of filters or the
|
||||
word no. The default is all internal I/O filters.
|
||||
|
||||
Optional Packages:
|
||||
--with-PACKAGE[=ARG] use PACKAGE [ARG=yes]
|
||||
@ -4103,7 +4106,7 @@ test "x$enable_libtool_lock" != xno && enable_libtool_lock=yes
|
||||
case $host in
|
||||
*-*-irix6*)
|
||||
# Find out which ABI we are using.
|
||||
echo '#line 4106 "configure"' > conftest.$ac_ext
|
||||
echo '#line 4109 "configure"' > conftest.$ac_ext
|
||||
if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
|
||||
(eval $ac_compile) 2>&5
|
||||
ac_status=$?
|
||||
@ -4644,7 +4647,7 @@ chmod -w .
|
||||
save_CFLAGS="$CFLAGS"
|
||||
CFLAGS="$CFLAGS -o out/conftest2.$ac_objext"
|
||||
compiler_c_o=no
|
||||
if { (eval echo configure:4647: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>out/conftest.err; } && test -s out/conftest2.$ac_objext; then
|
||||
if { (eval echo configure:4650: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>out/conftest.err; } && test -s out/conftest2.$ac_objext; then
|
||||
# The compiler can only warn and ignore the option if not recognized
|
||||
# So say no if there are warnings
|
||||
if test -s out/conftest.err; then
|
||||
@ -6455,7 +6458,7 @@ else
|
||||
lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
|
||||
lt_status=$lt_dlunknown
|
||||
cat > conftest.$ac_ext <<EOF
|
||||
#line 6458 "configure"
|
||||
#line 6461 "configure"
|
||||
#include "confdefs.h"
|
||||
|
||||
#if HAVE_DLFCN_H
|
||||
@ -6553,7 +6556,7 @@ else
|
||||
lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
|
||||
lt_status=$lt_dlunknown
|
||||
cat > conftest.$ac_ext <<EOF
|
||||
#line 6556 "configure"
|
||||
#line 6559 "configure"
|
||||
#include "confdefs.h"
|
||||
|
||||
#if HAVE_DLFCN_H
|
||||
@ -23231,6 +23234,11 @@ cat >>confdefs.h <<\_ACEOF
|
||||
#define HAVE_COMPRESSION 1
|
||||
_ACEOF
|
||||
|
||||
|
||||
cat >>confdefs.h <<\_ACEOF
|
||||
#define HAVE_FILTER_GZIP 1
|
||||
_ACEOF
|
||||
|
||||
fi
|
||||
|
||||
PABLO=""
|
||||
@ -30156,6 +30164,45 @@ _ACEOF
|
||||
fi
|
||||
fi
|
||||
|
||||
echo "$as_me:$LINENO: checking for I/O filters" >&5
|
||||
echo $ECHO_N "checking for I/O filters... $ECHO_C" >&6
|
||||
# Check whether --enable-filters or --disable-filters was given.
|
||||
if test "${enable_filters+set}" = set; then
|
||||
enableval="$enable_filters"
|
||||
FILTERS=$enableval
|
||||
fi;
|
||||
|
||||
|
||||
all_filters="shuffle"
|
||||
case "X-$FILTERS" in
|
||||
X-|X-all)
|
||||
FILTERS=$all_filters
|
||||
echo "$as_me:$LINENO: result: all ($FILTERS)" >&5
|
||||
echo "${ECHO_T}all ($FILTERS)" >&6
|
||||
;;
|
||||
X-no|X-none)
|
||||
echo "$as_me:$LINENO: result: none" >&5
|
||||
echo "${ECHO_T}none" >&6
|
||||
FILTERS="none"
|
||||
;;
|
||||
*)
|
||||
echo "$as_me:$LINENO: result: $FILTERS" >&5
|
||||
echo "${ECHO_T}$FILTERS" >&6
|
||||
;;
|
||||
esac
|
||||
|
||||
if test -n "$FILTERS"; then
|
||||
for filter in `echo $FILTERS | tr 'a-z,' 'A-Z '`; do
|
||||
if test $filter = "SHUFFLE"; then
|
||||
|
||||
cat >>confdefs.h <<\_ACEOF
|
||||
#define HAVE_FILTER_SHUFFLE 1
|
||||
_ACEOF
|
||||
|
||||
fi
|
||||
done
|
||||
fi
|
||||
|
||||
|
||||
H5_VERSION="`cut -d' ' -f3 $srcdir/README.txt | head -1`"
|
||||
|
||||
@ -30950,6 +30997,7 @@ s,@PARALLEL@,$PARALLEL,;t t
|
||||
s,@RUNSERIAL@,$RUNSERIAL,;t t
|
||||
s,@RUNPARALLEL@,$RUNPARALLEL,;t t
|
||||
s,@TESTPARALLEL@,$TESTPARALLEL,;t t
|
||||
s,@FILTERS@,$FILTERS,;t t
|
||||
s,@H5_VERSION@,$H5_VERSION,;t t
|
||||
s,@CONFIG_DATE@,$CONFIG_DATE,;t t
|
||||
s,@CONFIG_USER@,$CONFIG_USER,;t t
|
||||
@ -31743,6 +31791,9 @@ PRINT "Features:"
|
||||
PRINT_N " dmalloc"
|
||||
IF_YES_NO "$HAVE_DMALLOC"
|
||||
|
||||
PRINT_N " internal I/O filters"
|
||||
PRINT "$FILTERS"
|
||||
|
||||
PRINT_N " GASS"
|
||||
IF_YES_NO "$GASS"
|
||||
|
||||
|
55
configure.in
55
configure.in
@ -778,6 +778,8 @@ esac
|
||||
if test "x$HAVE_ZLIB" = "xyes" -a "x$HAVE_ZLIB_H" = "xyes" -a "x$HAVE_COMPRESS2" = "xyes"; then
|
||||
AC_DEFINE(HAVE_COMPRESSION, 1,
|
||||
[Define if we have zlib compression support])
|
||||
AC_DEFINE(HAVE_FILTER_GZIP, 1,
|
||||
[Define if support for gzip filter is enabled])
|
||||
fi
|
||||
|
||||
dnl ----------------------------------------------------------------------
|
||||
@ -1723,6 +1725,9 @@ int main(int argc, char **argv)
|
||||
AC_MSG_RESULT(yes)
|
||||
CPPFLAGS="$CPPFLAGS -DMPI_GET_COUNT_WORKS",AC_MSG_RESULT(no))
|
||||
|
||||
dnl ----------------------------------------------------------------------
|
||||
dnl Check if they would like the "Flexible parallel" functions compiled in
|
||||
dnl
|
||||
AC_MSG_CHECKING([if Flexible Parallel HDF5 interface enabled])
|
||||
AC_ARG_ENABLE([fphdf5],
|
||||
[AC_HELP_STRING([--enable-fphdf5],
|
||||
@ -1738,6 +1743,53 @@ int main(int argc, char **argv)
|
||||
fi
|
||||
fi
|
||||
|
||||
dnl ----------------------------------------------------------------------
|
||||
dnl Turn on internal I/O filters by setting macros in header files
|
||||
dnl Internal I/O filters are contained entirely within the library and do
|
||||
dnl not depend on external headers or libraries. The shuffle filter is
|
||||
dnl an example of an internal filter, while the gzip filter is an example of
|
||||
dnl an external filter. Each external filter is controlled with an
|
||||
dnl "--with-foo=" configure flag.
|
||||
dnl
|
||||
AC_MSG_CHECKING(for I/O filters)
|
||||
AC_ARG_ENABLE([filters],
|
||||
[AC_HELP_STRING([--enable-filters=all],
|
||||
[Turn on all internal I/O filters. One may
|
||||
also specify a comma-separated list of filters
|
||||
or the word no. The default is all internal
|
||||
I/O filters.])],
|
||||
[FILTERS=$enableval])
|
||||
|
||||
AC_SUBST([FILTERS])
|
||||
dnl Eventually: all_filters="shuffle,foo,bar,baz"
|
||||
all_filters="shuffle"
|
||||
case "X-$FILTERS" in
|
||||
X-|X-all)
|
||||
FILTERS=$all_filters
|
||||
AC_MSG_RESULT(all ($FILTERS))
|
||||
;;
|
||||
X-no|X-none)
|
||||
AC_MSG_RESULT(none)
|
||||
FILTERS="none"
|
||||
;;
|
||||
*)
|
||||
AC_MSG_RESULT($FILTERS)
|
||||
;;
|
||||
esac
|
||||
|
||||
if test -n "$FILTERS"; then
|
||||
for filter in `echo $FILTERS | tr 'a-z,' 'A-Z '`; do
|
||||
dnl ----------------------------------------------------------------------
|
||||
dnl Have to use separate 'if' construct for each filter, so that autoheader
|
||||
dnl can detect the AC_DEFINE for each one...
|
||||
dnl
|
||||
if test $filter = "SHUFFLE"; then
|
||||
AC_DEFINE(HAVE_FILTER_SHUFFLE, 1,
|
||||
[Define if support for shuffle filter is enabled])
|
||||
fi
|
||||
done
|
||||
fi
|
||||
|
||||
dnl ----------------------------------------------------------------------
|
||||
dnl Set some variables for general configuration information to be saved
|
||||
dnl and installed with the libraries.
|
||||
@ -2094,6 +2146,9 @@ PRINT "Features:"
|
||||
PRINT_N " dmalloc"
|
||||
IF_YES_NO "$HAVE_DMALLOC"
|
||||
|
||||
PRINT_N " internal I/O filters"
|
||||
PRINT "$FILTERS"
|
||||
|
||||
PRINT_N " GASS"
|
||||
IF_YES_NO "$GASS"
|
||||
|
||||
|
@ -24,6 +24,12 @@
|
||||
/* Define to 1 if you have the <features.h> header file. */
|
||||
#undef HAVE_FEATURES_H
|
||||
|
||||
/* Define if support for gzip filter is enabled */
|
||||
#undef HAVE_FILTER_GZIP
|
||||
|
||||
/* Define if support for shuffle filter is enabled */
|
||||
#undef HAVE_FILTER_SHUFFLE
|
||||
|
||||
/* Define to 1 if you have the `fork' function. */
|
||||
#undef HAVE_FORK
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user