| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889 |
- cmake_minimum_required (VERSION 2.6)
- PROJECT(CommandLineTest)
- GET_FILENAME_COMPONENT(CMAKE_BIN_DIR ${CMAKE_COMMAND} PATH)
- FIND_PROGRAM(DUMP_DOC_EXE NAMES DumpDocumentation PATHS ${CMAKE_BIN_DIR})
- MACRO(EXEC_CMAKE_COMMAND CMAKE_ARGS)
- EXEC_PROGRAM("${CMAKE_COMMAND}" ARGS "${CMAKE_ARGS}" RETURN_VALUE RET)
- IF(${RET})
- MESSAGE(SEND_ERROR "CMake command failed with arguments \"${CMAKE_ARGS}\"")
- ENDIF(${RET})
- ENDMACRO(EXEC_CMAKE_COMMAND)
- EXEC_CMAKE_COMMAND("-E chdir \"${CMAKE_CURRENT_SOURCE_DIR}\" \"${CMAKE_COMMAND}\" -E echo \"Hello World\"")
- EXEC_CMAKE_COMMAND("-E time \"${CMAKE_COMMAND} -N -L ${CommandLineTest_SOURCE_DIR}\"")
- EXEC_CMAKE_COMMAND("-E time \"${CMAKE_COMMAND} -N -LA ${CommandLineTest_SOURCE_DIR}\"")
- EXEC_CMAKE_COMMAND("-E time \"${CMAKE_COMMAND} -N -LH ${CommandLineTest_SOURCE_DIR}\"")
- EXEC_CMAKE_COMMAND("-E time \"${CMAKE_COMMAND} -N -LAH ${CommandLineTest_SOURCE_DIR}\"")
- EXEC_CMAKE_COMMAND("--help")
- EXEC_CMAKE_COMMAND("--help-command-list")
- EXEC_CMAKE_COMMAND("--help add_executable")
- EXEC_CMAKE_COMMAND("--help-command add_executable")
- EXEC_CMAKE_COMMAND("--help-full \"${CMAKE_CURRENT_BINARY_DIR}/cmake.txt\"")
- EXEC_CMAKE_COMMAND("--help-man \"${CMAKE_CURRENT_BINARY_DIR}/cmake.man\"")
- EXEC_CMAKE_COMMAND("--help-html \"${CMAKE_CURRENT_BINARY_DIR}/cmake.html\"")
- EXEC_CMAKE_COMMAND("--copyright \"${CMAKE_CURRENT_BINARY_DIR}/Copyright.txt\"")
- EXEC_CMAKE_COMMAND("--version \"${CMAKE_CURRENT_BINARY_DIR}/version.txt\"")
- IF(DUMP_DOC_EXE)
- EXEC_PROGRAM(${DUMP_DOC_EXE} ARGS "--all-for-coverage \"${CMAKE_CURRENT_BINARY_DIR}/all_for_coverage.txt\"" RETURN_VALUE RET)
- IF(${RET})
- MESSAGE(SEND_ERROR "DumpDoc command failed ")
- ENDIF(${RET})
- ELSE(DUMP_DOC_EXE)
- MESSAGE(SEND_ERROR "Cannot find DumpDocumentation executable.")
- ENDIF(DUMP_DOC_EXE)
- ADD_EXECUTABLE(CommandLineTest CommandLineTest.cxx)
- GET_FILENAME_COMPONENT(CMAKE_COMMAND_PATH "${CMAKE_COMMAND}" PATH)
- SET(CTEST_COMMAND "${CMAKE_COMMAND_PATH}/ctest")
- MACRO(EXEC_CTEST_COMMAND CMAKE_ARGS)
- EXEC_PROGRAM("${CTEST_COMMAND}" ARGS "${CMAKE_ARGS}" RETURN_VALUE RET)
- IF(${RET})
- MESSAGE(SEND_ERROR "CTest command failed with arguments \"${CMAKE_ARGS}\"")
- ENDIF(${RET})
- ENDMACRO(EXEC_CTEST_COMMAND)
- MACRO(EXEC_CTEST_COMMAND_WITH_DIR DIR CMAKE_ARGS)
- EXEC_PROGRAM("${CTEST_COMMAND}" "${DIR}" ARGS "${CMAKE_ARGS}" RETURN_VALUE RET)
- IF(${RET})
- MESSAGE(SEND_ERROR "CTest command failed with arguments \"${CMAKE_ARGS}\"")
- ENDIF(${RET})
- ENDMACRO(EXEC_CTEST_COMMAND_WITH_DIR)
- EXEC_CTEST_COMMAND_WITH_DIR("${CMAKE_CURRENT_BINARY_DIR}/../.." "-N")
- EXEC_CTEST_COMMAND_WITH_DIR("${CMAKE_CURRENT_BINARY_DIR}/../.." "-R complex -N")
- EXEC_CTEST_COMMAND_WITH_DIR("${CMAKE_CURRENT_BINARY_DIR}/../.." "-E Simple -N")
- EXEC_CTEST_COMMAND_WITH_DIR("${CMAKE_CURRENT_BINARY_DIR}/../.." "-E Simple -N")
- EXEC_CTEST_COMMAND_WITH_DIR("${CMAKE_CURRENT_BINARY_DIR}/../.." "-N -I -10")
- EXEC_CTEST_COMMAND_WITH_DIR("${CMAKE_CURRENT_BINARY_DIR}/../.." "-N -I 10-")
- EXEC_CTEST_COMMAND_WITH_DIR("${CMAKE_CURRENT_BINARY_DIR}/../.." "-N -I 3,4")
- EXEC_CTEST_COMMAND("--help")
- EXEC_CTEST_COMMAND("--copyright")
- EXEC_CTEST_COMMAND("--help-full \"${CMAKE_CURRENT_BINARY_DIR}/ctest.txt\"")
- EXEC_CTEST_COMMAND("--help-man \"${CMAKE_CURRENT_BINARY_DIR}/ctest.man\"")
- EXEC_CTEST_COMMAND("--help-html \"${CMAKE_CURRENT_BINARY_DIR}/ctest.html\"")
- EXEC_CTEST_COMMAND("--version")
- IF(THIS_SHOULD_BE_SET)
- MESSAGE(STATUS "***************************")
- MESSAGE(STATUS "PreLoad.cmake works fine.")
- MESSAGE(STATUS "***************************")
- ELSE(THIS_SHOULD_BE_SET)
- MESSAGE("***************************")
- MESSAGE(FATAL_ERROR "PreLoad.cmake does not work.")
- ENDIF(THIS_SHOULD_BE_SET)
- IF(DEFINED ENV{TEST_ENVIRONMENT_VARIABLE_NOTSET})
- MESSAGE(SEND_ERROR "Environment variable definition test broken!")
- ENDIF(DEFINED ENV{TEST_ENVIRONMENT_VARIABLE_NOTSET})
- SET(ENV{TEST_ENVIRONMENT_VARIABLE} "Environment variable set")
- IF("$ENV{TEST_ENVIRONMENT_VARIABLE}" STREQUAL "Environment variable set")
- MESSAGE(STATUS "Environment variable set to: $ENV{TEST_ENVIRONMENT_VARIABLE}")
- IF(NOT DEFINED ENV{TEST_ENVIRONMENT_VARIABLE})
- MESSAGE(SEND_ERROR "Environment variable definition test failed!")
- ENDIF(NOT DEFINED ENV{TEST_ENVIRONMENT_VARIABLE})
- ELSE("$ENV{TEST_ENVIRONMENT_VARIABLE}" STREQUAL "Environment variable set")
- MESSAGE(SEND_ERROR "Environment variable setting is broken")
- ENDIF("$ENV{TEST_ENVIRONMENT_VARIABLE}" STREQUAL "Environment variable set")
|