diff options
-rw-r--r-- | tests/CMakeLists.txt | 17 |
1 files changed, 11 insertions, 6 deletions
diff --git a/tests/CMakeLists.txt b/tests/CMakeLists.txt index 343f838..e35d88d 100644 --- a/tests/CMakeLists.txt +++ b/tests/CMakeLists.txt @@ -9,20 +9,25 @@ set(nix_gnu_cflags -Wno-format-truncation -Wno-error -Wno-unused-parameter -Wno- set(nix_clang_cflags -Wno-format-truncation -Wno-unused-parameter -Wno-unused-result -Wno-incompatible-pointer-types-discards-qualifiers) set(win_msvc_cflags /Wall) -configure_file(${CMAKE_CURRENT_SOURCE_DIR}/data/generic.ini ${CMAKE_CURRENT_BINARY_DIR} COPYONLY) -configure_file(${CMAKE_CURRENT_SOURCE_DIR}/data/generic_based_on.ini ${CMAKE_CURRENT_BINARY_DIR} COPYONLY) -configure_file(${CMAKE_CURRENT_SOURCE_DIR}/data/generic_based_on.yml ${CMAKE_CURRENT_BINARY_DIR} COPYONLY) -configure_file(${CMAKE_CURRENT_SOURCE_DIR}/data/result.xml ${CMAKE_CURRENT_BINARY_DIR} COPYONLY) -configure_file(${CMAKE_CURRENT_SOURCE_DIR}/data/result_error.xml ${CMAKE_CURRENT_BINARY_DIR} COPYONLY) file(GLOB source_files "test_*.c") +file(GLOB rt_files "rt_*.sh") +set(ext_pattern "(^.*/|\\.[^.]*$)") + +file(COPY ${CMAKE_CURRENT_SOURCE_DIR}/data + DESTINATION ${CMAKE_CURRENT_BINARY_DIR}) if (BASH_PROGRAM AND BUILD_TESTING_RT) + foreach(rt_file ${rt_files}) + file(REAL_PATH ${rt_file} rt_name) + string(REGEX REPLACE ${ext_pattern} "" rt_name ${rt_file}) + add_test (${rt_name} ${BASH_PROGRAM} ${rt_file}) + endforeach() add_test (rt_generic_based_on ${BASH_PROGRAM} ${CMAKE_CURRENT_SOURCE_DIR}/rt_generic_based_on.sh) add_test (rt_generic ${BASH_PROGRAM} ${CMAKE_CURRENT_SOURCE_DIR}/rt_generic.sh) endif() foreach(source_file ${source_files}) - string(REGEX REPLACE "(^.*/|\\.[^.]*$)" "" test_executable ${source_file}) + string(REGEX REPLACE ${ext_pattern} "" test_executable ${source_file}) add_executable(${test_executable} ${source_file}) if (CMAKE_C_COMPILER_ID STREQUAL "GNU") target_compile_options(${test_executable} PRIVATE ${nix_cflags} ${nix_gnu_cflags}) |