-cmake_minimum_required(VERSION 2.6)
+foreach (example master_worker_vm simple_vm migrate_vm bound scale multicore two_tasks_vm)
+ add_executable (${example} ${example}.c)
+ target_link_libraries(${example} simgrid)
+ set(examples_src ${examples_src} ${CMAKE_CURRENT_SOURCE_DIR}/${example}.c)
+endforeach()
-set(EXECUTABLE_OUTPUT_PATH "${CMAKE_CURRENT_BINARY_DIR}")
+ADD_TESH_FACTORIES(msg-cloud-master-worker-vm "thread;ucontext;raw;boost" --setenv bindir=${CMAKE_BINARY_DIR}/examples/msg/cloud/ --setenv srcdir=${CMAKE_HOME_DIRECTORY}/examples/msg/cloud/ --cd ${CMAKE_BINARY_DIR}/examples/msg/cloud/ ${CMAKE_HOME_DIRECTORY}/examples/msg/cloud/master_worker_vm.tesh)
+ADD_TESH_FACTORIES(msg-cloud-two-tasks-vm "thread;ucontext;raw;boost" --setenv bindir=${CMAKE_BINARY_DIR}/examples/msg/cloud/ --setenv srcdir=${CMAKE_HOME_DIRECTORY}/examples/msg/cloud/ --cd ${CMAKE_BINARY_DIR}/examples/msg/cloud/ ${CMAKE_HOME_DIRECTORY}/examples/msg/cloud/two_tasks_vm.tesh)
+ADD_TESH_FACTORIES(msg-cloud-simple-vm "thread;ucontext;raw;boost" --setenv bindir=${CMAKE_BINARY_DIR}/examples/msg/cloud/ --setenv srcdir=${CMAKE_HOME_DIRECTORY}/examples/msg/cloud/ --cd ${CMAKE_BINARY_DIR}/examples/msg/cloud/ ${CMAKE_HOME_DIRECTORY}/examples/msg/cloud/simple_vm.tesh)
-add_executable(masterslave_virtual_machines "masterslave_virtual_machines.c")
-
-### Add definitions for compile
-if(WIN32)
- target_link_libraries(masterslave_virtual_machines simgrid )
-else(WIN32)
- target_link_libraries(masterslave_virtual_machines simgrid m )
-endif(WIN32)
+set(examples_src ${examples_src} PARENT_SCOPE)
+set(tesh_files ${tesh_files} ${CMAKE_CURRENT_SOURCE_DIR}/master_worker_vm.tesh
+ ${CMAKE_CURRENT_SOURCE_DIR}/two_tasks_vm.tesh
+ ${CMAKE_CURRENT_SOURCE_DIR}/simple_vm.tesh PARENT_SCOPE)
+set(xml_files ${xml_files} ${CMAKE_CURRENT_SOURCE_DIR}/multicore_plat.xml PARENT_SCOPE)