X-Git-Url: http://info.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/blobdiff_plain/be76c6714e103a5df55bdd911c689f667e472b8a..87c589b94e563580e8e0585079cdba97914d791d:/CMakeLists.txt diff --git a/CMakeLists.txt b/CMakeLists.txt index 28657b2385..8abfa35fb0 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -121,11 +121,6 @@ endif() execute_process(COMMAND ${CMAKE_LINKER} -version OUTPUT_VARIABLE LINKER_VERSION ERROR_VARIABLE LINKER_VERSION) string(REGEX MATCH "[0-9].[0-9]*" LINKER_VERSION "${LINKER_VERSION}") -### Set the library providing dlopen -if("${CMAKE_SYSTEM_NAME}" MATCHES "kFreeBSD|Linux") - find_library(DL_LIBRARY dl) -endif() - ### Find programs and paths FIND_PROGRAM(GCOV_PATH gcov) include(FindPerl) @@ -409,81 +404,7 @@ else() endif() #-------------------------------------------------------------------------------------------------- -### Initialize of CONTEXT THREADS - -set(HAVE_THREAD_CONTEXTS 0) -if(CMAKE_USE_PTHREADS_INIT) - ### Test that we have a way to create semaphores - - set(HAVE_SEM_OPEN 0) - CHECK_LIBRARY_EXISTS(pthread sem_open "" HAVE_SEM_OPEN_LIB) - if(HAVE_SEM_OPEN_LIB) - try_run(semopen_retval semopen_compilable - ${CMAKE_BINARY_DIR} - ${CMAKE_HOME_DIRECTORY}/tools/cmake/test_prog/prog_sem_open.c - LINK_LIBRARIES pthread - COMPILE_OUTPUT_VARIABLE semopen_compilmsg - RUN_OUTPUT_VARIABLE semopen_runmsg) - - if(semopen_compilable) - if(NOT semopen_retval) # error if not 0 - message(STATUS "sem_open is compilable and executable") - set(HAVE_SEM_OPEN 1) - else() - message(STATUS "Warning: sem_open seems compilable but not executable") - message(STATUS "Compilation output: ${semopen_compilmsg}") - message(STATUS "Execution output: ${semopen_runmsg}") - message(STATUS "Exit value: ${semopen_retval}") - endif() - else() - message(STATUS "Warning: sem_open not compilable") - message(STATUS "Compilation output: ${semopen_compilmsg}") - endif() - unset(semopen_compilable) - unset(semopen_retval) - unset(semopen_runmsg) - unset(semopen_compilmsg) - endif() - - set(HAVE_SEM_INIT 0) - if(NOT APPLE) # OS X El Capitan deprecates this function - CHECK_LIBRARY_EXISTS(pthread sem_init "" HAVE_SEM_INIT_LIB) - endif() - if(HAVE_SEM_INIT_LIB) - try_run(seminit_retval seminit_compilable - ${CMAKE_BINARY_DIR} - ${CMAKE_HOME_DIRECTORY}/tools/cmake/test_prog/prog_sem_init.c - LINK_LIBRARIES pthread - COMPILE_OUTPUT_VARIABLE seminit_compilmsg - RUN_OUTPUT_VARIABLE seminit_runmsg) - - if(seminit_compilable) - if(NOT seminit_retval) # error if not 0 - message(STATUS "sem_init is compilable and executable") - set(HAVE_SEM_INIT 1) - else() - message(STATUS "Warning: sem_init seems compilable but not executable") - message(STATUS "Compilation output: ${seminit_compilmsg}") - message(STATUS "Execution output: ${seminit_runmsg}") - message(STATUS "Exit value: ${seminit_retval}") - endif() - else() - message(STATUS "Warning: sem_init not compilable") - message(STATUS "Compilation output: ${seminit_compilmsg}") - endif() - unset(seminit_compilable) - unset(seminit_retval) - unset(seminit_runmsg) - unset(seminit_compilmsg) - endif() - - if(NOT HAVE_SEM_OPEN AND NOT HAVE_SEM_INIT) - message(FATAL_ERROR "Semaphores are not usable (failed to use both sem_open and sem_init), but they are mandatory to threads (you may need to mount /dev).") - endif() - - set(HAVE_THREAD_CONTEXTS 1) - message(STATUS "Support for thread context factory ok.") -endif() +### Check what context backends are available set(HAVE_UCONTEXT_CONTEXTS 0) if(NOT HAVE_UCONTEXT_H) @@ -858,14 +779,15 @@ option(enable_python "Whether the Python bindings are activated." ${pybind11_FOU if(enable_python) if(pybind11_FOUND) pybind11_add_module(simgrid_python src/bindings/python/simgrid_python.cpp) - set_source_files_properties(src/bindings/python/simgrid_python.cpp PROPERTIES COMPILE_FLAGS -Wno-attributes) - set_source_files_properties(src/bindings/python/simgrid_python.cpp PROPERTIES COMPILE_FLAGS -std=gnu++14) + set_source_files_properties(src/bindings/python/simgrid_python.cpp PROPERTIES COMPILE_FLAGS -std=c++14) target_link_libraries(simgrid_python PUBLIC simgrid) set_target_properties(simgrid_python PROPERTIES LIBRARY_OUTPUT_NAME simgrid) else() message(FATAL_ERROR "Please install pybind11-dev to build the Python bindings (or disable that option).") endif() endif() +mark_as_advanced(PYBIND11_PYTHON_VERSION) +mark_as_advanced(pybind11_DIR) ### Make tests if(enable_memcheck_xml)