X-Git-Url: http://info.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/blobdiff_plain/2a4e0832d58c384b44501fea364c650327b830f9..1062a562502ee5cd09a6577400df729eb60a70c5:/examples/deprecated/msg/CMakeLists.txt diff --git a/examples/deprecated/msg/CMakeLists.txt b/examples/deprecated/msg/CMakeLists.txt index b8b6bef89d..ac04e1aa3c 100644 --- a/examples/deprecated/msg/CMakeLists.txt +++ b/examples/deprecated/msg/CMakeLists.txt @@ -13,16 +13,6 @@ foreach(x app-masterworker cloud-masterworker set(tesh_files ${tesh_files} ${CMAKE_CURRENT_SOURCE_DIR}/${x}/${x}.tesh) endforeach() -# CPP examples -foreach(x maestro-set) - add_executable (${x} EXCLUDE_FROM_ALL ${x}/${x}.cpp) - target_link_libraries(${x} simgrid) - set_target_properties(${x} PROPERTIES RUNTIME_OUTPUT_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/${x}) - add_dependencies(tests ${x}) - set(examples_src ${examples_src} ${CMAKE_CURRENT_SOURCE_DIR}/${x}/${x}.cpp) - set(tesh_files ${tesh_files} ${CMAKE_CURRENT_SOURCE_DIR}/${x}/${x}.tesh) -endforeach() - if(SIMGRID_HAVE_NS3) add_executable (network-ns3 EXCLUDE_FROM_ALL network-ns3/network-ns3.c) target_link_libraries(network-ns3 simgrid) @@ -81,18 +71,19 @@ foreach (x trace-categories trace-route-user-variables trace-link-user-variables ${CMAKE_HOME_DIRECTORY}/examples/deprecated/msg/${x}/${x}.tesh) endforeach() -ADD_TESH_FACTORIES(msg-dht-kademlia-parallel "thread;ucontext;raw;boost" --cfg contexts/nthreads:4 ${CONTEXTS_SYNCHRO} +if(CMAKE_SYSTEM_NAME STREQUAL "SunOS" AND CMAKE_SYSTEM_PROCESSOR STREQUAL "i386" AND CMAKE_SIZEOF_VOID_P EQUAL 8) + # Thread-local storage (TLS) is needed for parallel execution, but it doesn't + # play well with Ucontexts on 64bit SunOS (at least on x86_64). + set(parallel-factories "thread;raw;boost") +else() + set(parallel-factories "thread;ucontext;raw;boost") +endif() +ADD_TESH_FACTORIES(msg-dht-kademlia-parallel "${parallel-factories}" --cfg contexts/nthreads:4 ${CONTEXTS_SYNCHRO} --setenv bindir=${CMAKE_BINARY_DIR}/examples/deprecated/msg/dht-kademlia --setenv srcdir=${CMAKE_HOME_DIRECTORY}/examples/deprecated/msg/dht-kademlia --setenv platfdir=${CMAKE_HOME_DIRECTORY}/examples/platforms ${CMAKE_HOME_DIRECTORY}/examples/deprecated/msg/dht-kademlia/dht-kademlia.tesh) -if(NOT WIN32) - ADD_TESH_FACTORIES(msg-maestro-set "thread" --setenv srcdir=${CMAKE_HOME_DIRECTORY}/examples/deprecated/msg --cd ${CMAKE_BINARY_DIR}/examples/deprecated/msg ${CMAKE_HOME_DIRECTORY}/examples/deprecated/msg/maestro-set/maestro-set.tesh) -else() - message("Test maestro-set disabled on windows: this feature is not working") -endif() - ADD_TESH_FACTORIES(app-masterworker-multicore "thread;ucontext;raw;boost" --setenv srcdir=${CMAKE_HOME_DIRECTORY}/examples/deprecated/msg/app-masterworker --setenv bindir=${CMAKE_BINARY_DIR}/examples/deprecated/msg/app-masterworker