-cmake_minimum_required(VERSION 2.6)
+configure_file("${CMAKE_HOME_DIRECTORY}/tools/tesh/tesh.py"
+ "${CMAKE_BINARY_DIR}/bin/tesh" @ONLY IMMEDIATE)
-if(WIN32)
- add_custom_target(tesh ALL
- DEPENDS ${CMAKE_HOME_DIRECTORY}/buildtools/Cmake/Scripts/tesh.pl
- COMMENT "Install ${CMAKE_HOME_DIRECTORY}/buildtools/Cmake/Scripts/tesh.pl"
- COMMAND ${CMAKE_COMMAND} -E copy ${CMAKE_HOME_DIRECTORY}/buildtools/Cmake/Scripts/tesh.pl ${CMAKE_BINARY_DIR}/bin/tesh
- )
-else()
- set(EXECUTABLE_OUTPUT_PATH "${CMAKE_BINARY_DIR}/bin")
- add_executable(tesh tesh.c run_context.c signal.c)
+foreach(x setenv set-output-ignore set-output-sort set-return set-timeout background basic bg-basic bg-set-signal
+ catch-all-bg-output catch-return catch-signal catch-timeout catch-timeout-output catch-wrong-output cd color
+ ignore-regexp IO-bigsize IO-broken-pipe IO-orders)
+ set(tesh_files ${tesh_files} ${CMAKE_CURRENT_SOURCE_DIR}/${x}.tesh)
+ if(NOT enable_memcheck AND NOT WIN32)
+ ADD_TESH(tesh-self-${x} --setenv bindir=${CMAKE_BINARY_DIR}/bin ${CMAKE_HOME_DIRECTORY}/tools/tesh/${x}.tesh)
+ endif()
+endforeach()
- ### Add definitions for compile
- target_link_libraries(tesh gras m pthread)
-endif()
-
-set(tesh_files
- ${tesh_files}
- ${CMAKE_CURRENT_SOURCE_DIR}/setenv.tesh
- ${CMAKE_CURRENT_SOURCE_DIR}/set-ignore-output.tesh
- ${CMAKE_CURRENT_SOURCE_DIR}/set-return.tesh
- ${CMAKE_CURRENT_SOURCE_DIR}/set-signal.tesh
- ${CMAKE_CURRENT_SOURCE_DIR}/set-timeout.tesh
- ${CMAKE_CURRENT_SOURCE_DIR}/background.tesh
- ${CMAKE_CURRENT_SOURCE_DIR}/basic2.tesh
- ${CMAKE_CURRENT_SOURCE_DIR}/basic.tesh
- ${CMAKE_CURRENT_SOURCE_DIR}/bg-basic.tesh
- ${CMAKE_CURRENT_SOURCE_DIR}/bg-set-signal.tesh
- ${CMAKE_CURRENT_SOURCE_DIR}/catch-return.tesh
- ${CMAKE_CURRENT_SOURCE_DIR}/catch-signal.tesh
- ${CMAKE_CURRENT_SOURCE_DIR}/catch-timeout.tesh
- ${CMAKE_CURRENT_SOURCE_DIR}/catch-wrong-output.tesh
- ${CMAKE_CURRENT_SOURCE_DIR}/cd.tesh
- ${CMAKE_CURRENT_SOURCE_DIR}/IO-bigsize.tesh
- ${CMAKE_CURRENT_SOURCE_DIR}/IO-broken-pipe.tesh
- ${CMAKE_CURRENT_SOURCE_DIR}/IO-orders.tesh
- PARENT_SCOPE
- )
-set(xml_files
- ${xml_files}
- PARENT_SCOPE
- )
-set(tools_src
- ${tools_src}
- ${CMAKE_CURRENT_SOURCE_DIR}/run_context.c
- ${CMAKE_CURRENT_SOURCE_DIR}/run_context.h
- ${CMAKE_CURRENT_SOURCE_DIR}/signal.c
- ${CMAKE_CURRENT_SOURCE_DIR}/tesh.c
- ${CMAKE_CURRENT_SOURCE_DIR}/tesh.h
- PARENT_SCOPE
- )
-set(bin_files
- ${bin_files}
- ${CMAKE_CURRENT_SOURCE_DIR}/colorize.pl
- PARENT_SCOPE
- )
-set(txt_files
- ${txt_files}
- ${CMAKE_CURRENT_SOURCE_DIR}/README
- ${CMAKE_CURRENT_SOURCE_DIR}/tesh.1
- PARENT_SCOPE
- )
+set(tesh_files ${tesh_files} PARENT_SCOPE)
+set(bin_files ${bin_files} ${CMAKE_CURRENT_SOURCE_DIR}/tesh.py ${CMAKE_CURRENT_SOURCE_DIR}/generate_tesh PARENT_SCOPE)