diff options
Diffstat (limited to 'configure.ac')
-rw-r--r-- | configure.ac | 59 |
1 files changed, 21 insertions, 38 deletions
diff --git a/configure.ac b/configure.ac index c37a1c4..6cea4ad 100644 --- a/configure.ac +++ b/configure.ac @@ -50,16 +50,17 @@ AM_INIT_AUTOMAKE([foreign]) AM_SILENT_RULES([yes]) ## AM_MAINTAINER_MODE turns off "rebuild rules" that contain dependencies -## for Makefiles, configure, src/H5config.h, etc. If AM_MAINTAINER_MODE -## is *not* included here, these files will be rebuilt if out of date. -## This is a problem because if users try to build on a machine with +## for Makefiles, configure, src/H5config.h, etc. If AM_MAINTAINER_MODE +## is enabled, these files will be rebuilt if out of date. This is a +## problem because if users try to build on a machine with ## the wrong versions of autoconf and automake, these files will be ## rebuilt with the wrong versions and bad things can happen. ## Also, CVS doesn't preserve dependencies between timestamps, so ## Makefiles will often think rebuilding needs to occur when it doesn't. -## Developers should './configure --enable-maintainer-mode' to turn on -## rebuild rules. -AM_MAINTAINER_MODE +## +## By default, it is enabled. Users can configure with +## --disable-maintainer-mode to prevent running the autotools. +AM_MAINTAINER_MODE([enable]) ## ---------------------------------------------------------------------- ## Set prefix default (install directory) to a directory in the build area. @@ -827,8 +828,6 @@ LT_PREREQ([2.2]) ## win32-dll - This will build clean dlls on win32 platforms. LT_INIT([dlopen,win32-dll]) - - ## ---------------------------------------------------------------------- ## Check if we should install only statically linked executables. ## This check needs to occur after libtool is initialized because @@ -895,32 +894,6 @@ case "X-$RPATH" in esac ## ---------------------------------------------------------------------- -## pmake will throw an error if variables are undefined in a Makefile. -## These errors can be changed to warnings using the -V flag. -## -AC_SUBST([AM_MAKEFLAGS]) AM_MAKEFLAGS="" - -## Don't run test if MAKE is defined but is the empty string -if test -n "${MAKE-make}"; then - - AC_MSG_CHECKING([whether make will build with undefined variables]) - - cat >maketest <<EOF -foo: \$(UNDEFINED) \$(UNDEFINED2) - @echo \$(UNDEFINED3) works -EOF - - if (${MAKE-make} -f maketest foo) >/dev/null 2>&1; then - AC_MSG_RESULT([yes]) - else - AC_MSG_RESULT([no, setting -V flag]) - AM_MAKEFLAGS="\-V" - fi - - rm maketest -fi - -## ---------------------------------------------------------------------- ## Production flags? Save the value in $CONFIG_MODE so we have it for ## the record. ## @@ -1543,6 +1516,17 @@ AC_ARG_ENABLE([threadsafe], ## with the thread-safety option because the lock is not hoisted ## into the higher-level API calls. +## --enable-threadsafe is incompatible with --enable-hl unless +## --enable-unsupported has been specified on the configure line. +## +## Note that the high-level library is enabled by default so most +## users will have to add --disable-hl to the configure options. +if test "X${ALLOW_UNSUPPORTED}" != "Xyes"; then + if test "X${HDF5_HL}" = "Xyes" -a "X${enable_threadsafe}" = "Xyes"; then + AC_MSG_ERROR([The thread-safe library is incompatible with the high-level library. --enable-unsupported will allow building the high-level library, though this configuration is not supported by The HDF Group. Alternatively,--disable-hl can be used to prevent building the high-level library (recommended).]) + fi +fi + ## The --enable-threadsafe flag is not compatible with --enable-cxx. ## If the user tried to specify both flags, throw an error, unless ## they also provided the --enable-unsupported flag. @@ -2290,10 +2274,9 @@ fi ## ---------------------------------------------------------------------- ## Check if Direct I/O driver is enabled by --enable-direct-vfd ## - -## Check these regardless. If the checks are moved inside the main -## direct VFD block, the output is nested. - +## ---------------------------------------------------------------------- +## Check if Direct I/O driver is enabled by --enable-direct-vfd +## AC_CACHE_VAL([hdf5_cv_direct_io], AC_CHECK_DECL([O_DIRECT], [hdf5_cv_direct_io=yes], [hdf5_cv_direct_io=no], [[#include <fcntl.h>]])) AC_CACHE_VAL([hdf5_cv_posix_memalign], |