diff options
-rw-r--r-- | config/linux-gnulibc1 | 17 |
1 files changed, 17 insertions, 0 deletions
diff --git a/config/linux-gnulibc1 b/config/linux-gnulibc1 index 49054a1..454a829 100644 --- a/config/linux-gnulibc1 +++ b/config/linux-gnulibc1 @@ -112,3 +112,20 @@ if test -z "$CXX"; then CXX=g++ CXX_BASENAME=g++ fi + +# We know that for mpich 1.2.5 and previous version, complicated derived datatype is +# supported, we need to set the macro to hdf5_mpi_complex_derived_datatype_works to no. +# Notice that this fix will only work if the compiler name is mpicc and mpi package is +# mpich 1.x.x. + +if [ -z "$hdf5_mpi_complex_derived_datatype_works" -a $CC_BASENAME = mpicc ]; then + ccversion=`$CC -v 2>&1 | sed -e 's/.*for //p'` + ccversion1=`echo $ccversion | cut -f1 -d.` + ccversion2=`echo $ccversion | cut -f2 -d.` + ccversiontemp=`echo $ccversion | cut -f3 -d.` + ccversion3=`echo $ccversiontemp | cut -c1` + ccversionval=`expr $ccversion1 \* 100 + $ccversion2 \* 10 + $ccversion3` + if [ $ccversionval -lt 126 ]; then + hdf5_mpi_complex_derived_datatype_works='no' + fi +fi |