diff options
author | Larry Knox <lrknox@hdfgroup.org> | 2010-05-17 22:23:23 (GMT) |
---|---|---|
committer | Larry Knox <lrknox@hdfgroup.org> | 2010-05-17 22:23:23 (GMT) |
commit | a41fb65b7ca24b5a2a6d4a73af135caac39bb7ea (patch) | |
tree | fa4a0d4f5cad3429794ef2c73fe355467eb89092 /config | |
parent | b85900177f4b1dc58a6a295e58047b1e51b02e89 (diff) | |
download | hdf5-a41fb65b7ca24b5a2a6d4a73af135caac39bb7ea.zip hdf5-a41fb65b7ca24b5a2a6d4a73af135caac39bb7ea.tar.gz hdf5-a41fb65b7ca24b5a2a6d4a73af135caac39bb7ea.tar.bz2 |
[svn-r18836] Added code to config files, libhdf5.settings.in and configure.in to add compiler version information for fortran and C++ in the settings file and the configure output for our common compilers on linux, solaris, and mac(gnu only).
Tested: amani, jam, linew (h5committest) and with configure on these machines and tejeda.
Diffstat (limited to 'config')
-rw-r--r-- | config/apple | 30 | ||||
-rw-r--r-- | config/linux-gnulibc1 | 90 | ||||
-rw-r--r-- | config/solaris2.x | 40 |
3 files changed, 159 insertions, 1 deletions
diff --git a/config/apple b/config/apple index 8c4cc8e..10674fb 100644 --- a/config/apple +++ b/config/apple @@ -55,3 +55,33 @@ if test "X-" != "X-$enable_fortran"; then enable_shared="no" fi +# compiler version strings +case $CC in + *gcc*) + cc_version_info=`$CC $CFLAGS $H5_CFLAGS --version 2>&1 | grep -v 'PathScale' |\ + grep 'GCC' | sed 's/.*\((GCC) [-a-z0-9\. ]*.*\)/\1/'` + ;; + + *) + echo "No match to get cc_version_info for $CC" + ;; +esac + +case $FC in + *gfortran*) + fc_version_info=`$FC $FCFLAGS $H5_FCFLAGS --version 2>&1 |\ + grep 'GCC' | sed 's/\(.*(GCC) [-a-z0-9\. ]*\).*/\1/'` + ;; +esac + +# get c++ version info +case $CXX in + *g++*) + cxx_version_info=`$CXX $CXXFLAGS $H5_CXXFLAGS --version 2>&1 |\ + grep 'GCC' | sed 's/.*\((GCC) [-a-z0-9\. ]*.*\)/\1/'` + ;; + *) + echo "No match to get cxx_version_info for $CXX" + ;; +esac + diff --git a/config/linux-gnulibc1 b/config/linux-gnulibc1 index 667f04e..26a0c3a 100644 --- a/config/linux-gnulibc1 +++ b/config/linux-gnulibc1 @@ -35,6 +35,7 @@ fi # Figure out Intel C compiler flags . $srcdir/config/intel-flags +echo "CC_BASENAME is $CC_BASENAME." # Use default Fortran 90 compiler according to what C compiler is used. if test "X-" = "X-$FC"; then case $CC_BASENAME in @@ -61,7 +62,7 @@ else ifc*|ifort*|pgf90*) ;; - *) + *f95*) # Figure out which compiler we are using: pgf90 or Absoft f95 RM='rm -f' tmpfile=/tmp/cmpver.$$ @@ -75,6 +76,10 @@ else fi fi $RM $tmpfile + fc_version_info=`$FC -V | grep Absoft` + ;; + + *) ;; esac fi @@ -131,3 +136,86 @@ fi hdf5_cv_mpi_special_collective_io_works=${hdf5_cv_mpi_special_collective_io_works='no'} hdf5_cv_mpi_complex_derived_datatype_works=${hdf5_cv_mpi_complex_derived_datatype_works='no'} +# compiler version strings +case $CC in + # whatever matches *pgcc* will also match *gcc*, so this one must come first + *pgcc*) + cc_version_info=`$CC $CFLAGS $H5_CFLAGS -V 2>&1 | grep 'pgcc'` + ;; + + *gcc*) + cc_version_info=`$CC $CFLAGS $H5_CFLAGS --version 2>&1 | grep -v 'PathScale' |\ + grep 'GCC' | sed 's/\(.*(GCC) [-a-z0-9\. ]*\).*/\1/'` + ;; + + *icc*) + cc_version_info=`$CC $CCFLAGS $H5_CCFLAGS -V 2>&1 | grep 'Version' |\ + sed 's/\(Intel.* Compiler\).*\( Version [a-z0-9\.]*\).*\( Build [0-9]*\)/\1\2\3/'` + ;; + + *) + echo "No match to get cc_version_info for $CC" + ;; +esac + +# get fortran version info +case $FC in + *gfortran*) + fc_version_info=`$FC $FCFLAGS $H5_FCFLAGS --version 2>&1 |\ + grep 'GCC' | sed 's/\(.*(GCC) [-a-z0-9\. ]*\).*/\1/'` + ;; + + *ifc*|*ifort*) + fc_version_info=`$FC $FCFLAGS $H5_FCFLAGS -V 2>&1 | grep 'Version' |\ + sed 's/\(Intel.* Compiler\).*\( Version [a-z0-9\.]*\).*\( Build [0-9]*\)/\1\2\3/'` + ;; + + *f95*) + # Figure out which compiler we are using: pgf90 or Absoft f95 + RM='rm -f' + tmpfile=/tmp/cmpver.$$ + $FC -V >$tmpfile + if test -s "$tmpfile"; then + if( grep -s 'Absoft' $tmpfile > /dev/null) then + FC_BASENAME=f95 + fi + fi + $RM $tmpfile + fc_version_info=`$FC -V | grep Absoft` + ;; + + *g95*) + fc_version_info=`$FC $FCFLAGS $H5_FCFLAGS --version 2>&1 |\ + grep 'GCC'` + ;; + + *pgf90*) + fc_version_info=`$FC $FCFLAGS $H5_FCFLAGS -V 2>&1 | grep 'pgf90'` + ;; + + *) + echo "No match to get fc_version_info for $FC" + ;; +esac + + +# get c++ version info +case $CXX in + *g++*) + cxx_version_info=`$CXX $CXXFLAGS $H5_CXXFLAGS --version 2>&1 |\ + grep 'GCC' | sed 's/\(.*(GCC) [-a-z0-9\. ]*\).*/\1/'` + ;; + *icpc*) + cxx_version_info=`$CXX $CXXFLAGS $H5_CXXFLAGS -V 2>&1 | grep 'Version' |\ + sed 's/\(Intel.* Compiler\).*\( Version [a-z0-9\.]*\).*\( Build [0-9]*\)/\1\2\3/'` + ;; + *pgCC*) + cxx_version_info=`$CXX $CXXFLAGS $H5_CXXFLAGS -V 2>&1 | grep 'pgCC'` + ;; + + + *) + echo "No match to get cxx_version_info for $CXX" + ;; +esac + diff --git a/config/solaris2.x b/config/solaris2.x index 5ef6415..cea71bd 100644 --- a/config/solaris2.x +++ b/config/solaris2.x @@ -111,3 +111,43 @@ if test -z "$cxx_flags_set"; then PROFILE_CPPFLAGS= cxx_flags_set=yes fi + +# compiler version strings +case $CC in + *cc*) + cc_version_info=`$CC $CFLAGS $H5_CFLAGS -V 2>&1 | grep 'Sun' |\ + sed 's/.*\(Sun.*\)/\1 /'` + ;; + + *) + echo "No match to get cc_version_info for $CC" + ;; +esac +echo "C compiler '$CC' is $cc_version_info" + +case $FC in + # The PGI and Intel compilers are automatically detected below + *f90*) + fc_version_info=`$FC $FCFLAGS $H5_FCFLAGS -V 2>&1 | grep 'Sun' |\ + sed 's/.*\(Sun.*\)/\1 /'` + ;; + + *) + echo "No match to get fc_version_info for $FC" + ;; +esac +echo "Fortran compiler '$FC' is $fc_version_info" + +# get c++ version info +case $CXX in + *CC*) + cxx_version_info=`$CXX $CXXFLAGS $H5_CXXFLAGS -V 2>&1 | grep 'Sun' |\ + sed 's/.*\(Sun.*\)/\1 /'` + ;; + + *) + echo "No match to get cxx_version_info for $CXX" + ;; +esac + + |