# Compute the dependencies of SimGrid
#####################################
-set(SIMGRID_DEP "-lm -lstdc++")
+set(SIMGRID_DEP "-lm")
+
+if(${CMAKE_CXX_COMPILER_ID} STREQUAL "GNU")
+ set(SIMGRID_DEP "${SIMGRID_DEP} -lstdc++")
+elseif(${CMAKE_SYSTEM_NAME} STREQUAL "FreeBSD"
+ AND NOT ${CMAKE_SYSTEM_VERSION} VERSION_LESS 10.0
+ AND ${CMAKE_CXX_COMPILER_ID} STREQUAL "Clang")
+ # FreeBSD from 10.0 provide a internal C++ stack (unused by gcc)
+ set(SIMGRID_DEP "${SIMGRID_DEP} -lc++")
+endif(${CMAKE_CXX_COMPILER_ID} STREQUAL "GNU")
if(pthread)
if(${CONTEXT_THREADS})
endif()
if(MMALLOC_WANT_OVERRIDE_LEGACY AND HAVE_GNU_LD)
- SET(SIMGRID_DEP "${SIMGRID_DEP} -ldl")
+ SET(SIMGRID_DEP "${SIMGRID_DEP} ${DL_LIBRARY}")
endif()
if(HAVE_NS3)
- if(${NS3_VERSION} EQUAL 310)
+ if(${NS3_VERSION_MINOR} EQUAL 10)
SET(SIMGRID_DEP "${SIMGRID_DEP} -lns3")
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -D_NS3_3_10")
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -D_NS3_3_10")
else()
- SET(SIMGRID_DEP "${SIMGRID_DEP} -lns3-core -lns3-csma -lns3-point-to-point -lns3-internet -lns3-applications")
+ SET(SIMGRID_DEP "${SIMGRID_DEP} -lns3.${NS3_VERSION_MINOR}-core -lns3.${NS3_VERSION_MINOR}-csma -lns3.${NS3_VERSION_MINOR}-point-to-point -lns3.${NS3_VERSION_MINOR}-internet -lns3.${NS3_VERSION_MINOR}-applications")
endif()
endif()
SET(SIMGRID_DEP "${SIMGRID_DEP} -lrt")
endif()
+if(HAVE_BACKTRACE_IN_LIBEXECINFO)
+ SET(SIMGRID_DEP "${SIMGRID_DEP} -lexecinfo")
+endif(HAVE_BACKTRACE_IN_LIBEXECINFO)
+
# Compute the dependencies of SMPI
##################################
if(enable_smpi AND APPLE)