summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAllen Byrne <byrn@hdfgroup.org>2015-01-26 18:03:18 (GMT)
committerAllen Byrne <byrn@hdfgroup.org>2015-01-26 18:03:18 (GMT)
commiteb3900554ef5f40d289cadd101aeed55b16ae233 (patch)
treebe3185a3f35b2d00cceedb13cf42083671d9d41c
parentf4e69ad57949288e845b22650db0968772269ff2 (diff)
downloadhdf5-eb3900554ef5f40d289cadd101aeed55b16ae233.zip
hdf5-eb3900554ef5f40d289cadd101aeed55b16ae233.tar.gz
hdf5-eb3900554ef5f40d289cadd101aeed55b16ae233.tar.bz2
[svn-r26036] HDFFV-8736: Patch H5PL.c and test for cygwin plugin support.
Tested: local linux and cygwin
-rw-r--r--src/H5PL.c6
-rw-r--r--test/test_plugin.sh.in12
2 files changed, 16 insertions, 2 deletions
diff --git a/src/H5PL.c b/src/H5PL.c
index 21bc0f2..738db90 100644
--- a/src/H5PL.c
+++ b/src/H5PL.c
@@ -405,8 +405,14 @@ H5PL__find(H5PL_type_t plugin_type, int type_id, char *dir, const void **info)
/* The library we are looking for should be called libxxx.so... on Unix
* or libxxx.xxx.dylib on Mac.
*/
+#ifndef __CYGWIN__
if(!HDstrncmp(dp->d_name, "lib", (size_t)3) &&
(HDstrstr(dp->d_name, ".so") || HDstrstr(dp->d_name, ".dylib"))) {
+#else
+ if(!HDstrncmp(dp->d_name, "cyg", (size_t)3) &&
+ HDstrstr(dp->d_name, ".dll") ) {
+
+#endif
h5_stat_t my_stat;
size_t pathname_len;
htri_t found_in_dir;
diff --git a/test/test_plugin.sh.in b/test/test_plugin.sh.in
index b268661..a6d8c50 100644
--- a/test/test_plugin.sh.in
+++ b/test/test_plugin.sh.in
@@ -28,8 +28,16 @@ exit_code=$EXIT_SUCCESS
TEST_NAME=plugin
TEST_BIN=`pwd`/$TEST_NAME
FROM_DIR=`pwd`/.libs
-PLUGIN_LIB1="$FROM_DIR/libdynlib1.* $FROM_DIR/libdynlib3.*"
-PLUGIN_LIB2="$FROM_DIR/libdynlib2.*"
+case $(uname) in
+ CYGWIN* )
+ PLUGIN_LIB1="$FROM_DIR/cygdynlib1* $FROM_DIR/cygdynlib3*"
+ PLUGIN_LIB2="$FROM_DIR/cygdynlib2*"
+ ;;
+ *)
+ PLUGIN_LIB1="$FROM_DIR/libdynlib1.* $FROM_DIR/libdynlib3.*"
+ PLUGIN_LIB2="$FROM_DIR/libdynlib2.*"
+ ::
+esac
PLUGIN_LIBDIR1=testdir1
PLUGIN_LIBDIR2=testdir2
CP="cp -p" # Use -p to preserve mode,ownership,timestamps