else()
message(FATAL_ERROR
"The compiler ${CMAKE_CXX_COMPILER} (v${CMAKE_CXX_COMPILER_VERSION}) has no C++11 support. "
- "Please use a decent C++ compiler.")
+ "Please install a decent C++ compiler (remove CMakeCache.txt once it's installed).")
endif()
### And we need C11 standard, too
#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#
set(SIMGRID_VERSION_MAJOR "3")
-set(SIMGRID_VERSION_MINOR "17")
+set(SIMGRID_VERSION_MINOR "19")
set(SIMGRID_VERSION_PATCH "0")
set(SIMGRID_VERSION_EXTRA "-DEVEL") # Extra words to add to version string (e.g. -rc1)
if (WIN32)
message(STATUS "Disable fast raw contexts on Windows.")
elseif(enable_address_sanitizer)
- message("Disable fast raw contexts with ASan")
+ message(STATUS "Disable fast raw contexts with ASan")
else()
set(HAVE_RAW_CONTEXTS 1)
endif()
if(WIN32)
set(Boost_USE_STATIC_LIBS 1)
endif()
+
set(HAVE_PAPI 0)
if(enable_smpi_papi)
include(FindPAPI)
# Not finding this is perfectly OK
find_package(Boost COMPONENTS unit_test_framework)
if (Boost_UNIT_TEST_FRAMEWORK_FOUND)
- message("-- (enabling the Boost-based unit tests)")
+ message(STATUS "Enabling the Boost-based unit tests.")
else()
- message("-- (disabling the Boost-based unit tests -- please install libboost-test-dev)")
+ message(STATUS "Disabling the Boost-based unit tests -- please install libboost-test-dev.")
endif()
find_package(Boost COMPONENTS context)
set(Boost_FOUND 1) # This component is optional
if(Boost_CONTEXT_FOUND)
- message("Found Boost.Context")
+ message(STATUS "Found Boost.Context")
set(HAVE_BOOST_CONTEXTS 1)
else()
message (" boost : found.")
include(FindLibunwind)
if(HAVE_LIBUNWIND)
- if(NOT APPLE)
- SET(SIMGRID_DEP "${SIMGRID_DEP} -lunwind")
- else()
- # Apple forbids to link directly against its libunwind implementation
- # So let's comply and link against the System framework
- SET(SIMGRID_DEP "${SIMGRID_DEP} -lSystem")
- endif()
- if("${CMAKE_SYSTEM}" MATCHES "Linux|FreeBSD")
- set(SIMGRID_DEP "${SIMGRID_DEP} -lunwind-ptrace")
- # This supposes that the host machine is either an AMD or a X86.
- # This is deeply wrong, and should be fixed by manually loading -lunwind-PLAT (FIXME)
- if(SIMGRID_PROCESSOR_x86_64)
- SET(SIMGRID_DEP "${SIMGRID_DEP} -lunwind-x86_64")
- else()
- SET(SIMGRID_DEP "${SIMGRID_DEP} -lunwind-x86")
- endif()
- endif()
+ SET(SIMGRID_DEP "${SIMGRID_DEP} ${LIBUNWIND_LIBRARIES}")
else()
if(enable_model-checking)
message(FATAL_ERROR "Please install libunwind-dev libdw-dev libelf-dev libevent-dev if you want to compile the SimGrid model checker.")
SET(SIMGRID_HAVE_MC 0)
set(HAVE_MMALLOC 0)
endif()
+mark_as_advanced(PATH_LIBDW_H)
+mark_as_advanced(PATH_LIBDW_LIB)
if (enable_model-checking AND enable_ns3)
message(FATAL_ERROR "Cannot activate both model-checking and NS3 bindings: NS3 pull too much dependencies for the MC to work")
endif()
set(HAVE_THREAD_CONTEXTS 1)
- message("-- Support for thread context factory ok.")
+ message(STATUS "Support for thread context factory ok.")
endif()
set(HAVE_UCONTEXT_CONTEXTS 0)
if(NOT HAVE_UCONTEXT_H)
- message("-- No ucontext factory: <ucontext.h> not found.")
+ message(STATUS "No ucontext factory: <ucontext.h> not found.")
elseif(APPLE)
- message("-- No ucontext factory: Apple don't want us to use them.")
+ message(STATUS "No ucontext factory: Apple don't want us to use them.")
set(HAVE_UCONTEXT_H 0)
elseif(enable_address_sanitizer)
- message("-- No ucontext factory: ASan does not support it (see http://code.google.com/p/address-sanitizer/issues/detail?id=189)")
+ message(STATUS "No ucontext factory: ASan does not support it (see http://code.google.com/p/address-sanitizer/issues/detail?id=189)")
else()
try_compile(compile_makecontext ${CMAKE_BINARY_DIR} ${CMAKE_HOME_DIRECTORY}/tools/cmake/test_prog/prog_makecontext.c
OUTPUT_VARIABLE compile_makecontext_output)
#If can have both context
if(compile_makecontext)
set(HAVE_UCONTEXT_CONTEXTS 1)
- message("-- Support for ucontext factory ok.")
+ message(STATUS "Support for ucontext factory ok.")
else()
- message("-- Error: <ucontext.h> exists, but makecontext is not compilable. Compilation output:\n ${compile_makecontext_output}")
- message("-- No ucontext factory: makecontext() is not compilable.")
+ message(STATUS "Error: <ucontext.h> exists, but makecontext is not compilable. Compilation output:\n ${compile_makecontext_output}")
+ message(STATUS "No ucontext factory: makecontext() is not compilable.")
endif()
# Stack setup (size and address)
set(GIT_VERSION "none, release version")
endif()
+### Setup gcc & clang flags
+if (NOT MSVC)
+ include(${CMAKE_HOME_DIRECTORY}/tools/cmake/GCCFlags.cmake)
+endif()
+
### Generate the required headers and scripts
#############################################
configure_file(${CMAKE_HOME_DIRECTORY}/examples/smpi/replay/actions_gather.txt ${CMAKE_BINARY_DIR}/examples/smpi/replay/actions_gather.txt COPYONLY)
configure_file(${CMAKE_HOME_DIRECTORY}/examples/smpi/replay/actions_allgatherv.txt ${CMAKE_BINARY_DIR}/examples/smpi/replay/actions_allgatherv.txt COPYONLY)
configure_file(${CMAKE_HOME_DIRECTORY}/teshsuite/smpi/hostfile ${CMAKE_BINARY_DIR}/teshsuite/smpi/hostfile COPYONLY)
+ configure_file(${CMAKE_HOME_DIRECTORY}/teshsuite/smpi/hostfile_cluster ${CMAKE_BINARY_DIR}/teshsuite/smpi/hostfile_cluster COPYONLY)
+ configure_file(${CMAKE_HOME_DIRECTORY}/teshsuite/smpi/hostfile_coll ${CMAKE_BINARY_DIR}/teshsuite/smpi/hostfile_coll COPYONLY)
configure_file(${CMAKE_HOME_DIRECTORY}/examples/smpi/replay_multiple/description_file ${CMAKE_BINARY_DIR}/examples/smpi/replay_multiple/description_file COPYONLY)
configure_file(${CMAKE_HOME_DIRECTORY}/examples/smpi/replay_multiple/README ${CMAKE_BINARY_DIR}/examples/smpi/replay_multiple/README COPYONLY)
include(${CMAKE_HOME_DIRECTORY}/tools/cmake/MaintainerMode.cmake)
include(${CMAKE_HOME_DIRECTORY}/tools/cmake/UnitTesting.cmake)
-### Setup gcc & clang flags
-if (NOT MSVC)
- include(${CMAKE_HOME_DIRECTORY}/tools/cmake/GCCFlags.cmake)
-endif()
-
### Make Libs
if(NOT WIN32)
include(${CMAKE_HOME_DIRECTORY}/tools/cmake/MakeLib.cmake)