dnl -*- shell-script -*- dnl dnl Copyright (c) 2009 Oak Ridge National Labs. All rights reserved. dnl dnl $COPYRIGHT$ dnl dnl Additional copyrights may follow dnl dnl $HEADER$ dnl # OPAL_CHECK_COMPILER_VERSION_ID() # ---------------------------------------------------- # Try to figure out the compiler's name and version to detect cases, # where users compile Open MPI with one version and compile the application # with a different compiler. # AC_DEFUN([OPAL_CHECK_COMPILER_VERSION_ID], [ OPAL_CHECK_COMPILER(FAMILYID) OPAL_CHECK_COMPILER_STRINGIFY(FAMILYNAME) OPAL_CHECK_COMPILER(VERSION) OPAL_CHECK_COMPILER_STRINGIFY(VERSION_STR) ])dnl AC_DEFUN([OPAL_CHECK_COMPILER], [ lower=m4_tolower($1) AC_CACHE_CHECK([for compiler $lower], opal_cv_compiler_[$1], [ if test "$cross_compiling" != "yes" ; then CPPFLAGS_orig=$CPPFLAGS CPPFLAGS="-I${top_ompi_srcdir}/ompi/include $CPPFLAGS" AC_TRY_RUN([ #include #include #include "mpi_portable_platform.h.in" /* Yes, it is supposed to be a .in-file */ int main (int argc, char * argv[]) { FILE * f; f=fopen("conftestval", "w"); if (!f) exit(1); fprintf (f, "%d", PLATFORM_COMPILER_$1); return 0; } ], [ eval opal_cv_compiler_$1=`cat conftestval`; ], [ eval opal_cv_compiler_$1=0 ]) CPPFLAGS=$CPPFLAGS_orig else opal_cv_compiler_$1=0 fi ]) AC_DEFINE_UNQUOTED([OPAL_BUILD_PLATFORM_COMPILER_$1], $opal_cv_compiler_[$1], [The compiler $lower which OMPI was built with]) ])dnl AC_DEFUN([OPAL_CHECK_COMPILER_STRINGIFY], [ lower=m4_tolower($1) AC_CACHE_CHECK([for compiler $lower], opal_cv_compiler_[$1], [ if test "$cross_compiling" != "yes" ; then CPPFLAGS_orig=$CPPFLAGS CPPFLAGS="-I${top_ompi_srcdir}/ompi/include $CPPFLAGS" AC_TRY_RUN([ #include #include #include "mpi_portable_platform.h.in" /* Yes, it is supposed to be a .in-file */ int main (int argc, char * argv[]) { FILE * f; f=fopen("conftestval", "w"); if (!f) exit(1); fprintf (f, "%s", _STRINGIFY(PLATFORM_COMPILER_$1)); return 0; } ], [ eval opal_cv_compiler_$1=`cat conftestval`; ], [ eval opal_cv_compiler_$1=UNKNOWN ]) CPPFLAGS=$CPPFLAGS_orig else opal_cv_compiler_$1=UNKNOWN fi ]) AC_DEFINE_UNQUOTED([OPAL_BUILD_PLATFORM_COMPILER_$1], $opal_cv_compiler_[$1], [The compiler $lower which OMPI was built with]) ])dnl