From ac59f8601e35bd1799682509654d36b955bd2eaf Mon Sep 17 00:00:00 2001 From: Frederic Suter Date: Mon, 21 Mar 2016 09:21:56 +0100 Subject: [PATCH] factor teshsuites/simix cmake files --- .../simix/{check_defaults => }/CMakeLists.txt | 21 ++++++++++++++----- teshsuite/simix/stack_overflow/CMakeLists.txt | 16 -------------- tools/cmake/DefinePackages.cmake | 3 +-- 3 files changed, 17 insertions(+), 23 deletions(-) rename teshsuite/simix/{check_defaults => }/CMakeLists.txt (55%) delete mode 100644 teshsuite/simix/stack_overflow/CMakeLists.txt diff --git a/teshsuite/simix/check_defaults/CMakeLists.txt b/teshsuite/simix/CMakeLists.txt similarity index 55% rename from teshsuite/simix/check_defaults/CMakeLists.txt rename to teshsuite/simix/CMakeLists.txt index 869cf492e8..a435137ae4 100644 --- a/teshsuite/simix/check_defaults/CMakeLists.txt +++ b/teshsuite/simix/CMakeLists.txt @@ -1,9 +1,18 @@ -add_executable (check_defaults check_defaults.c) -target_link_libraries(check_defaults simgrid) +foreach(x check_defaults stack_overflow) + add_executable (${x} ${x}/${x}.c) + target_link_libraries(${x} simgrid) + set_target_properties(${x} PROPERTIES RUNTIME_OUTPUT_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/${x}) + + set(teshsuite_src ${teshsuite_src} ${CMAKE_CURRENT_SOURCE_DIR}/${x}/${x}.c) +endforeach() foreach (factory raw thread boost ucontext) - set(tesh_files ${tesh_files} ${CMAKE_CURRENT_SOURCE_DIR}/factory_${factory}.tesh) + set(tesh_files ${tesh_files} ${CMAKE_CURRENT_SOURCE_DIR}/check_defaults/factory_${factory}.tesh) + string (TOUPPER have_${factory}_contexts VARNAME) + if (${VARNAME} AND release AND (WIN32 OR CMAKE_SYSTEM_NAME MATCHES "Darwin")) + SET_TESTS_PROPERTIES(stack-overflow-${factory} PROPERTIES WILL_FAIL true) + endif() if (${VARNAME}) ADD_TESH(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() @@ -19,5 +28,7 @@ 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_TESH_FACTORIES(stack-overflow "thread;ucontext;raw" --setenv bindir=${CMAKE_BINARY_DIR}/teshsuite/simix/stack_overflow --setenv srcdir=${CMAKE_HOME_DIRECTORY} --cd ${CMAKE_HOME_DIRECTORY}/teshsuite/simix/stack_overflow stack_overflow.tesh) + +set(teshsuite_src ${teshsuite_src} PARENT_SCOPE) +set(tesh_files ${tesh_files} ${CMAKE_CURRENT_SOURCE_DIR}/stack_overflow/stack_overflow.tesh PARENT_SCOPE) diff --git a/teshsuite/simix/stack_overflow/CMakeLists.txt b/teshsuite/simix/stack_overflow/CMakeLists.txt deleted file mode 100644 index 08be8de9dc..0000000000 --- a/teshsuite/simix/stack_overflow/CMakeLists.txt +++ /dev/null @@ -1,16 +0,0 @@ -add_executable (stack_overflow stack_overflow.c) -target_link_libraries(stack_overflow simgrid) - -ADD_TESH_FACTORIES(stack-overflow "thread;ucontext;raw" --setenv bindir=${CMAKE_BINARY_DIR}/teshsuite/simix/stack_overflow --setenv srcdir=${CMAKE_HOME_DIRECTORY} --cd ${CMAKE_HOME_DIRECTORY}/teshsuite/simix/stack_overflow stack_overflow.tesh) - -if(release AND (WIN32 OR CMAKE_SYSTEM_NAME MATCHES "Darwin")) - foreach (factory raw thread ucontext) - string (TOUPPER have_${factory}_contexts VARNAME) - if (${VARNAME}) - SET_TESTS_PROPERTIES(stack-overflow-${factory} PROPERTIES WILL_FAIL true) - endif() - endforeach() -endif() - -set(tesh_files ${tesh_files} ${CMAKE_CURRENT_SOURCE_DIR}/stack_overflow.tesh PARENT_SCOPE) -set(teshsuite_src ${teshsuite_src} ${CMAKE_CURRENT_SOURCE_DIR}/stack_overflow.c PARENT_SCOPE) diff --git a/tools/cmake/DefinePackages.cmake b/tools/cmake/DefinePackages.cmake index 70891259b7..a55c749d23 100644 --- a/tools/cmake/DefinePackages.cmake +++ b/tools/cmake/DefinePackages.cmake @@ -991,8 +991,7 @@ set(CMAKEFILES_TXT teshsuite/msg/CMakeLists.txt teshsuite/simdag/CMakeLists.txt teshsuite/simdag/platforms/CMakeLists.txt - teshsuite/simix/check_defaults/CMakeLists.txt - teshsuite/simix/stack_overflow/CMakeLists.txt + teshsuite/simix/CMakeLists.txt teshsuite/smpi/CMakeLists.txt teshsuite/surf/CMakeLists.txt teshsuite/surf/maxmin_bench/CMakeLists.txt -- 2.20.1