[Darshan-commits] [Git][darshan/darshan][master] 5 commits: runtime hdf5: Fix for HDF5 1.10 hid_t uint64_t

Shane Snyder xgitlab at cels.anl.gov
Mon Jan 16 15:32:13 CST 2017


Shane Snyder pushed to branch master at darshan / darshan


Commits:
df8fe71a by kalle at 2017-01-16T14:11:42-05:00
runtime hdf5: Fix for HDF5 1.10 hid_t uint64_t

Signed-off-by: Phil Carns <carns at mcs.anl.gov>

- - - - -
28152533 by Phil Carns at 2017-01-16T12:59:23-08:00
regen configure script

- - - - -
3f12e721 by Phil Carns at 2017-01-16T13:15:51-08:00
tweak autoconf help language

- - - - -
0fc92ecb by Phil Carns at 2017-01-16T16:22:55-05:00
update Changelog

- - - - -
78ac2f29 by Shane Snyder at 2017-01-16T15:32:06-06:00
Merge branch 'issue-217-hdf5-1.10' into 'master'

Issue 217 hdf5 1.10

Adds manual configure script option to update HDF5 types to match HDF5 1.10+ as reported/contributed by Karl-Ulrich Bamberg

See merge request !4
- - - - -


5 changed files:

- ChangeLog
- darshan-runtime/configure
- darshan-runtime/configure.in
- darshan-runtime/darshan-runtime-config.h.in
- darshan-runtime/lib/darshan-hdf5.c


Changes:

=====================================
ChangeLog
=====================================
--- a/ChangeLog
+++ b/ChangeLog
@@ -2,6 +2,12 @@
 Darshan Release Change Log
 --------------------------
 
+Darshan-3.1.3-pre1
+=============
+* add --enable-HDF5_1.10 configure option to explicitly enable HDF5 1.10+
+  support, needed on some platforms for API compatibility 
+  - contributed by Karl-Ulrich Bamberg
+
 Darshan-3.1.2
 =============
 * bug fix in resolving underlying call to fopen64 when using the LD_PRELOAD


=====================================
darshan-runtime/configure
=====================================
--- a/darshan-runtime/configure
+++ b/darshan-runtime/configure
@@ -663,7 +663,6 @@ infodir
 docdir
 oldincludedir
 includedir
-runstatedir
 localstatedir
 sharedstatedir
 sysconfdir
@@ -690,6 +689,7 @@ with_zlib
 enable_ld_preload
 enable_cuserid
 enable_group_readable_logs
+enable_HDF5_1_10
 enable_bgq_mod
 enable_lustre_mod
 enable_mmap_logs
@@ -747,7 +747,6 @@ datadir='${datarootdir}'
 sysconfdir='${prefix}/etc'
 sharedstatedir='${prefix}/com'
 localstatedir='${prefix}/var'
-runstatedir='${localstatedir}/run'
 includedir='${prefix}/include'
 oldincludedir='/usr/include'
 docdir='${datarootdir}/doc/${PACKAGE_TARNAME}'
@@ -1000,15 +999,6 @@ do
   | -silent | --silent | --silen | --sile | --sil)
     silent=yes ;;
 
-  -runstatedir | --runstatedir | --runstatedi | --runstated \
-  | --runstate | --runstat | --runsta | --runst | --runs \
-  | --run | --ru | --r)
-    ac_prev=runstatedir ;;
-  -runstatedir=* | --runstatedir=* | --runstatedi=* | --runstated=* \
-  | --runstate=* | --runstat=* | --runsta=* | --runst=* | --runs=* \
-  | --run=* | --ru=* | --r=*)
-    runstatedir=$ac_optarg ;;
-
   -sbindir | --sbindir | --sbindi | --sbind | --sbin | --sbi | --sb)
     ac_prev=sbindir ;;
   -sbindir=* | --sbindir=* | --sbindi=* | --sbind=* | --sbin=* \
@@ -1146,7 +1136,7 @@ fi
 for ac_var in	exec_prefix prefix bindir sbindir libexecdir datarootdir \
 		datadir sysconfdir sharedstatedir localstatedir includedir \
 		oldincludedir docdir infodir htmldir dvidir pdfdir psdir \
-		libdir localedir mandir runstatedir
+		libdir localedir mandir
 do
   eval ac_val=\$$ac_var
   # Remove trailing slashes.
@@ -1299,7 +1289,6 @@ Fine tuning of the installation directories:
   --sysconfdir=DIR        read-only single-machine data [PREFIX/etc]
   --sharedstatedir=DIR    modifiable architecture-independent data [PREFIX/com]
   --localstatedir=DIR     modifiable single-machine data [PREFIX/var]
-  --runstatedir=DIR       modifiable per-process data [LOCALSTATEDIR/run]
   --libdir=DIR            object code libraries [EPREFIX/lib]
   --includedir=DIR        C header files [PREFIX/include]
   --oldincludedir=DIR     C header files for non-gcc [/usr/include]
@@ -1333,6 +1322,7 @@ Optional Features:
   --disable-cuserid       Disables attempted use of cuserid() at run time
   --enable-group-readable-logs
                           Set log files to be group readable
+  --enable-HDF5_1.10      Enable explicit support for HDF5 1.10.x API
   --disable-bgq-mod       Disables compilation and use of BG/Q module (for BG/Q systems)
   --disable-lustre-mod    Disables compilation and use of the Lustre module
   --enable-mmap-logs      Enables ability to mmap I/O data to log file
@@ -3581,6 +3571,17 @@ fi
 fi
 
 
+# Check whether --enable-HDF5_1.10 was given.
+if test "${enable_HDF5_1_10+set}" = set; then :
+  enableval=$enable_HDF5_1_10; if test "x$enableval" = "xyes" ; then
+
+$as_echo "#define __DARSHAN_ENABLE_HDF5110 1" >>confdefs.h
+
+fi
+
+fi
+
+
 # Check whether --enable-bgq-mod was given.
 if test "${enable_bgq_mod+set}" = set; then :
   enableval=$enable_bgq_mod;


=====================================
darshan-runtime/configure.in
=====================================
--- a/darshan-runtime/configure.in
+++ b/darshan-runtime/configure.in
@@ -46,6 +46,13 @@ AC_ARG_ENABLE(group-readable-logs,
 fi]
 ,)
 
+AC_ARG_ENABLE(HDF5_1.10,
+[  --enable-HDF5_1.10      Enable explicit support for HDF5 1.10.x API],
+[if test "x$enableval" = "xyes" ; then
+    AC_DEFINE(__DARSHAN_ENABLE_HDF5110, 1, Explicitly enable HDF5_1.10.x support, will break 1.8.x compatibility on 32bit platforms)
+fi]
+,)
+
 AC_ARG_ENABLE(
     [bgq-mod],
     [  --disable-bgq-mod       Disables compilation and use of BG/Q module (for BG/Q systems)],


=====================================
darshan-runtime/darshan-runtime-config.h.in
=====================================
--- a/darshan-runtime/darshan-runtime-config.h.in
+++ b/darshan-runtime/darshan-runtime-config.h.in
@@ -87,6 +87,9 @@
 /* Define if cuserid() should be disabled */
 #undef __DARSHAN_DISABLE_CUSERID
 
+/* Explicitly enable HDF5_1.10.x support */
+#undef __DARSHAN_ENABLE_HDF5110
+
 /* Define if Darshan should mmap data structures to log file */
 #undef __DARSHAN_ENABLE_MMAP_LOGS
 


=====================================
darshan-runtime/lib/darshan-hdf5.c
=====================================
--- a/darshan-runtime/lib/darshan-hdf5.c
+++ b/darshan-runtime/lib/darshan-hdf5.c
@@ -25,8 +25,13 @@
 #include "darshan-dynamic.h"
 
 /* hope this doesn't change any time soon */
-typedef int hid_t;
-typedef int herr_t;
+typedef int herr_t;     //hf5-1.10.0p1: H5public.h:126
+
+#ifdef __DARSHAN_ENABLE_HDF5110
+  typedef int64_t hid_t;  //hf5-1.10.0p1: H5Ipublic.h:56
+#else
+  typedef int hid_t;
+#endif
 
 DARSHAN_FORWARD_DECL(H5Fcreate, hid_t, (const char *filename, unsigned flags, hid_t create_plist, hid_t access_plist));
 DARSHAN_FORWARD_DECL(H5Fopen, hid_t, (const char *filename, unsigned flags, hid_t access_plist));
@@ -112,7 +117,7 @@ static int my_rank = -1;
 hid_t DARSHAN_DECL(H5Fcreate)(const char *filename, unsigned flags,
     hid_t create_plist, hid_t access_plist)
 {
-    int ret;
+    hid_t ret;
     char* tmp;
     double tm1;
 
@@ -143,7 +148,7 @@ hid_t DARSHAN_DECL(H5Fcreate)(const char *filename, unsigned flags,
 hid_t DARSHAN_DECL(H5Fopen)(const char *filename, unsigned flags,
     hid_t access_plist)
 {
-    int ret;
+    hid_t ret;
     char* tmp;
     double tm1;
 
@@ -175,7 +180,7 @@ hid_t DARSHAN_DECL(H5Fopen)(const char *filename, unsigned flags,
 herr_t DARSHAN_DECL(H5Fclose)(hid_t file_id)
 {
     struct hdf5_file_record_ref *rec_ref;
-    int ret;
+    herr_t ret;
 
     MAP_OR_FAIL(H5Fclose);
 



View it on GitLab: https://xgitlab.cels.anl.gov/darshan/darshan/compare/7ec53306b75486a0330275760a252d1024ed4ed9...78ac2f2941f971ae63a7fc61ae98ddf3a058da70
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.mcs.anl.gov/pipermail/darshan-commits/attachments/20170116/7cf47f25/attachment-0001.html>


More information about the Darshan-commits mailing list