summaryrefslogtreecommitdiffstats
path: root/tools/lib
diff options
context:
space:
mode:
authorDana Robinson <derobins@hdfgroup.org>2015-06-11 19:18:52 (GMT)
committerDana Robinson <derobins@hdfgroup.org>2015-06-11 19:18:52 (GMT)
commitaa4e3e3985e1e2715819c326d332e1569ac73c7b (patch)
tree77a9a9305e54d10f2937f142e4568395ee0f9208 /tools/lib
parentbf8942c7e9213355515344f21c8df7fd2987f09d (diff)
parentb9f2a18b5ae9adf23cac4c0336291373a25f0721 (diff)
downloadhdf5-aa4e3e3985e1e2715819c326d332e1569ac73c7b.zip
hdf5-aa4e3e3985e1e2715819c326d332e1569ac73c7b.tar.gz
hdf5-aa4e3e3985e1e2715819c326d332e1569ac73c7b.tar.bz2
[svn-r27191] Merged r26781 to r27185 from trunk
Tested on: 64-bit Ubuntu Linux VM w/ gcc 4.8.2 (C++ and Fortran 2003 also tested)
Diffstat (limited to 'tools/lib')
-rw-r--r--tools/lib/h5tools.c14
-rw-r--r--tools/lib/h5tools_ref.c4
-rw-r--r--tools/lib/h5tools_utils.h6
-rw-r--r--tools/lib/h5trav.c8
4 files changed, 16 insertions, 16 deletions
diff --git a/tools/lib/h5tools.c b/tools/lib/h5tools.c
index 10d150f..c820aff 100644
--- a/tools/lib/h5tools.c
+++ b/tools/lib/h5tools.c
@@ -54,9 +54,6 @@ unsigned long long packed_data_mask; /* mask in which packed bits to display */
/* module-scoped variables */
static int h5tools_init_g; /* if h5tools lib has been initialized */
-#ifdef H5_HAVE_PARALLEL
-static int h5tools_mpi_init_g; /* if MPI_Init() has been called */
-#endif /* H5_HAVE_PARALLEL */
/* Names of VFDs */
static const char *drivernames[]={
@@ -516,11 +513,14 @@ h5tools_get_fapl(hid_t fapl, const char *driver, unsigned *drivernum)
}
#ifdef H5_HAVE_PARALLEL
else if(!HDstrcmp(driver, drivernames[MPIO_IDX])) {
+ int mpi_initialized, mpi_finalized;
+
/* MPI-I/O Driver */
- /* check if MPI has been initialized. */
- if(!h5tools_mpi_init_g)
- MPI_Initialized(&h5tools_mpi_init_g);
- if(h5tools_mpi_init_g) {
+ /* check if MPI is available. */
+ MPI_Initialized(&mpi_initialized);
+ MPI_Finalized(&mpi_finalized);
+
+ if(mpi_initialized && !mpi_finalized) {
if(H5Pset_fapl_mpio(new_fapl, MPI_COMM_WORLD, MPI_INFO_NULL) < 0)
goto error;
if(drivernum)
diff --git a/tools/lib/h5tools_ref.c b/tools/lib/h5tools_ref.c
index 52d84f9..0bb7d77 100644
--- a/tools/lib/h5tools_ref.c
+++ b/tools/lib/h5tools_ref.c
@@ -61,7 +61,7 @@ static int ref_path_table_put(const char *, haddr_t objno);
*-------------------------------------------------------------------------
*/
static herr_t
-free_ref_path_info(void *item, void UNUSED *key, void UNUSED *operator_data/*in,out*/)
+free_ref_path_info(void *item, void H5_ATTR_UNUSED *key, void H5_ATTR_UNUSED *operator_data/*in,out*/)
{
ref_path_node_t *node = (ref_path_node_t *)item;
@@ -85,7 +85,7 @@ free_ref_path_info(void *item, void UNUSED *key, void UNUSED *operator_data/*in,
*/
static herr_t
init_ref_path_cb(const char *obj_name, const H5O_info_t *oinfo,
- const char *already_seen, void UNUSED *_udata)
+ const char *already_seen, void H5_ATTR_UNUSED *_udata)
{
/* Check if the object is already in the path table */
if(NULL == already_seen) {
diff --git a/tools/lib/h5tools_utils.h b/tools/lib/h5tools_utils.h
index fd588b9..3285278 100644
--- a/tools/lib/h5tools_utils.h
+++ b/tools/lib/h5tools_utils.h
@@ -124,9 +124,9 @@ H5TOOLS_DLLVAR int h5tools_nCols; /*max number of columns for
/* Definitions of useful routines */
H5TOOLS_DLL void indentation(int);
H5TOOLS_DLL void print_version(const char *progname);
-H5TOOLS_DLL void parallel_print(const char* format, ... )__attribute__((format (printf, 1, 2)));
-H5TOOLS_DLL void error_msg(const char *fmt, ...)__attribute__((format (printf, 1, 2)));
-H5TOOLS_DLL void warn_msg(const char *fmt, ...)__attribute__((format (printf, 1, 2)));
+H5TOOLS_DLL void parallel_print(const char* format, ... );
+H5TOOLS_DLL void error_msg(const char *fmt, ...);
+H5TOOLS_DLL void warn_msg(const char *fmt, ...);
H5TOOLS_DLL void help_ref_msg(FILE *output);
H5TOOLS_DLL void free_table(table_t *table);
#ifdef H5DUMP_DEBUG
diff --git a/tools/lib/h5trav.c b/tools/lib/h5trav.c
index 90e6d3d..86e60c3 100644
--- a/tools/lib/h5trav.c
+++ b/tools/lib/h5trav.c
@@ -404,7 +404,7 @@ trav_fileinfo_add(trav_info_t *info, hid_t loc_id)
*/
int
trav_info_visit_obj(const char *path, const H5O_info_t *oinfo,
- const char UNUSED *already_visited, void *udata)
+ const char H5_ATTR_UNUSED *already_visited, void *udata)
{
size_t idx;
trav_info_t *info_p;
@@ -628,7 +628,7 @@ trav_table_visit_obj(const char *path, const H5O_info_t *oinfo,
*-------------------------------------------------------------------------
*/
static int
-trav_table_visit_lnk(const char *path, const H5L_info_t UNUSED *linfo, void *udata)
+trav_table_visit_lnk(const char *path, const H5L_info_t H5_ATTR_UNUSED *linfo, void *udata)
{
/* Add the link to the 'table' struct */
trav_table_add((trav_table_t *)udata, path, NULL);
@@ -901,9 +901,9 @@ void trav_table_free( trav_table_t *table )
static herr_t
trav_attr(hid_t
#ifndef H5TRAV_PRINT_SPACE
-UNUSED
+H5_ATTR_UNUSED
#endif /* H5TRAV_PRINT_SPACE */
-obj, const char *attr_name, const H5A_info_t UNUSED *ainfo, void *_op_data)
+obj, const char *attr_name, const H5A_info_t H5_ATTR_UNUSED *ainfo, void *_op_data)
{
trav_path_op_data_t *op_data = (trav_path_op_data_t *)_op_data;
const char *buf = op_data->path;