diff options
author | Brad King <brad.king@kitware.com> | 2020-07-07 17:53:20 (GMT) |
---|---|---|
committer | Brad King <brad.king@kitware.com> | 2020-07-08 19:49:56 (GMT) |
commit | 4d40253f1cbb261aa469411a3c2a7ffc2ef761a4 (patch) | |
tree | 626d1ce3436dda57285381146b09728d8291f748 /Tests/RunCMake/File_Generate | |
parent | eaa420e99c86cb700f37fd21420ab86adeed798f (diff) | |
download | CMake-4d40253f1cbb261aa469411a3c2a7ffc2ef761a4.zip CMake-4d40253f1cbb261aa469411a3c2a7ffc2ef761a4.tar.gz CMake-4d40253f1cbb261aa469411a3c2a7ffc2ef761a4.tar.bz2 |
Tests: Cover file(GENERATE) using 'foo.tmp' as input for output 'foo'
Fixes: #20873
Diffstat (limited to 'Tests/RunCMake/File_Generate')
-rw-r--r-- | Tests/RunCMake/File_Generate/AdjacentInOut.cmake | 6 | ||||
-rw-r--r-- | Tests/RunCMake/File_Generate/AdjacentInOut.in | 1 | ||||
-rw-r--r-- | Tests/RunCMake/File_Generate/RunCMakeTest.cmake | 8 |
3 files changed, 15 insertions, 0 deletions
diff --git a/Tests/RunCMake/File_Generate/AdjacentInOut.cmake b/Tests/RunCMake/File_Generate/AdjacentInOut.cmake new file mode 100644 index 0000000..828c2ee --- /dev/null +++ b/Tests/RunCMake/File_Generate/AdjacentInOut.cmake @@ -0,0 +1,6 @@ +cmake_policy(SET CMP0070 NEW) +if(EXISTS "${CMAKE_CURRENT_BINARY_DIR}/AdjacentInOut.txt") + message(FATAL_ERROR "CMake should not re-run during the build!") +endif() +configure_file(AdjacentInOut.in ${CMAKE_CURRENT_BINARY_DIR}/AdjacentInOut.txt.tmp) +file(GENERATE OUTPUT AdjacentInOut.txt INPUT ${CMAKE_CURRENT_BINARY_DIR}/AdjacentInOut.txt.tmp) diff --git a/Tests/RunCMake/File_Generate/AdjacentInOut.in b/Tests/RunCMake/File_Generate/AdjacentInOut.in new file mode 100644 index 0000000..bfbbda7 --- /dev/null +++ b/Tests/RunCMake/File_Generate/AdjacentInOut.in @@ -0,0 +1 @@ +Sample Text File diff --git a/Tests/RunCMake/File_Generate/RunCMakeTest.cmake b/Tests/RunCMake/File_Generate/RunCMakeTest.cmake index 94aaca8..5987417 100644 --- a/Tests/RunCMake/File_Generate/RunCMakeTest.cmake +++ b/Tests/RunCMake/File_Generate/RunCMakeTest.cmake @@ -72,6 +72,7 @@ if (UNIX AND EXISTS /bin/sh) if (NOT script_output STREQUAL SUCCESS) message(SEND_ERROR "Generated script did not execute correctly:\n${script_output}\n====\n${script_error}") endif() + unset(RunCMake_TEST_NO_CLEAN) endif() if (RunCMake_GENERATOR MATCHES Makefiles) @@ -104,3 +105,10 @@ if (RunCMake_GENERATOR MATCHES Makefiles) message(SEND_ERROR "File did not re-generate: \"${RunCMake_BINARY_DIR}/ReRunCMake-build/output_file.txt\"") endif() endif() + +set(RunCMake_TEST_BINARY_DIR ${RunCMake_BINARY_DIR}/AdjacentInOut-build) +run_cmake(AdjacentInOut) +set(RunCMake_TEST_NO_CLEAN 1) +run_cmake_command(AdjacentInOut-nowork ${CMAKE_COMMAND} --build .) +unset(RunCMake_TEST_BINARY_DIR) +unset(RunCMake_TEST_NO_CLEAN) |