From 9df2544c91990c02804b95a2f3f6559a0cfb6a57 Mon Sep 17 00:00:00 2001 From: degomme Date: Tue, 18 Mar 2014 15:57:57 +0100 Subject: [PATCH] linking stuff, needed to compile on FreeBSD 10 --- buildtools/Cmake/CompleteInFiles.cmake | 7 ++++++- buildtools/Cmake/MakeLib.cmake | 6 +++++- 2 files changed, 11 insertions(+), 2 deletions(-) diff --git a/buildtools/Cmake/CompleteInFiles.cmake b/buildtools/Cmake/CompleteInFiles.cmake index 04a2a3ef9a..1085ffd7ad 100644 --- a/buildtools/Cmake/CompleteInFiles.cmake +++ b/buildtools/Cmake/CompleteInFiles.cmake @@ -107,6 +107,8 @@ else() endif() # Checks for header libraries functions. +CHECK_LIBRARY_EXISTS(dl dlopen "" HAVE_DLOPEN_IN_LIBDL) +CHECK_LIBRARY_EXISTS(execinfo backtrace "" HAVE_BACKTRACE_IN_LIBEXECINFO) CHECK_LIBRARY_EXISTS(pthread pthread_create "" pthread) CHECK_LIBRARY_EXISTS(pthread sem_init "" HAVE_SEM_INIT_LIB) CHECK_LIBRARY_EXISTS(pthread sem_open "" HAVE_SEM_OPEN_LIB) @@ -249,7 +251,10 @@ CHECK_TYPE_SIZE(void* SIZEOF_VOIDP) ### Check for GNU dynamic linker CHECK_INCLUDE_FILE("dlfcn.h" HAVE_DLFCN_H) if (HAVE_DLFCN_H) - execute_process(COMMAND ${CMAKE_C_COMPILER} ${CMAKE_HOME_DIRECTORY}/buildtools/Cmake/test_prog/prog_gnu_dynlinker.c -ldl -o test_gnu_ld + if(HAVE_DLOPEN_IN_LIBDL) + set(DL_LIBRARY "-ldl") + endif(HAVE_DLOPEN_IN_LIBDL) + execute_process(COMMAND ${CMAKE_C_COMPILER} ${CMAKE_HOME_DIRECTORY}/buildtools/Cmake/test_prog/prog_gnu_dynlinker.c ${DL_LIBRARY} -o test_gnu_ld WORKING_DIRECTORY ${CMAKE_BINARY_DIR} OUTPUT_VARIABLE HAVE_GNU_LD_compil ) diff --git a/buildtools/Cmake/MakeLib.cmake b/buildtools/Cmake/MakeLib.cmake index 1e2113774d..a3c0fe168f 100644 --- a/buildtools/Cmake/MakeLib.cmake +++ b/buildtools/Cmake/MakeLib.cmake @@ -87,7 +87,7 @@ if(HAVE_MC) 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) @@ -104,6 +104,10 @@ if(HAVE_POSIX_GETTIME) 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) -- 2.20.1