X-Git-Url: http://info.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/blobdiff_plain/c5c1970d1789e6fd9ca264d279a86abd8621bd5d..bdede27b55f4d7428f635ef8ade408247dcfae93:/buildtools/Cmake/Modules/FindF2c.cmake diff --git a/buildtools/Cmake/Modules/FindF2c.cmake b/buildtools/Cmake/Modules/FindF2c.cmake index 69e519f9a7..921132fc88 100644 --- a/buildtools/Cmake/Modules/FindF2c.cmake +++ b/buildtools/Cmake/Modules/FindF2c.cmake @@ -66,14 +66,19 @@ mark_as_advanced(HAVE_F2C_LIB) if(HAVE_F2C_H) include_directories(${HAVE_F2C_H}) else() - if(WIN32) message("-- Fortran for smpi is not installed (http://www.netlib.org/f2c/).") - else() - message(FATAL_ERROR "You should install f2c before use smpi.") - endif() +endif() + + +#Some old versions of 64 bits systems seem to have a different size between C and Fortran Datatypes +#Deactivate F2C with these versions, in order to avoid breaking test cases in legacy systems (as Fedora 13) +set(COMPILER_OK 1) +if(PROCESSOR_x86_64 AND "${CMAKE_SYSTEM}" MATCHES "Linux" AND "4.5" STRGREATER ${COMPILER_C_VERSION_MAJOR_MINOR} ) + set(COMPILER_OK 0) + message("Your C compiler is a bit old and Fortran support is quite problematic on 64 bit platforms, F2C has been deactivated") endif() set(SMPI_F2C 0) -if(HAVE_F2C_H AND F2C_EXE AND HAVE_F2C_LIB) +if(HAVE_F2C_H AND F2C_EXE AND HAVE_F2C_LIB AND COMPILER_OK) set(SMPI_F2C 1) endif()