summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDana Robinson <derobins@hdfgroup.org>2015-09-07 23:44:41 (GMT)
committerDana Robinson <derobins@hdfgroup.org>2015-09-07 23:44:41 (GMT)
commit4c8902cdf0dee80c05f20a953e96c5a70c95d2f5 (patch)
tree21c964af725654ea01e6bd397996062d3bc40374
parent34be1d1aed91b56337eefe4cb76ee66b3e3dc0c4 (diff)
downloadhdf5-4c8902cdf0dee80c05f20a953e96c5a70c95d2f5.zip
hdf5-4c8902cdf0dee80c05f20a953e96c5a70c95d2f5.tar.gz
hdf5-4c8902cdf0dee80c05f20a953e96c5a70c95d2f5.tar.bz2
[svn-r27692] Changed the autotools files so that the high-level library is unsupported
when building the thread-safe library. Configure will quit with an error when --disable-hl or --enable-unsupported is not used with --enable-threadsafe. Fixes HDFFV-8719 Tested on: h5committest configure w/ various combinations of --enable-threadsafe, --disable-hl, and --enable-unsupported
-rwxr-xr-xconfigure16
-rw-r--r--configure.ac14
2 files changed, 25 insertions, 5 deletions
diff --git a/configure b/configure
index f029b0b..35f86f3 100755
--- a/configure
+++ b/configure
@@ -1581,9 +1581,8 @@ Optional Features:
--disable-sharedlib-rpath
Disable use of the '=Wl,-rpath' linker option
--enable-production Determines how to run the compiler.
- --enable-threadsafe Enable thread-safe capability. This will disable the
- high-level library. You can override this behavior
- by specifying --enable-hl and --enable-unsupported.
+ --enable-threadsafe Enable thread-safe capability. Not compatible with
+ the high-level library, Fortran, or C++ wrappers.
[default=no]
--enable-debug=all Turn on debugging in all packages. One may also
specify a comma-separated list of package names
@@ -25846,6 +25845,17 @@ fi
## 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
+ as_fn_error $? "The thread-safe library is incompatible with the high-level library. --disable-hl can be used to prevent building the high-level library (recommended). Alternatively, --enable-unsupported will allow building the high-level library, though this configuration is not supported by The HDF Group." "$LINENO" 5
+ 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.
diff --git a/configure.ac b/configure.ac
index df14cec..a4f1457 100644
--- a/configure.ac
+++ b/configure.ac
@@ -1504,8 +1504,7 @@ AC_CACHE_SAVE
AC_MSG_CHECKING([for thread safe support])
AC_ARG_ENABLE([threadsafe],
[AS_HELP_STRING([--enable-threadsafe],
- [Enable thread-safe capability. This will disable the high-level library.
- You can override this behavior by specifying --enable-hl and --enable-unsupported.
+ [Enable thread-safe capability. Not compatible with the high-level library, Fortran, or C++ wrappers.
[default=no]])],
[THREADSAFE=$enableval])
@@ -1513,6 +1512,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. --disable-hl can be used to prevent building the high-level library (recommended). Alternatively, --enable-unsupported will allow building the high-level library, though this configuration is not supported by The HDF Group.])
+ 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.