summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAlbert Cheng <acheng@hdfgroup.org>2012-02-28 12:32:22 (GMT)
committerAlbert Cheng <acheng@hdfgroup.org>2012-02-28 12:32:22 (GMT)
commit2ac614f94decfff417beece73441fb80acba64f6 (patch)
tree9217eae7c820565b6e60eea1adfd819ee6ee7c05
parentfc48c675e152200ca68b620de052b84a24cc8494 (diff)
downloadhdf5-2ac614f94decfff417beece73441fb80acba64f6.zip
hdf5-2ac614f94decfff417beece73441fb80acba64f6.tar.gz
hdf5-2ac614f94decfff417beece73441fb80acba64f6.tar.bz2
[svn-r21997] Feature: HDFFV-7793: AIX Fortran and C++ Compiler version information
Added code to display the version information of XL fortran and C++ compiler version information. (This is just a quick fix for the AIX XL compilers. The overall algorithm of compilers version information needs an overhaul.) Tested: ADA machine. (No committest because the changes applied to AIX XL compilers only.)
-rw-r--r--config/ibm-aix74
-rw-r--r--config/ibm-flags32
2 files changed, 66 insertions, 40 deletions
diff --git a/config/ibm-aix b/config/ibm-aix
index ff541bc..c8b1fc3 100644
--- a/config/ibm-aix
+++ b/config/ibm-aix
@@ -39,6 +39,42 @@ if test "X-$enable_parallel" = "X-yes" -o X-$CC_BASENAME = X-mpcc_r; then
RUNPARALLEL=${RUNPARALLEL="env MP_PROCS=\$\${NPROCS:=6} MP_TASKS_PER_NODE=\$\${NPROCS:=6} poe"}
fi
+# The default Fortran 90 compiler
+
+if test "X-" = "X-$FC"; then
+ if test "X-$enable_parallel" = "X-yes"; then
+ FC=mpxlf90_r
+ else
+ FC=xlf90
+ fi
+fi
+
+# While we try to avoid setting FCFLAGS directly for use in compilation, in
+# this case we need the -k flag present for some configure checks. As such,
+# the configure script saves the user's set FCFLAGS before running, and
+# restores them when complete. We must then set up both FCFLAGS and H5_FCFLAGS
+# to ensure the flag is present for both configure as well as for the build.
+if test "X-" = "X-$f9x_flags_set"; then
+ F9XSUFFIXFLAG="-qsuffix=f=f90"
+ FCFLAGS="$FCFLAGS -O ${F9XSUFFIXFLAG}"
+ H5_FCFLAGS="$H5_FCFLAGS -O ${F9XSUFFIXFLAG}"
+ FSEARCH_DIRS="-I./ -I../src"
+ DEBUG_FCFLAGS="-O"
+ PROD_FCFLAGS="-O"
+ PROFILE_FCFLAGS="-O"
+ f9x_flags_set=yes
+fi
+
+# The default C++ compiler
+
+# Use AIX supplied C++ compiler by default.
+CXX=${CXX=xlC}
+
+# Added -qweaksymbol to suppress linker messages warning of duplicate
+# symbols; these warnings are harmless. - BMR
+H5_CXXFLAGS="$H5_CXXFLAGS -qweaksymbol"
+AM_CXXFLAGS="$AM_CXXFLAGS"
+
#----------------------------------------------------------------------------
# Compiler flags. The CPPFLAGS values should not include package debug
@@ -112,41 +148,3 @@ ac_cv_sizeof_uint_fast64_t=${ac_cv_sizeof_uint_fast64_t=8}
# Don't cache long since it varies between 32 and 64 bits
#ac_cv_sizeof_long=${ac_cv_sizeof_long=4}
-
-# The default Fortran 90 compiler
-
-if test "X-" = "X-$FC"; then
- if test "X-$enable_parallel" = "X-yes"; then
- FC=mpxlf90_r
- else
- FC=xlf90
- fi
-fi
-
-# While we try to avoid setting FCFLAGS directly for use in compilation, in
-# this case we need the -k flag present for some configure checks. As such,
-# the configure script saves the user's set FCFLAGS before running, and
-# restores them when complete. We must then set up both FCFLAGS and H5_FCFLAGS
-# to ensure the flag is present for both configure as well as for the build.
-if test "X-" = "X-$f9x_flags_set"; then
- F9XSUFFIXFLAG="-qsuffix=f=f90"
- FCFLAGS="$FCFLAGS -O ${F9XSUFFIXFLAG}"
- H5_FCFLAGS="$H5_FCFLAGS -O ${F9XSUFFIXFLAG}"
- FSEARCH_DIRS="-I./ -I../src"
- DEBUG_FCFLAGS="-O"
- PROD_FCFLAGS="-O"
- PROFILE_FCFLAGS="-O"
- f9x_flags_set=yes
-fi
-
-# The default C++ compiler
-
-# Use AIX supplied C++ compiler by default.
-CXX=${CXX=xlC}
-
-# Added -qweaksymbol to suppress linker messages warning of duplicate
-# symbols; these warnings are harmless. - BMR
-H5_CXXFLAGS="$H5_CXXFLAGS -qweaksymbol"
-AM_CXXFLAGS="$AM_CXXFLAGS"
-
-
diff --git a/config/ibm-flags b/config/ibm-flags
index 5e092b8..a1dfa2a 100644
--- a/config/ibm-flags
+++ b/config/ibm-flags
@@ -19,8 +19,8 @@
# if the compiler is not IBM; otherwise `cc_flags_set' is set to `yes'
#
-# Get the compiler version in a way that works for pgcc
-# pgcc unless a compiler version is already known
+# Get the compiler version in a way that works for XL compiler
+# unless a compiler version is already defined.
#
# cc_vendor: The compiler product name: XL
# cc_version: Version number: 10.1
@@ -75,3 +75,31 @@ if test "X-$cc_flags_set" = "X-"; then
cc_version=
cc_version_info=
fi
+
+
+# get fortran version info
+if test X != X$FC; then
+ # Verify this is an IBM XL compiler
+ fc_version="`$FC $FCFLAGS -qversion 2>&1 | grep 'IBM XL Fortran'`"
+ if test X != "X$fc_version"; then
+ fc_vendor="XL"
+ fc_version="`$FC $FCFLAGS -qversion 2>&1 | sed -n 's/Version: \([0-9\.]*\).*/\1/p'`"
+ fc_version_info="IBM XL Fortran $fc_version"
+ echo "compiler '$FC' is IBM $fc_vendor-$fc_version"
+
+ fi
+fi
+
+
+# get c++ version info
+if test X != X$CXX; then
+ # Verify this is an IBM XL compiler
+ cxx_version="`$CXX $CXXFLAGS -qversion 2>&1 | grep 'IBM XL C/C++'`"
+ if test X != "X$cxx_version"; then
+ cxx_vendor="XL"
+ cxx_version="`$CXX $CXXFLAGS -qversion 2>&1 | sed -n 's/Version: \([0-9\.]*\).*/\1/p'`"
+ cxx_version_info="IBM XL C/C++ $cxx_version"
+ echo "compiler '$CXX' is IBM $cxx_vendor-$cxx_version"
+
+ fi
+fi