add_executable (check_defaults check_defaults.c)
target_link_libraries(check_defaults simgrid)
-set(tesh_files ${tesh_files} ${CMAKE_CURRENT_SOURCE_DIR}/factory_raw.tesh
- ${CMAKE_CURRENT_SOURCE_DIR}/factory_thread.tesh
- ${CMAKE_CURRENT_SOURCE_DIR}/factory_ucontext.tesh PARENT_SCOPE)
-set(teshsuite_src ${teshsuite_src} ${CMAKE_CURRENT_SOURCE_DIR}/check_defaults.c PARENT_SCOPE)
+foreach (factory raw thread ucontext)
+ set(tesh_files ${tesh_files} ${CMAKE_CURRENT_SOURCE_DIR}/factory_${factory}.tesh)
+ string (TOUPPER have_${factory}_contexts VARNAME)
+ if (VARNAME)
+ ADD_TESH_FAC(tesh-simix-factory-${factory} --cfg contexts/factory:${factory} --setenv bindir=${CMAKE_BINARY_DIR}/teshsuite/simix/check_defaults --cd ${CMAKE_HOME_DIRECTORY}/teshsuite/simix/check_defaults factory_${factory}.tesh)
+ endif()
+endforeach()
+
+IF(HAVE_RAW_CONTEXTS)
+ ADD_TESH(tesh-simix-factory-default --setenv bindir=${CMAKE_BINARY_DIR}/teshsuite/simix/check_defaults --cd ${CMAKE_HOME_DIRECTORY}/teshsuite/simix/check_defaults factory_raw.tesh)
+ELSEIF(HAVE_UCONTEXT_CONTEXTS)
+ ADD_TESH(tesh-simix-factory-default --setenv bindir=${CMAKE_BINARY_DIR}/teshsuite/simix/check_defaults --cd ${CMAKE_HOME_DIRECTORY}/teshsuite/simix/check_defaults factory_ucontext.tesh)
+ELSE()
+ ADD_TESH(tesh-simix-factory-default --setenv bindir=${CMAKE_BINARY_DIR}/teshsuite/simix/check_defaults --cd ${CMAKE_HOME_DIRECTORY}/teshsuite/simix/check_defaults factory_thread.tesh)
+ENDIF()
+
+set(tesh_files ${tesh_files} PARENT_SCOPE)
+set(teshsuite_src ${teshsuite_src} ${CMAKE_CURRENT_SOURCE_DIR}/check_defaults.c PARENT_SCOPE)
add_executable (stack_overflow stack_overflow.c)
target_link_libraries(stack_overflow simgrid)
-set(tesh_files
- ${tesh_files}
- ${CMAKE_CURRENT_SOURCE_DIR}/stack_overflow.tesh
- PARENT_SCOPE)
-set(xml_files
- ${xml_files}
- ${CMAKE_CURRENT_SOURCE_DIR}/stack_overflow.xml
- ${CMAKE_CURRENT_SOURCE_DIR}/stack_overflow_platform.xml
- PARENT_SCOPE)
-set(teshsuite_src
- ${teshsuite_src}
- ${CMAKE_CURRENT_SOURCE_DIR}/stack_overflow.c
- PARENT_SCOPE)
+ADD_TESH_FACTORIES(stack-overflow "thread;ucontext;raw" --setenv bindir=${CMAKE_BINARY_DIR}/teshsuite/simix/stack_overflow --cd ${CMAKE_HOME_DIRECTORY}/teshsuite/simix/stack_overflow stack_overflow.tesh)
+
+set(tesh_files ${tesh_files} ${CMAKE_CURRENT_SOURCE_DIR}/stack_overflow.tesh PARENT_SCOPE)
+set(xml_files ${xml_files} ${CMAKE_CURRENT_SOURCE_DIR}/stack_overflow.xml
+ ${CMAKE_CURRENT_SOURCE_DIR}/stack_overflow_platform.xml PARENT_SCOPE)
+set(teshsuite_src ${teshsuite_src} ${CMAKE_CURRENT_SOURCE_DIR}/stack_overflow.c PARENT_SCOPE)