Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
provide a backtrace implementation that uses boost.stacktrace
[simgrid.git] / tools / cmake / MakeLib.cmake
index 57292dd..eed2ff7 100644 (file)
@@ -77,7 +77,7 @@ if(HAVE_POSIX_GETTIME)
   SET(SIMGRID_DEP "${SIMGRID_DEP} -lrt")
 endif()
 
-if("${CMAKE_SYSTEM}" MATCHES "FreeBSD")
+if("${CMAKE_SYSTEM_NAME}" STREQUAL "FreeBSD")
   set(SIMGRID_DEP "${SIMGRID_DEP} -lprocstat")
 endif()
 
@@ -94,6 +94,20 @@ if(enable_smpi)
     PROPERTIES RUNTIME_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/lib/simgrid)
   install(TARGETS smpimain # install that binary without breaking the rpath on Mac
     RUNTIME DESTINATION lib/simgrid)
+
+  if(SMPI_FORTRAN)
+    if(CMAKE_Fortran_COMPILER_ID MATCHES "GNU")
+      SET(SIMGRID_DEP "${SIMGRID_DEP} -lgfortran")
+    elseif(CMAKE_Fortran_COMPILER_ID MATCHES "Intel")
+      SET(SIMGRID_DEP "${SIMGRID_DEP} -lifcore")
+    elseif(CMAKE_Fortran_COMPILER_ID MATCHES "PGI|Flang")
+      SET(SIMGRID_DEP "${SIMGRID_DEP} -lflang")
+      if("${CMAKE_SYSTEM}" MATCHES "FreeBSD")
+        set(SIMGRID_DEP "${SIMGRID_DEP} -lexecinfo")
+      endif()
+    endif()
+  endif()
+
 endif()
 
 if(enable_smpi AND APPLE)
@@ -120,7 +134,7 @@ if(CMAKE_COMPILER_IS_GNUCC AND GCCLIBATOMIC_LIBRARY)
     set(SIMGRID_DEP   "${SIMGRID_DEP}   -Wl,--as-needed -latomic -Wl,--no-as-needed")
 endif()
 
-if(enable_model-checking AND CMAKE_COMPILER_IS_GNUCC AND (NOT LINKER_VERSION VERSION_LESS "2.30"))
+if(enable_model-checking AND (NOT LINKER_VERSION VERSION_LESS "2.30"))
     set(SIMGRID_DEP   "${SIMGRID_DEP}   -Wl,-znoseparate-code")
 endif()