Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
Use kernelImmediate for simcall set_category.
[simgrid.git] / examples / simdag / CMakeLists.txt
index 44f30e6..26a8a1b 100644 (file)
@@ -1,34 +1,51 @@
-cmake_minimum_required(VERSION 2.6)
+foreach(x availability daxload fail typed_tasks properties throttling scheduling)
+  add_executable       (sd_${x}     ${x}/sd_${x}.c)
+  target_link_libraries(sd_${x}     simgrid)
+  set_target_properties(sd_${x}  PROPERTIES RUNTIME_OUTPUT_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/${x})
+  set(examples_src ${examples_src} ${CMAKE_CURRENT_SOURCE_DIR}/${x}/sd_${x}.c)
+  set(tesh_files   ${tesh_files}   ${CMAKE_CURRENT_SOURCE_DIR}/${x}/sd_${x}.tesh)
+endforeach()
 
-set(EXECUTABLE_OUTPUT_PATH "${PROJECT_DIRECTORY}/examples/simdag/")
+foreach(x test)
+  add_executable       (sd_${x}     ${x}/sd_${x}.cpp)
+  target_link_libraries(sd_${x}     simgrid)
+  set_target_properties(sd_${x}  PROPERTIES RUNTIME_OUTPUT_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/${x})
+  set(examples_src ${examples_src} ${CMAKE_CURRENT_SOURCE_DIR}/${x}/sd_${x}.cpp)
+  set(tesh_files   ${tesh_files}   ${CMAKE_CURRENT_SOURCE_DIR}/${x}/sd_${x}.tesh)
+endforeach()
 
-add_executable(ex_sd_test sd_test.c)
-add_executable(ex_sd_test2 sd_test2.c)
-add_executable(ex_sd_seq_access sd_seq_access.c)
-add_executable(ex_sd_test_console sd_test_console.c)
+foreach(x dag-dotload ptg-dotload schedule-dotload)
+  if(HAVE_GRAPHVIZ)
+    add_executable       (sd_${x}     ${x}/sd_${x}.c)
+    target_link_libraries(sd_${x}     simgrid)
+    set_target_properties(sd_${x}  PROPERTIES RUNTIME_OUTPUT_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/${x})
+  endif()
+  set(examples_src ${examples_src} ${CMAKE_CURRENT_SOURCE_DIR}/${x}/sd_${x}.c)
+  set(tesh_files   ${tesh_files}   ${CMAKE_CURRENT_SOURCE_DIR}/${x}/sd_${x}.tesh)
+endforeach()
 
-### Add definitions for compile
-target_link_libraries(ex_sd_test simgrid pthread m )
-target_link_libraries(ex_sd_test2 simgrid pthread m )
-target_link_libraries(ex_sd_seq_access simgrid pthread m )
-target_link_libraries(ex_sd_test_console simgrid pthread m )
+add_executable       (goal_test goal/goal_test.c)
+target_link_libraries(goal_test simgrid)
+set_target_properties(goal_test PROPERTIES RUNTIME_OUTPUT_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/goal)
 
-add_custom_command(TARGET ex_sd_test
-       POST_BUILD
-       COMMAND ${CMAKE_COMMAND} -E copy ${PROJECT_DIRECTORY}/examples/simdag/ex_sd_test ${PROJECT_DIRECTORY}/examples/simdag/sd_test
-       WORKING_DIRECTORY "${PROJECT_DIRECTORY}/examples/simdag/"
-)
-add_custom_command(TARGET ex_sd_test2
-       POST_BUILD
-       COMMAND ${CMAKE_COMMAND} -E copy ${PROJECT_DIRECTORY}/examples/simdag/ex_sd_test2 ${PROJECT_DIRECTORY}/examples/simdag/sd_test2
-       WORKING_DIRECTORY "${PROJECT_DIRECTORY}/examples/simdag/")
+set(tesh_files   ${tesh_files}                                                                             PARENT_SCOPE)
+set(examples_src ${examples_src}  ${CMAKE_CURRENT_SOURCE_DIR}/goal/goal_test.c                             PARENT_SCOPE)
+set(xml_files    ${xml_files}     ${CMAKE_CURRENT_SOURCE_DIR}/scheduling/Montage_25.xml
+                                  ${CMAKE_CURRENT_SOURCE_DIR}/daxload/simple_dax_with_cycle.xml
+                                  ${CMAKE_CURRENT_SOURCE_DIR}/daxload/smalldax.xml                         PARENT_SCOPE)
+set(txt_files    ${txt_files}     ${CMAKE_CURRENT_SOURCE_DIR}/dag-dotload/dag_with_cycle.dot
+                                  ${CMAKE_CURRENT_SOURCE_DIR}/dag-dotload/dag.dot
+                                  ${CMAKE_CURRENT_SOURCE_DIR}/ptg-dotload/ptg.dot
+                                  ${CMAKE_CURRENT_SOURCE_DIR}/schedule-dotload/dag_with_bad_schedule.dot
+                                  ${CMAKE_CURRENT_SOURCE_DIR}/schedule-dotload/dag_with_good_schedule.dot
+                                  ${CMAKE_CURRENT_SOURCE_DIR}/scheduling/expected_output.jed               PARENT_SCOPE)
 
-add_custom_command(TARGET ex_sd_seq_access
-       POST_BUILD
-       COMMAND ${CMAKE_COMMAND} -E copy ${PROJECT_DIRECTORY}/examples/simdag/ex_sd_seq_access ${PROJECT_DIRECTORY}/examples/simdag/sd_seq_access
-       WORKING_DIRECTORY "${PROJECT_DIRECTORY}/examples/simdag/")
+foreach(x availability daxload fail typed_tasks properties throttling scheduling test)
+  ADD_TESH(simdag-${x} --setenv srcdir=${CMAKE_HOME_DIRECTORY}/examples/simdag --cd ${CMAKE_BINARY_DIR}/examples/simdag ${CMAKE_HOME_DIRECTORY}/examples/simdag/${x}/sd_${x}.tesh)
+endforeach()
 
-get_directory_property(extra_clean_files ADDITIONAL_MAKE_CLEAN_FILES)
-set_directory_properties(
- PROPERTIES
- ADDITIONAL_MAKE_CLEAN_FILES "${extra_clean_files};${PROJECT_DIRECTORY}/examples/simdag/sd_test;${PROJECT_DIRECTORY}/examples/simdag/sd_test2;${PROJECT_DIRECTORY}/examples/simdag/sd_seq_access")
+if(HAVE_GRAPHVIZ)
+  foreach(x dag-dotload ptg-dotload schedule-dotload)
+    ADD_TESH(simdag-${x} --setenv srcdir=${CMAKE_HOME_DIRECTORY}/examples/simdag --cd ${CMAKE_BINARY_DIR}/examples/simdag ${CMAKE_HOME_DIRECTORY}/examples/simdag/${x}/sd_${x}.tesh)
+  endforeach()
+endif()