summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRaymond Lu <songyulu@hdfgroup.org>2008-10-30 19:44:06 (GMT)
committerRaymond Lu <songyulu@hdfgroup.org>2008-10-30 19:44:06 (GMT)
commitedb9de4efc8a410b68fcc469fbeb6480eb734921 (patch)
tree1de24bcad6e7b6a5028093f93ec4406299ae6260
parentf2bdeee8982b0905bafb504c41de9482e9fca31d (diff)
downloadhdf5-edb9de4efc8a410b68fcc469fbeb6480eb734921.zip
hdf5-edb9de4efc8a410b68fcc469fbeb6480eb734921.tar.gz
hdf5-edb9de4efc8a410b68fcc469fbeb6480eb734921.tar.bz2
[svn-r16005] Modify the commit of r15936 for H5_USE_16_API. Let H5version.h check if H5_USE_16_API_DEFAULT is defined by the configure. Then define H5_USE_16_API and use it throughout.
Tested on kagiso - supposed to be simple.
-rwxr-xr-xbin/make_vers9
-rwxr-xr-xconfigure2
-rw-r--r--src/H5E.c6
-rw-r--r--src/H5version.h4
-rw-r--r--test/err_compat.c6
-rw-r--r--test/error_test.c10
6 files changed, 25 insertions, 12 deletions
diff --git a/bin/make_vers b/bin/make_vers
index 07b6de6..2cfad4c 100755
--- a/bin/make_vers
+++ b/bin/make_vers
@@ -106,6 +106,15 @@ sub print_globalapivers ($) {
print $fh " * API symbol, the individual API version macro takes priority.\n";
print $fh " */\n";
+ for $curr_idx ($min_sup_idx .. ($max_idx - 1)) {
+ # Print API version ifdef
+ print $fh "#if defined(H5_USE_1", ($curr_idx * 2), "_API_DEFAULT) && !defined(H5_USE_1", ($curr_idx * 2), "_API)\n";
+ # Print API version definition
+ print $fh "#define H5_USE_1", ($curr_idx * 2), "_API 1\n";
+ # Print API version endif
+ print $fh "#endif /* H5_USE_1", ($curr_idx * 2), "_API_DEFAULT && !H5_USE_1", ($curr_idx * 2), "_API */\n\n";
+ }
+
# Loop over supported older library APIs and define the appropriate macros
for $curr_idx ($min_sup_idx .. ($max_idx - 1)) {
# Print API version ifdef
diff --git a/configure b/configure
index 461e9c5..dcec9ed 100755
--- a/configure
+++ b/configure
@@ -1,5 +1,5 @@
#! /bin/sh
-# From configure.in Id: configure.in 15948 2008-10-24 21:30:49Z mamcgree .
+# From configure.in Id: configure.in 15958 2008-10-26 22:40:34Z hdftest .
# Guess values for system-dependent variables and create Makefiles.
# Generated by GNU Autoconf 2.61 for HDF5 1.8.1-snap8.
#
diff --git a/src/H5E.c b/src/H5E.c
index 6792c39..678ae8f 100644
--- a/src/H5E.c
+++ b/src/H5E.c
@@ -170,13 +170,13 @@ H5E_set_default_auto(H5E_t *stk)
{
FUNC_ENTER_NOAPI_NOINIT_NOFUNC(H5E_set_default_auto)
-#if defined(H5_USE_16_API) || defined(H5_USE_16_API_DEFAULT)
+#ifdef H5_USE_16_API
stk->auto_op.vers = 1;
stk->auto_op.u.func1 = (H5E_auto1_t)H5Eprint1;
-#else /* H5_USE_16_API || H5_USE_16_API_DEFAULT */
+#else /* H5_USE_16_API */
stk->auto_op.vers = 2;
stk->auto_op.u.func2 = (H5E_auto2_t)H5Eprint2;
-#endif /* H5_USE_16_API || H5_USE_16_API_DEFAULT */
+#endif /* H5_USE_16_API */
stk->auto_data = NULL;
FUNC_LEAVE_NOAPI(SUCCEED)
diff --git a/src/H5version.h b/src/H5version.h
index eab972c..fd9e780 100644
--- a/src/H5version.h
+++ b/src/H5version.h
@@ -32,6 +32,10 @@
* Note: If an application has already chosen a particular version for an
* API symbol, the individual API version macro takes priority.
*/
+#if defined(H5_USE_16_API_DEFAULT) && !defined(H5_USE_16_API)
+#define H5_USE_16_API 1
+#endif /* H5_USE_16_API_DEFAULT && !H5_USE_16_API */
+
#ifdef H5_USE_16_API
/*************/
diff --git a/test/err_compat.c b/test/err_compat.c
index a16d903..33c172f 100644
--- a/test/err_compat.c
+++ b/test/err_compat.c
@@ -99,13 +99,13 @@ test_error(hid_t file)
TEST_ERROR;
if (!old_func)
TEST_ERROR;
-#ifdef H5_USE_16_API_DEFAULT
+#ifdef H5_USE_16_API
if (old_func != (H5E_auto1_t)H5Eprint1)
TEST_ERROR;
-#else /* H5_USE_16_API_DEFAULT */
+#else /* H5_USE_16_API */
if (old_func != (H5E_auto1_t)H5Eprint2)
TEST_ERROR;
-#endif /* H5_USE_16_API_DEFAULT */
+#endif /* H5_USE_16_API */
if(H5Eset_auto1(NULL, NULL)<0)
TEST_ERROR;
diff --git a/test/error_test.c b/test/error_test.c
index f5857ba..027f31b 100644
--- a/test/error_test.c
+++ b/test/error_test.c
@@ -21,13 +21,13 @@
*/
#include "h5test.h"
-#ifdef H5_USE_16_API_DEFAULT
+#ifdef H5_USE_16_API
int main(void)
{
printf("Test skipped because backward compatbility with v1.6 is configured in\n");
return 0;
}
-#else /* H5_USE_16_API_DEFAULT */
+#else /* H5_USE_16_API */
const char *FILENAME[] = {
"errors",
@@ -129,13 +129,13 @@ test_error(hid_t file)
TEST_ERROR;
if(old_data != NULL)
TEST_ERROR;
-#ifdef H5_USE_16_API_DEFAULT
+#ifdef H5_USE_16_API
if (old_func != (H5E_auto_t)H5Eprint)
TEST_ERROR;
-#else /* H5_USE_16_API_DEFAULT */
+#else /* H5_USE_16_API */
if (old_func != (H5E_auto2_t)H5Eprint2)
TEST_ERROR;
-#endif /* H5_USE_16_API_DEFAULT */
+#endif /* H5_USE_16_API */
if(H5Eset_auto2(H5E_DEFAULT, NULL, NULL) < 0)
TEST_ERROR;