X-Git-Url: http://info.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/blobdiff_plain/e58625669e36632ed81ac391312d5676f5f8c247..627ed510a1cee7238d20df84147ac72c8f312ad5:/CMakeLists.txt diff --git a/CMakeLists.txt b/CMakeLists.txt index d126e14bd6..398bef8e12 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -94,8 +94,8 @@ endif() #-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-# set(SIMGRID_VERSION_MAJOR "3") -set(SIMGRID_VERSION_MINOR "23") -set(SIMGRID_VERSION_PATCH "3") # odd => git branch; even => stable release or released snapshot +set(SIMGRID_VERSION_MINOR "24") +set(SIMGRID_VERSION_PATCH "1") # odd => git branch; even => stable release or released snapshot set(SIMGRID_VERSION_DATE "2019") # Year for copyright information @@ -288,7 +288,13 @@ set(_Boost_STACKTRACE_ADDR2LINE_HEADERS "boost/stacktrace.hpp") if(APPLE) message(FATAL_ERROR "Boost libraries not found. Try to install them with 'sudo fink install boost1.53.nopython' (check the exact name with 'fink list boost') or 'sudo brew install boost'") else() - message(FATAL_ERROR "Boost libraries not found. Install libboost-dev (>= 1.48.0).") + find_package(Boost 1.48) #try without optional libraries + if(NOT Boost_FOUND) + message(FATAL_ERROR "Boost libraries not found. Install libboost-dev (>= 1.48.0).") + else() + include_directories(${Boost_INCLUDE_DIRS}) + message(STATUS "Mandatory components found. SimGrid is compilable.") + endif() endif() endif() @@ -405,6 +411,8 @@ if (enable_model-checking AND enable_ns3) message(FATAL_ERROR "Cannot activate both model-checking and ns-3 bindings: ns-3 pull too much dependencies for the MC to work") endif() +get_property(known_features GLOBAL PROPERTY CMAKE_CXX_KNOWN_FEATURES) + if(enable_smpi) SET(HAVE_SMPI 1) if(NOT WIN32) @@ -537,7 +545,7 @@ set(CMAKE_SMPI_COMMAND "export LD_LIBRARY_PATH=\"${CMAKE_INSTALL_PREFIX}/lib") if(NS3_LIBRARY_PATH) set(CMAKE_SMPI_COMMAND "${CMAKE_SMPI_COMMAND}:${NS3_LIBRARY_PATH}") endif() -set(CMAKE_SMPI_COMMAND "${CMAKE_SMPI_COMMAND}:\${LD_LIBRARY_PATH:+:$LD_LIBRARY_PATH}\"") +set(CMAKE_SMPI_COMMAND "${CMAKE_SMPI_COMMAND}\${LD_LIBRARY_PATH:+:$LD_LIBRARY_PATH}\"") set(SMPIMAIN ${libdir}/simgrid/smpimain) set(SMPIREPLAYMAIN ${libdir}/simgrid/smpireplaymain) @@ -566,7 +574,7 @@ set(CMAKE_SMPI_COMMAND "export LD_LIBRARY_PATH=\"${CMAKE_BINARY_DIR}/lib") if(NS3_LIBRARY_PATH) set(CMAKE_SMPI_COMMAND "${CMAKE_SMPI_COMMAND}:${NS3_LIBRARY_PATH}") endif() -set(CMAKE_SMPI_COMMAND "${CMAKE_SMPI_COMMAND}:\${LD_LIBRARY_PATH:+:$LD_LIBRARY_PATH}\"") +set(CMAKE_SMPI_COMMAND "${CMAKE_SMPI_COMMAND}\${LD_LIBRARY_PATH:+:$LD_LIBRARY_PATH}\"") set(SMPIMAIN ${CMAKE_BINARY_DIR}/lib/simgrid/smpimain) set(SMPIREPLAYMAIN ${CMAKE_BINARY_DIR}/lib/simgrid/smpireplaymain) @@ -767,12 +775,18 @@ if(enable_java) include(${CMAKE_HOME_DIRECTORY}/tools/cmake/Java.cmake) endif() +if (enable_model-checking AND (NOT ("cxx_std_14" IN_LIST known_features))) + message(WARNING "C++14 not found. The model-checker will use a slow hash function. You should upgrade your compiler") + set(SG_HAVE_CPP14 0) +else() + set(SG_HAVE_CPP14 1) + set_property(TARGET simgrid PROPERTY CXX_STANDARD 14) +endif() + # Python binding (with pybind11) ################ # Our usage of pybind11::overload_cast mandates C++14 if((NOT DEFINED enable_python) OR enable_python) - get_property(known_features GLOBAL PROPERTY CMAKE_CXX_KNOWN_FEATURES) - if("cxx_std_14" IN_LIST known_features) if(EXISTS ${CMAKE_HOME_DIRECTORY}/pybind11) # Try to use a local copy of pybind11, if any